brasero r995 - in trunk: . src



Author: philippr
Date: Tue Jul 15 18:20:01 2008
New Revision: 995
URL: http://svn.gnome.org/viewvc/brasero?rev=995&view=rev

Log:
	Fix for #542767 â toc file leak when copying 1:1 audio cd with one drive

	* src/brasero-dest-selection.c
	(brasero_dest_selection_set_image_properties):
	* src/burn-session.c (brasero_burn_session_get_image_complement),
	(brasero_burn_session_get_tmp_image):
	* src/burn-session.h:

Modified:
   trunk/ChangeLog
   trunk/src/brasero-dest-selection.c
   trunk/src/burn-session.c
   trunk/src/burn-session.h

Modified: trunk/src/brasero-dest-selection.c
==============================================================================
--- trunk/src/brasero-dest-selection.c	(original)
+++ trunk/src/brasero-dest-selection.c	Tue Jul 15 18:20:01 2008
@@ -1048,9 +1048,10 @@
 	||  output.subtype.img_format == BRASERO_IMAGE_FORMAT_NONE) {
 		/* That means that we've got a problem */
 		/* FIXME: we need to display a message nevertheless */
-		brasero_burn_session_set_image_output (priv->session,
-						       BRASERO_IMAGE_FORMAT_NONE,
-						       NULL);
+		brasero_burn_session_set_image_output_full (priv->session,
+							    BRASERO_IMAGE_FORMAT_NONE,
+							    NULL,
+							    NULL);
 		g_signal_emit (self,
 			       brasero_dest_selection_signals [VALID_MEDIA_SIGNAL],
 			       0,

Modified: trunk/src/burn-session.c
==============================================================================
--- trunk/src/burn-session.c	(original)
+++ trunk/src/burn-session.c	Tue Jul 15 18:20:01 2008
@@ -505,9 +505,9 @@
 }
 
 static gchar *
-brasero_burn_session_get_file_complement (BraseroBurnSession *self,
-					  BraseroImageFormat format,
-					  const gchar *path)
+brasero_burn_session_get_image_complement (BraseroBurnSession *self,
+					   BraseroImageFormat format,
+					   const gchar *path)
 {
 	gchar *retval = NULL;
 	BraseroBurnSessionPrivate *priv;
@@ -515,28 +515,28 @@
 	priv = BRASERO_BURN_SESSION_PRIVATE (self);
 
 	if (format == BRASERO_IMAGE_FORMAT_CLONE) {
-		if (g_str_has_suffix (path, ".toc"))
-			retval = g_strdup_printf ("%.*sraw",
+		if (g_str_has_suffix (path, ".raw"))
+			retval = g_strdup_printf ("%.*stoc",
 						  strlen (path) - 3,
 						  path);
 		else
-			retval = g_strdup_printf ("%s.raw", path);
+			retval = g_strdup_printf ("%s.toc", path);
 	}
 	else if (format == BRASERO_IMAGE_FORMAT_CUE) {
-		if (g_str_has_suffix (path, ".cue"))
-			retval = g_strdup_printf ("%.*sbin",
+		if (g_str_has_suffix (path, ".bin"))
+			retval = g_strdup_printf ("%.*scue",
 						  strlen (path) - 3,
 						  path);
 		else
 			retval = g_strdup_printf ("%s.bin", path);
 	}
 	else if (format == BRASERO_IMAGE_FORMAT_CDRDAO) {
-		if (g_str_has_suffix (path, ".toc"))
-			retval = g_strdup_printf ("%.*sbin",
+		if (g_str_has_suffix (path, ".bin"))
+			retval = g_strdup_printf ("%.*stoc",
 						  strlen (path) - 3,
 						  path);
 		else
-			retval = g_strdup_printf ("%s.bin", path);
+			retval = g_strdup_printf ("%s.toc", path);
 	}
 	else
 		retval = NULL;
@@ -798,43 +798,6 @@
 	return BRASERO_BURN_OK;
 }
 
-BraseroBurnResult
-brasero_burn_session_set_image_output (BraseroBurnSession *self,
-				       BraseroImageFormat format,
-				       const gchar *path)
-{
-	BraseroBurnSessionPrivate *priv;
-	BraseroBurnResult result;
-	gchar *complement;
-	gchar *image = NULL;
-	gchar *toc = NULL;
-
-	g_return_val_if_fail (BRASERO_IS_BURN_SESSION (self), BRASERO_BURN_ERR);
-
-	priv = BRASERO_BURN_SESSION_PRIVATE (self);
-
-	/* find the file complement */
-	complement = brasero_burn_session_get_file_complement (self,
-							       format,
-							       path);
-
-	brasero_burn_session_set_image_output_retval (self,
-						      format,
-						      &image,
-						      &toc,
-						      g_strdup (path),
-						      complement);
-
-	result = brasero_burn_session_set_image_output_full (self,
-							     format,
-							     image,
-							     toc);
-	g_free (image);
-	g_free (toc);
-
-	return result;
-}
-
 /**
  *
  */
@@ -985,7 +948,7 @@
 
 	if (format != BRASERO_IMAGE_FORMAT_BIN) {
 		/* toc tmp file */
-		complement = brasero_burn_session_get_file_complement (self, format, path);
+		complement = brasero_burn_session_get_image_complement (self, format, path);
 		if (complement) {
 			result = brasero_burn_session_file_test (self,
 								 complement,

Modified: trunk/src/burn-session.h
==============================================================================
--- trunk/src/burn-session.h	(original)
+++ trunk/src/burn-session.h	Tue Jul 15 18:20:01 2008
@@ -140,11 +140,6 @@
 				 BraseroDrive *burner);
 
 BraseroBurnResult
-brasero_burn_session_set_image_output (BraseroBurnSession *session,
-				       BraseroImageFormat format,
-				       const gchar *path);
-
-BraseroBurnResult
 brasero_burn_session_set_image_output_full (BraseroBurnSession *session,
 					    BraseroImageFormat format,
 					    const gchar *image,



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