Преглед изворни кода

Added missing dispose of previous stack

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@8296 8c9fc860-2736-0410-a75d-ab315db34111
negelef пре 7 година
родитељ
комит
5f3ccdfec5
1 измењених фајлова са 1 додато и 1 уклоњено
  1. 1 1
      source/Activities.Mod

+ 1 - 1
source/Activities.Mod

@@ -505,7 +505,7 @@ BEGIN {UNCOOPERATIVE, UNCHECKED}
 	SYSTEM.MOVE(ADDRESS OF previousFrame.caller + SIZE OF ADDRESS, ADDRESS OF newFrame.caller + SIZE OF ADDRESS, parSize); (* copy parameters *)
 	SYSTEM.MOVE(ADDRESS OF previousFrame.caller + SIZE OF ADDRESS, ADDRESS OF newFrame.caller + SIZE OF ADDRESS, parSize); (* copy parameters *)
 		
 		
 	sp := ADDRESSOF(newFrame.descriptor) - varSize; 
 	sp := ADDRESSOF(newFrame.descriptor) - varSize; 
-	currentActivity.stack := newStack;
+	DISPOSE (currentActivity.stack); currentActivity.stack := newStack;
 	currentActivity.stackLimit := ADDRESS OF newStack[SafeStackSize + 3 * SIZE OF ADDRESS];
 	currentActivity.stackLimit := ADDRESS OF newStack[SafeStackSize + 3 * SIZE OF ADDRESS];
 
 
 	RETURN sp; 
 	RETURN sp;