소스 검색

Fixed check for odd stack descriptors

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7466 8c9fc860-2736-0410-a75d-ab315db34111
negelef 7 년 전
부모
커밋
6e07dc5b16
1개의 변경된 파일3개의 추가작업 그리고 3개의 파일을 삭제
  1. 3 3
      source/Activities.Mod

+ 3 - 3
source/Activities.Mod

@@ -75,9 +75,9 @@ TYPE Activity* = OBJECT {DISPOSABLE} (Queues.Item)
 		address := framePointer;
 		currentActivity := SYSTEM.GetActivity ()(Activity); SYSTEM.SetActivity (SELF);
 		WHILE address # NIL DO
-			IF ODD (address) THEN
-				DEC (address);
-				stackFrame := address;
+			stackFrame := address;
+			IF ODD (stackFrame.descriptor) THEN
+				DEC (stackFrame.descriptor);
 				stackFrame.Reset;
 			ELSE
 				stackFrame := address - SIZE OF ADDRESS;