Hi Erik ---
You are correct in the general sense...my code reflected the given that there was a handler in place.....although if not (or may not be) the EMPTY control block should be removed.
>>Is the original error handler set using ON ERROR? If so, you can use Josh's suggestion in the following manner:
>>
>>PROCEDURE MyFunction
>>LOCAL cErrorHandler
>>cErrorHandler=ON("ERROR")
>>ON ERROR DO newhandler
>>.
>>.
>>IF !EMPTY(cErrorHandler)
>> ON ERROR &cErrorHandler
>>ENDIF
>>RETURN
>>
>>
>
>Careful there. this routine will leave the temporary error handler in place if there was no previous handler.
>
>You don't need to check for EMPTY, because issuing ON ERROR with no arguments clears the error handler, just like it was before, so will be safe issuing
>
>ON ERROR &cErrorHandler
>
>whether or not there is anything in the variable.
------------------------------------------------
John Koziol, ex-MVP, ex-MS, ex-FoxTeam. Just call me "X"
"When the going gets weird, the weird turn pro" - Hunter Thompson (Gonzo) RIP 2/19/05