Browse Source

* fixed addref/decref for records, the data/type was read in the
wrong order

peter 25 years ago
parent
commit
7c516d9404
1 changed files with 11 additions and 7 deletions
  1. 11 7
      rtl/i386/rttip.inc

+ 11 - 7
rtl/i386/rttip.inc

@@ -241,13 +241,13 @@ asm
 .LMyRecordAddRefLoop:
         decl    %edx
         jl      .LExitAddRef
+// Push type
+        pushl    (%ebx)
+        addl     $4,%ebx
 // Calculate data
         movl    Data,%eax
         addl    (%ebx),%eax
         addl     $4,%ebx
-// Push type
-        pushl    (%ebx)
-        addl     $4,%ebx
 // push data
         pushl    %eax
         call    ADDREF
@@ -327,13 +327,13 @@ asm
 .LMyRecordDecRefLoop:
         decl    %edx
         jl      .LExitDecRef
+// Push type
+        pushl    (%ebx)
+        addl     $4,%ebx
 // Calculate data
         movl    Data,%eax
         addl    (%ebx),%eax
         addl     $4,%ebx
-// Push type
-        pushl    (%ebx)
-        addl     $4,%ebx
 // push data
         pushl    %eax
         call    DECREF
@@ -375,7 +375,11 @@ end;
 
 {
   $Log$
-  Revision 1.21  2000-02-18 15:23:01  florian
+  Revision 1.22  2000-04-01 11:45:34  peter
+    * fixed addref/decref for records, the data/type was read in the
+      wrong order
+
+  Revision 1.21  2000/02/18 15:23:01  florian
     * fixed constants in rtti
     * longjmp does now a finit