From: bdemsky <bdemsky>
Date: Thu, 18 Nov 2010 06:30:28 +0000 (+0000)
Subject: change
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=a0e168f723a8d30200d5f4d479939e825b6388fe;p=IRC.git

change
---

diff --git a/Robust/src/Runtime/oooJava/hashStructure.c b/Robust/src/Runtime/oooJava/hashStructure.c
index a51e5f2e..36876afe 100644
--- a/Robust/src/Runtime/oooJava/hashStructure.c
+++ b/Robust/src/Runtime/oooJava/hashStructure.c
@@ -257,6 +257,16 @@ inline int rcr_BREADBINCASE(HashStructure *T, int key, SESEcommon *task, struct
 	return status;
       }
     }
+    rcr_TAILWRITECASE(T, val, bintail, key, task, rcrrec, index);
+    if (mode) {
+      struct BinItem_rcr * bt=be->tail;
+      while(bt->status!=READY) {
+	BARRIER();
+      }
+      return READY;
+    } else {
+      return NOTREADY;
+    }
   } else {
     TraverserData * td = &((ReadBinItem_rcr *)bintail)->array[((ReadBinItem_rcr *)bintail)->index - 1];
     if (unlikely(td->task==task)) {
@@ -275,9 +285,7 @@ inline int rcr_BREADBINCASE(HashStructure *T, int key, SESEcommon *task, struct
       }
       return status;
     }
-  }
 
-  if (ISREADBIN(bintail->type)) {
     if ((((INTPTR)task)&PARENTBIN)&&(bintail->status==READY)) {
       be->head=val;
       return READY;
@@ -293,17 +301,6 @@ inline int rcr_BREADBINCASE(HashStructure *T, int key, SESEcommon *task, struct
     } else {
       return stat;
     }
-  } else {
-    rcr_TAILWRITECASE(T, val, bintail, key, task, rcrrec, index);
-    if (mode) {
-      struct BinItem_rcr * bt=be->tail;
-      while(bt->status!=READY) {
-	BARRIER();
-      }
-      return READY;
-    } else {
-      return NOTREADY;
-    }
   }
 }