Browse Source

* give runerror 231 if exceptobjectstack=nil

git-svn-id: trunk@401 -
peter 20 years ago
parent
commit
58cdeb8184
1 changed files with 17 additions and 14 deletions
  1. 17 14
      rtl/inc/except.inc

+ 17 - 14
rtl/inc/except.inc

@@ -42,33 +42,36 @@ ThreadVar
   ExceptAddrStack   : PExceptAddr;
   ExceptAddrStack   : PExceptAddr;
   ExceptObjectStack : PExceptObject;
   ExceptObjectStack : PExceptObject;
 
 
-{$IFNDEF VIRTUALPASCAL}
 Function RaiseList : PExceptObject;
 Function RaiseList : PExceptObject;
-
 begin
 begin
   RaiseList:=ExceptObjectStack;
   RaiseList:=ExceptObjectStack;
 end;
 end;
-{$ENDIF}
+
 
 
 function AcquireExceptionObject: Pointer;
 function AcquireExceptionObject: Pointer;
 begin
 begin
-  If ExceptObjectStack=nil then begin
-    AcquireExceptionObject := nil
-  end else begin
-    Inc(ExceptObjectStack^.refcount);
-    AcquireExceptionObject := ExceptObjectStack^.FObject;
-  end;
+  If ExceptObjectStack<>nil then
+    begin
+      Inc(ExceptObjectStack^.refcount);
+      AcquireExceptionObject := ExceptObjectStack^.FObject;
+    end
+  else
+    RunError(231);
 end;
 end;
 
 
+
 procedure ReleaseExceptionObject;
 procedure ReleaseExceptionObject;
 begin
 begin
-  If ExceptObjectStack <> nil then begin
-    if ExceptObjectStack^.refcount > 0 then begin
-    Dec(ExceptObjectStack^.refcount);
-  end;
-end;
+  If ExceptObjectStack <> nil then
+    begin
+      if ExceptObjectStack^.refcount > 0 then
+        Dec(ExceptObjectStack^.refcount);
+    end
+  else
+    RunError(231);
 end;
 end;
 
 
+
 Function fpc_PushExceptAddr (Ft: Longint;_buf,_newaddr : pointer): PJmp_buf ;
 Function fpc_PushExceptAddr (Ft: Longint;_buf,_newaddr : pointer): PJmp_buf ;
   [Public, Alias : 'FPC_PUSHEXCEPTADDR'];compilerproc;
   [Public, Alias : 'FPC_PUSHEXCEPTADDR'];compilerproc;