changeset 914:c6effc4245e4

worked?
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 28 Jan 2021 10:16:52 +0900
parents 49f519a0d079
children 675eb6b5b69d
files src/parallel_execution/ModelChecking/MCWorker.cbc
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/parallel_execution/ModelChecking/MCWorker.cbc	Thu Jan 28 10:06:35 2021 +0900
+++ b/src/parallel_execution/ModelChecking/MCWorker.cbc	Thu Jan 28 10:16:52 2021 +0900
@@ -90,7 +90,7 @@
     context->next = next; // remember next Code Gear
     struct MCWorker* mcworker =  (struct MCWorker*) context->worker->worker;
     StateDB out = NULL;
-    struct Context* list = NULL;
+    struct Element* list = NULL;
     struct MCTaskManagerImpl* mcti = (struct MCTaskManagerImpl *)mcworker->taskManager->taskManager;
     StateNode st;
     st.memory = mcti->mem;
@@ -101,7 +101,7 @@
     if (lookup_StateDB(&st, &mcti->state_db, &out)) {
     // found in the state database
       // printf("found %d\n",count);
-      while(!(list = (struct Context*)takeNextIterator(mcworker->task_iter))) {
+      while(!(list = takeNextIterator(mcworker->task_iter))) {
           // no more branch, go back to the previous one
           TaskIterator* prev_iter = mcworker->task_iter->prev;
           if (!prev_iter) {
@@ -118,6 +118,7 @@
       //    here we assume task list is fixed, we don't have to
       //    recover task list itself
       restore_memory(mcworker->task_iter->state->memory);
+      context = (Context *)list->data;
       // printf("restore list %x next %x\n",(int)list,(int)(list->next));
     } else {
       // one step further