From 2722a3c39f74d5443a970020d7917c0f0cc285a2 Mon Sep 17 00:00:00 2001
From: bdemsky <bdemsky>
Date: Mon, 25 Oct 2010 23:26:36 +0000
Subject: [PATCH] fix bug w/ recycling + RCR

---
 Robust/src/IR/Flat/RuntimeConflictResolver.java | 6 +-----
 Robust/src/Runtime/oooJava/rcr_runtime.c        | 3 +++
 Robust/src/Tests/rcr/makefile                   | 2 +-
 3 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/Robust/src/IR/Flat/RuntimeConflictResolver.java b/Robust/src/IR/Flat/RuntimeConflictResolver.java
index d4ee9dcf..5ddb55d0 100644
--- a/Robust/src/IR/Flat/RuntimeConflictResolver.java
+++ b/Robust/src/IR/Flat/RuntimeConflictResolver.java
@@ -413,7 +413,7 @@ public class RuntimeConflictResolver {
       }
     }
 
-    cFile.println("    default:\n    printf(\"Invalid SESE ID was passed in.\\n\");\n    break;");
+    cFile.println("    default:\n    printf(\"Invalid SESE ID was passed in: %d.\\n\",record->classID);\n    break;");
     
     cFile.println("  }");
     cFile.println("}");
@@ -641,10 +641,6 @@ public class RuntimeConflictResolver {
     cFile.println(methodName + " {");
     headerFile.println(methodName + ";");
     
-    if(cSideDebug) {
-      cFile.println("printf(\"The traverser ran for " + methodName + "\\n\");");
-    }
-    
     if(cases.size() == 0) {
       cFile.println(" return;");
     } else {
diff --git a/Robust/src/Runtime/oooJava/rcr_runtime.c b/Robust/src/Runtime/oooJava/rcr_runtime.c
index cdcd1b14..52b42a56 100644
--- a/Robust/src/Runtime/oooJava/rcr_runtime.c
+++ b/Robust/src/Runtime/oooJava/rcr_runtime.c
@@ -12,6 +12,9 @@ void * workerTR(void *x) {
       tmp=(SESEcommon *) dequeueTR(queue);
       if (tmp!=NULL) {
 	tasktraverse(tmp);
+#ifndef OOO_DISABLE_TASKMEMPOOL
+	RELEASE_REFERENCE_TO(tmp);
+#endif
       } else {
 	sched_yield();
       }
diff --git a/Robust/src/Tests/rcr/makefile b/Robust/src/Tests/rcr/makefile
index 118488c1..7e478f53 100644
--- a/Robust/src/Tests/rcr/makefile
+++ b/Robust/src/Tests/rcr/makefile
@@ -6,7 +6,7 @@ SOURCE_FILES=test.java
 BUILDSCRIPT=../../buildscript
 
 USEOOO= -rcr -ooojava 8 2 -ooodebug
-BSFLAGS= -64bit -mainclass test -optimize -debug
+BSFLAGS= -64bit -mainclass test -nooptimize -debug
 DISJOINT= -disjoint -disjoint-k 1 -enable-assertions #-disjoint-desire-determinism
 
 
-- 
2.34.1