فهرست منبع

DataProto: oops... don't call object's method while it's being freed

ambrop7 15 سال پیش
والد
کامیت
0d0e939835
1فایلهای تغییر یافته به همراه4 افزوده شده و 2 حذف شده
  1. 4 2
      client/DataProto.c

+ 4 - 2
client/DataProto.c

@@ -376,8 +376,10 @@ void DataProtoDest_Free (DataProtoDest *o)
     DebugObject_Free(&o->d_obj);
     DebugObject_Free(&o->d_obj);
     
     
     // allow freeing queue flows
     // allow freeing queue flows
-    // need to set freeing=1 so free_relay_flow knows not to release
-    DataProtoDest_PrepareFree(o);
+    PacketPassFairQueue_PrepareFree(&o->queue);
+    
+    // set freeing so free_relay_flow will not attempt releasing
+    o->freeing = 1;
     
     
     // free relay flows
     // free relay flows
     LinkedList2Node *node;
     LinkedList2Node *node;