Ver Fonte

Major GC bug fix!

Mark Sibly há 7 anos atrás
pai
commit
008b70c252
1 ficheiros alterados com 2 adições e 2 exclusões
  1. 2 2
      modules/monkey/native/bbgc.h

+ 2 - 2
modules/monkey/native/bbgc.h

@@ -180,10 +180,10 @@ namespace bbGC{
 		BBGC_VALIDATE( p );
 		
 		bbGCTmp *tmp=freeTmps;
-		if( !tmp ) tmp=new bbGCTmp;
-		tmp->node=p;
+		if( tmp ) freeTmps=tmp->succ; else tmp=new bbGCTmp;
 		tmp->succ=currentFiber->tmps;
 		currentFiber->tmps=tmp;
+		tmp->node=p;
 	}
 	
 	inline void popTmps( int n ){