I'm trying to build a global error checking routine such that, if a custom lisp command is escaped mid-way through, the user's settings are returned to their previous state (i.e. before the command was issued).
I found just such a routine athave attempted to adapt it for my purposes but something's not right. For instance osnaps are not restored to their original setting.
Below, I've included the handful of statements that top and tail my own custom lisp routine, together with the error checking routine (slightly modified from the original). Any thoughts:
-- (defun c:gea () (initerr) ;error checking (command "_.undo" "_g")...
...(command "_.undo" "_end") (reset) (princ) )