Fix delete_hw_event_data() to free the scheduled events
authorStephane Carrez <stcarrez@nerim.fr>
Mon, 27 Nov 2000 19:53:35 +0000 (19:53 +0000)
committerStephane Carrez <stcarrez@nerim.fr>
Mon, 27 Nov 2000 19:53:35 +0000 (19:53 +0000)
sim/common/ChangeLog
sim/common/hw-events.c

index ec478ab924ef84efaa519909506b3373da423650..362d951599eed779443d04dbc8319f14d9cd2e2e 100644 (file)
@@ -1,3 +1,7 @@
+2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * hw-events.c (delete_hw_event_data): Remove the scheduled events.
+
 2000-11-26  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
 
        * dv-core.c (dv_core_attach_address_callback): Don't abort if
index f60dfa32e6a1ac203451b1218d937264fdf066b0..243a7aae712860273b952d30785739881e4d0a43 100644 (file)
@@ -51,8 +51,9 @@ create_hw_event_data (struct hw *me)
 void
 delete_hw_event_data (struct hw *me)
 {
-  if (me->events_of_hw != NULL)
-    hw_abort (me, "stray events");
+  /* Remove the scheduled event.  */
+  while (me->events_of_hw)
+    hw_event_queue_deschedule (me, &me->events_of_hw->event);
 }