various bug fixes..
[IRC.git] / Robust / src / Runtime / runtime.c
index 70a5215861e15523c6465db9121580295318e736..ac4d9807e304c93794b98a67bbfb858dfa9393f2 100644 (file)
@@ -411,6 +411,20 @@ void injectinstructionfailure() {
     }
   }
 #else
+#ifdef THREADS
+  if (injectinstructionfailures) {
+    if (numfailures==0)
+      return;
+    instructioncount=failurecount;    
+    instaccum+=failurecount;
+    if ((((double)random())/RAND_MAX)<instfailurechance) {
+      if (numfailures>0)
+       numfailures--;
+      printf("FAILURE!!!\n");
+      threadexit();
+    }
+  }
+#endif
 #endif
 }