totem r5506 - in trunk: . src



Author: hadess
Date: Mon Jul 14 10:43:31 2008
New Revision: 5506
URL: http://svn.gnome.org/viewvc/totem?rev=5506&view=rev

Log:
2008-07-14  Bastien Nocera  <hadess hadess net>

	* src/totem-interface.c (totem_interface_load),
	(totem_interface_load_with_full_path): Fix a crasher
	when GtkBuilder interface files are missing (Closes: #542446)



Modified:
   trunk/ChangeLog
   trunk/src/totem-interface.c

Modified: trunk/src/totem-interface.c
==============================================================================
--- trunk/src/totem-interface.c	(original)
+++ trunk/src/totem-interface.c	Mon Jul 14 10:43:31 2008
@@ -167,6 +167,19 @@
 	char *filename;
 
 	filename = totem_interface_get_full_path (name);
+	if (filename == NULL) {
+		char *msg;
+
+		msg = g_strdup_printf (_("Couldn't load the '%s' interface. %s"), name, _("The file does not exist."));
+		if (fatal == FALSE)
+			totem_interface_error (msg, _("Make sure that Totem is properly installed."), parent);
+		else
+			totem_interface_error_blocking (msg, _("Make sure that Totem is properly installed."), parent);
+
+		g_free (msg);
+		return NULL;
+	}
+
 	builder = totem_interface_load_with_full_path (filename, fatal, parent,
 						       user_data);
 	g_free (filename);
@@ -186,8 +199,7 @@
 		gtk_builder_set_translation_domain (builder, GETTEXT_PACKAGE);
 	}
 
-	if (builder == NULL || gtk_builder_add_from_file (builder, filename, &error) == FALSE)
-	{
+	if (builder == NULL || gtk_builder_add_from_file (builder, filename, &error) == FALSE) {
 		char *msg;
 
 		msg = g_strdup_printf (_("Couldn't load the '%s' interface. %s"), filename, error->message);



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