brasero r1914 - in trunk: . src



Author: philippr
Date: Sat Feb 14 15:09:56 2009
New Revision: 1914
URL: http://svn.gnome.org/viewvc/brasero?rev=1914&view=rev

Log:
2009-02-14  Philippe Rouquier  <ykw localhost localdomain>

	Fix a memleak AND a temp file leak
	(BraseroSession wasn't unreffed in some dialogs)

	* src/brasero-burn-dialog.c (brasero_burn_dialog_run):
	* src/brasero-project.c (brasero_project_burn):
	* src/burn-session.c (brasero_burn_session_finalize):


Modified:
   trunk/ChangeLog
   trunk/src/brasero-burn-dialog.c
   trunk/src/brasero-project.c
   trunk/src/burn-session.c

Modified: trunk/src/brasero-burn-dialog.c
==============================================================================
--- trunk/src/brasero-burn-dialog.c	(original)
+++ trunk/src/brasero-burn-dialog.c	Sat Feb 14 15:09:56 2009
@@ -2032,14 +2032,13 @@
 	BraseroMedia media;
 	BraseroBurnResult result;
 
+	g_object_ref (session);
 	dialog->priv->session = session;
 
 	/* disable autoconfiguration */
 	if (BRASERO_IS_SESSION_CFG (dialog->priv->session))
 		brasero_session_cfg_disable (BRASERO_SESSION_CFG (dialog->priv->session));
 
-	g_object_ref (session);
-
 	/* update what we should display */
 	brasero_burn_session_get_input_type (session, &dialog->priv->input);
 	if (brasero_burn_session_is_dest_file (session))
@@ -2057,8 +2056,8 @@
 		result = brasero_burn_dialog_record_session (dialog, media);
 	} while (result == BRASERO_BURN_RETRY);
 
-	g_object_unref (dialog->priv->session);
 	dialog->priv->session = NULL;
+	g_object_unref (session);
 
 	return (result == BRASERO_BURN_OK);
 }

Modified: trunk/src/brasero-project.c
==============================================================================
--- trunk/src/brasero-project.c	(original)
+++ trunk/src/brasero-project.c	Sat Feb 14 15:09:56 2009
@@ -955,6 +955,7 @@
 	success = brasero_app_burn (brasero_app_get_default (), session);
 
     	project->priv->burnt = success;
+	g_object_unref (session);
 
 end:
 

Modified: trunk/src/burn-session.c
==============================================================================
--- trunk/src/burn-session.c	(original)
+++ trunk/src/burn-session.c	Sat Feb 14 15:09:56 2009
@@ -1544,6 +1544,8 @@
 	BraseroBurnSessionPrivate *priv;
 	GSList *iter;
 
+	BRASERO_BURN_LOG ("Cleaning session");
+
 	priv = BRASERO_BURN_SESSION_PRIVATE (object);
 
 	if (priv->tags) {



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