anjuta r3550 - in trunk: . plugins/debug-manager



Author: sgranjoux
Date: Wed Jan 30 20:58:38 2008
New Revision: 3550
URL: http://svn.gnome.org/viewvc/anjuta?rev=3550&view=rev

Log:
	* plugins/debug-manager/breakpoints.c:
	Fix #512901: Crash when adding a breakpoint

	* plugins/debug-manager/queue.c:
	Remove a possible memory leak


Modified:
   trunk/ChangeLog
   trunk/plugins/debug-manager/breakpoints.c
   trunk/plugins/debug-manager/queue.c

Modified: trunk/plugins/debug-manager/breakpoints.c
==============================================================================
--- trunk/plugins/debug-manager/breakpoints.c	(original)
+++ trunk/plugins/debug-manager/breakpoints.c	Wed Jan 30 20:58:38 2008
@@ -1418,15 +1418,18 @@
 	pass_entry = glade_xml_get_widget (gxml, "breakpoint_pass_entry");
 	pass_label = glade_xml_get_widget (gxml, "breakpoint_pass_label");
 
-	if (!dma_debugger_queue_is_supported(bd->debugger, HAS_IGNORE_BREAKPOINT))
+	if (bd->debugger != NULL)
 	{
-		gtk_widget_hide (pass_entry);
-		gtk_widget_hide (pass_label);
-	}
-	if (!dma_debugger_queue_is_supported(bd->debugger, HAS_CONDITION_BREAKPOINT))
-	{
-		gtk_widget_hide (condition_entry);
-		gtk_widget_hide (condition_label);
+		if (!dma_debugger_queue_is_supported(bd->debugger, HAS_IGNORE_BREAKPOINT))
+		{	
+			gtk_widget_hide (pass_entry);
+			gtk_widget_hide (pass_label);
+		}
+		if (!dma_debugger_queue_is_supported(bd->debugger, HAS_CONDITION_BREAKPOINT))
+		{
+			gtk_widget_hide (condition_entry);
+			gtk_widget_hide (condition_label);
+		}
 	}
 	
 	if (bi == NULL)
@@ -1445,7 +1448,7 @@
 			uri = ianjuta_file_get_uri (IANJUTA_FILE (te), NULL);
 			line = ianjuta_editor_get_lineno (te, NULL);
 		}
-		//NULL uri ia ok here
+		//NULL uri is ok here
 		bi = breakpoint_item_new_from_uri (bd, uri, line, TRUE);
 		new_break = TRUE;
 	}
@@ -1595,7 +1598,7 @@
 	uri = ianjuta_file_get_uri (IANJUTA_FILE (te), NULL);
 	if (uri == NULL) return;     /* File not saved yet, it's not possible to put a breakpoint in it */
 	line = ianjuta_editor_get_lineno (te, NULL);
-	
+
 	/* Find corresponding breakpoint
 	 * Try to find right mark (it could have moved) first */
 	bi = breakpoints_dbase_find_breakpoint_from_mark (bd, te, line);

Modified: trunk/plugins/debug-manager/queue.c
==============================================================================
--- trunk/plugins/debug-manager/queue.c	(original)
+++ trunk/plugins/debug-manager/queue.c	Wed Jan 30 20:58:38 2008
@@ -884,7 +884,9 @@
 static void
 dma_debugger_queue_finalize (GObject *obj)
 {
-	/*DmaDebuggerQueue *self = DMA_DEBUGGER_QUEUE (obj);*/
+	DmaDebuggerQueue *self = DMA_DEBUGGER_QUEUE (obj);
+
+	g_queue_free (self->queue);
 
 	GNOME_CALL_PARENT (G_OBJECT_CLASS, finalize, (obj));
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]