Add code to poison objects being destroyed
authorDavid Schleef <ds@schleef.org>
Tue, 19 Aug 2003 04:10:29 +0000 (04:10 +0000)
committerDavid Schleef <ds@schleef.org>
Tue, 19 Aug 2003 04:10:29 +0000 (04:10 +0000)
Original commit message from CVS:
Add code to poison objects being destroyed

gst/gstcaps.c
gst/gstprobe.c
gst/gstprops.c

index bce958c..a6d7038 100644 (file)
@@ -349,6 +349,10 @@ gst_caps_destroy (GstCaps *caps)
   gst_props_unref (caps->properties);
   g_free (caps->name);
 
+#ifdef USE_POISONING
+  memset(caps, 0xff, sizeof(*caps));
+#endif
+
 #ifndef GST_DISABLE_TRACE
   gst_alloc_trace_free (_gst_caps_trace, caps);
 #endif
index 217a1fa..f00cc36 100644 (file)
@@ -63,6 +63,10 @@ gst_probe_destroy (GstProbe *probe)
 {
   g_return_if_fail (probe);
 
+#ifdef USE_POISONING
+  memset(probe, 0xff, sizeof(*probe));
+#endif
+
   g_free (probe);
 }
 
@@ -119,6 +123,10 @@ gst_probe_dispatcher_destroy (GstProbeDispatcher *disp)
 {
   g_return_if_fail (disp);
   
+#ifdef USE_POISONING
+  memset(disp, 0xff, sizeof(*disp));
+#endif
+
   /* FIXME, free pending probes */
   g_free (disp);
 }
index 879845b..e817196 100644 (file)
@@ -837,6 +837,9 @@ gst_props_entry_clean (GstPropsEntry *entry)
 static inline void
 gst_props_entry_free (GstPropsEntry *entry)
 {
+#ifdef USE_POISONING
+  memset (entry, 0xff, sizeof(*entry));
+#endif
   gst_mem_chunk_free (_gst_props_entries_chunk, entry);
 #ifndef GST_DISABLE_TRACE
   gst_alloc_trace_free (_entries_trace, entry);
@@ -1416,6 +1419,9 @@ gst_props_destroy (GstProps *props)
   g_list_foreach (props->properties, (GFunc) gst_props_entry_destroy, NULL);
   g_list_free (props->properties);
 
+#ifdef USE_POISONING
+  memset(props, 0xff, sizeof(*props));
+#endif
   gst_mem_chunk_free (_gst_props_chunk, props);
 #ifndef GST_DISABLE_TRACE
   gst_alloc_trace_free (_props_trace, props);