Index: TECH/Error/impl/ErrorHandler.cls.xml =================================================================== diff -u -r1900 -r1931 --- TECH/Error/impl/ErrorHandler.cls.xml (.../ErrorHandler.cls.xml) (revision 1900) +++ TECH/Error/impl/ErrorHandler.cls.xml (.../ErrorHandler.cls.xml) (revision 1931) @@ -52,7 +52,12 @@ Set Error.StackTrace=..StackTrace(3) if ( Error.ErrorCode["TECH.ExceptionHandler") && ($data(%Exception)) && ($isObject(%Exception) ) { - Set Error.StackTrace=..StackTrace(4) + + If %Exception.%Extends("TECH.Exceptions.Exception") { + Set Error.StackTrace = %Exception.GeefStack() + }Else{ + Set Error.StackTrace=..StackTrace(4) + } set Error.ErrorCode = $piece(Error.StackTrace," ",6) Set Error.ErrorCode2="`"_%Exception.GeefExceptionCode()_"`"_%Exception.GeefOmschrijving()_"`" } @@ -137,7 +142,7 @@ do Body.WriteLine("Stack: "_Error.StackTrace) do Body.WriteLine() - if $data(%Exception) && $IsObject(%Exception) { + if $data(%Exception) && $IsObject(%Exception) && '%Exception.%Extends("TECH.Exceptions.Exception") { do Body.WriteLine("ErrorObjectInfo :") do Body.WriteLine(%Exception.ToString()) do Body.WriteLine() @@ -212,7 +217,9 @@ From:%Integer=1 "_$STACK($STACK-i,"MCODE") + For i=From:1:$ESTACK { + Set Txt=Txt_$$$CRLF_i_" "_$STACK($STACK-i)_" : "_$STACK($STACK-i,"PLACE")_" -> "_$STACK($STACK-i,"MCODE") + } Quit Txt ]]>