From 1c078e51cda493012b4d2f3377e6dc7645007d98 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sep 13 2007 17:42:24 +0000 Subject: fix a mem leak update default configuration --- diff --git a/desktop-file-monitoring.patch b/desktop-file-monitoring.patch index 411f95e..20d2fa4 100644 --- a/desktop-file-monitoring.patch +++ b/desktop-file-monitoring.patch @@ -1,6 +1,6 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.h.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/launcher.h --- gnome-panel-2.19.92/gnome-panel/launcher.h.desktop-file-monitoring 2007-09-04 13:34:26.000000000 -0400 -+++ gnome-panel-2.19.92/gnome-panel/launcher.h 2007-09-05 23:24:37.000000000 -0400 ++++ gnome-panel-2.19.92/gnome-panel/launcher.h 2007-09-13 12:23:44.000000000 -0400 @@ -13,6 +13,7 @@ #include "applet.h" @@ -20,7 +20,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.h.desktop-file-monitoring gnom void panel_launcher_create (PanelToplevel *toplevel, diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h --- gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h.desktop-file-monitoring 2007-09-04 13:34:26.000000000 -0400 -+++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h 2007-09-05 23:24:37.000000000 -0400 ++++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h 2007-09-13 12:23:44.000000000 -0400 @@ -101,6 +101,8 @@ void panel_ditem_editor_set_uri (PanelDI const char *uri); @@ -32,8 +32,8 @@ diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h.desktop-file-monit PanelDitemSaveUri save_uri, diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/launcher.c --- gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring 2007-09-04 13:34:26.000000000 -0400 -+++ gnome-panel-2.19.92/gnome-panel/launcher.c 2007-09-06 00:33:52.000000000 -0400 -@@ -285,6 +287,8 @@ static void ++++ gnome-panel-2.19.92/gnome-panel/launcher.c 2007-09-13 12:23:44.000000000 -0400 +@@ -285,6 +285,8 @@ static void destroy_launcher (GtkWidget *widget, Launcher *launcher) { @@ -42,7 +42,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom launcher_properties_destroy (launcher); launcher_widget_destroy_open_dialogs (launcher); } -@@ -458,6 +462,37 @@ drag_data_get_cb (GtkWidget *widg +@@ -458,6 +460,37 @@ drag_data_get_cb (GtkWidget *widg } @@ -80,7 +80,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom static Launcher * create_launcher (const char *location) { -@@ -534,6 +569,25 @@ create_launcher (const char *location) +@@ -534,6 +567,25 @@ create_launcher (const char *location) launcher->key_file = key_file; launcher->prop_dialog = NULL; launcher->destroy_handler = 0; @@ -106,7 +106,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom /* Icon will be setup later */ launcher->button = button_widget_new (NULL /* icon */, -@@ -662,6 +716,15 @@ static void +@@ -662,6 +714,15 @@ static void launcher_changed (PanelDItemEditor *dialog, Launcher *launcher) { @@ -122,7 +122,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom /* Setup the button look */ setup_button (launcher); } -@@ -733,6 +796,43 @@ launcher_save_uri (PanelDItemEditor *dia +@@ -733,6 +794,43 @@ launcher_save_uri (PanelDItemEditor *dia return NULL; } @@ -166,7 +166,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom static void launcher_saved (GtkWidget *dialog, Launcher *launcher) -@@ -740,11 +840,15 @@ launcher_saved (GtkWidget *dialog, +@@ -740,11 +838,15 @@ launcher_saved (GtkWidget *dialog, const char *uri; GConfClient *client; const char *key; @@ -182,7 +182,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom if (uri && launcher->location && strcmp (uri, launcher->location)) { client = panel_gconf_get_client (); -@@ -757,6 +861,9 @@ launcher_saved (GtkWidget *dialog, +@@ -757,6 +859,9 @@ launcher_saved (GtkWidget *dialog, if (launcher->location) g_free (launcher->location); launcher->location = g_strdup (uri); @@ -192,7 +192,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom } } -@@ -923,6 +1030,7 @@ launcher_new_saved (GtkWidget *dialog, +@@ -923,6 +1028,7 @@ launcher_new_saved (GtkWidget *dialog, PanelWidget *panel; int pos; const char *uri; @@ -200,7 +200,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom pos = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (dialog), "pos")); panel = g_object_get_data (G_OBJECT (dialog), "panel"); -@@ -930,6 +1038,10 @@ launcher_new_saved (GtkWidget *dialog, +@@ -930,6 +1036,10 @@ launcher_new_saved (GtkWidget *dialog, uri = panel_ditem_editor_get_uri (PANEL_DITEM_EDITOR (dialog)); if (panel_launcher_get_filename (uri) != NULL) uri = panel_launcher_get_filename (uri); @@ -212,8 +212,8 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom } diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c ---- gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring 2007-09-05 23:24:37.000000000 -0400 -+++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c 2007-09-05 23:24:37.000000000 -0400 +--- gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring 2007-09-13 12:23:44.000000000 -0400 ++++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c 2007-09-13 12:31:03.000000000 -0400 @@ -80,6 +80,8 @@ struct _PanelDItemEditorPrivate /* the directory of the theme for the icon, see bug #119208 */ @@ -248,21 +248,29 @@ diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.desktop-file-monit dialog->priv->dirty = TRUE; g_signal_emit (G_OBJECT (dialog), ditem_edit_signals[CHANGED], 0); } -@@ -1003,6 +1016,13 @@ update_editor_from_desktop_file (PanelDI +@@ -1005,6 +1018,13 @@ update_editor_from_desktop_file (PanelDI */ setup_icon_entry (dialog, icon); -+ /* We set the orig_desktop_file field to let the -+ * launcher know that the editor contents are coming -+ * directly from a desktop file. -+ */ -+ g_free (dialog->priv->orig_desktop_file); -+ dialog->priv->orig_desktop_file = g_strdup (uri); ++ /* We set the orig_desktop_file field to let the ++ * launcher know that the editor contents are coming ++ * directly from a desktop file. ++ */ ++ g_free (dialog->priv->orig_desktop_file); ++ dialog->priv->orig_desktop_file = g_strdup (uri); + - return TRUE; + g_free (name); + g_free (comment); + g_free (icon); +@@ -1079,6 +1099,7 @@ update_chooser_for_type (PanelDItemEdito + g_assert_not_reached (); } -@@ -1826,3 +1846,12 @@ panel_ditem_register_save_uri_func (Pane ++ + chooser = dialog->priv->command_browse_filechooser; + + gtk_window_set_title (GTK_WINDOW (chooser), +@@ -1835,3 +1856,12 @@ panel_ditem_register_save_uri_func (Pane dialog->priv->save_uri = save_uri; dialog->priv->save_uri_data = data; } diff --git a/gnome-panel.spec b/gnome-panel.spec index d4975cc..4524ec7 100644 --- a/gnome-panel.spec +++ b/gnome-panel.spec @@ -22,7 +22,7 @@ Summary: GNOME panel Name: gnome-panel Version: 2.19.92 -Release: 3%{?dist} +Release: 4%{?dist} URL: http://www.gnome.org Source0: http://download.gnome.org/sources/gnome-panel/2.19/%{name}-%{version}.tar.bz2 Source1: redhat-panel-default-setup.entries @@ -311,6 +311,11 @@ fi %{_datadir}/gtk-doc/html/* %changelog +* Thu Sep 13 2007 Matthias Clasen - 2.19.92-4 +- Fix some memleaks +- Remove OpenOffice launchers from the default configuration +- Add Tomboy to the default configuration + * Mon Sep 10 2007 Ray Strode - 2.19.92-3 - create ~/.local/share/applications before writing out preferred app launchers diff --git a/launcher-desktop-files.patch b/launcher-desktop-files.patch index 4d1d92a..f42379d 100644 --- a/launcher-desktop-files.patch +++ b/launcher-desktop-files.patch @@ -1,7 +1,7 @@ -diff -up gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c.launcher-desktop-file gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c ---- gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c.launcher-desktop-file 2007-08-28 00:20:51.000000000 -0400 -+++ gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c 2007-08-28 00:20:57.000000000 -0400 -@@ -973,6 +973,42 @@ panel_ditem_editor_icon_changed (PanelDI +diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.launcher-desktop-files gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c +--- gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.launcher-desktop-files 2007-09-04 13:34:26.000000000 -0400 ++++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c 2007-09-13 12:13:36.000000000 -0400 +@@ -973,6 +973,51 @@ panel_ditem_editor_icon_changed (PanelDI g_free (file); } @@ -14,6 +14,7 @@ diff -up gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c.launcher-desktop-fi + char *comment; + char *exec; + char *icon; ++ gboolean retval = FALSE; + + key_file = g_key_file_new (); + if (g_key_file_load_from_file (key_file, uri, 0, NULL)) { @@ -27,24 +28,32 @@ diff -up gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c.launcher-desktop-fi + icon = panel_util_key_file_get_locale_string (key_file, "Icon"); + exec = panel_util_key_file_get_string (key_file, "Exec"); + -+ gtk_entry_set_text (GTK_ENTRY (dialog->priv->name_entry), name ? name : ""); -+ gtk_entry_set_text (GTK_ENTRY (dialog->priv->comment_entry), comment ? comment : ""); -+ gtk_entry_set_text (GTK_ENTRY (dialog->priv->command_entry), exec ? exec : ""); ++ gtk_entry_set_text (GTK_ENTRY (dialog->priv->name_entry), name ? name : ""); ++ gtk_entry_set_text (GTK_ENTRY (dialog->priv->comment_entry), comment ? comment : ""); ++ gtk_entry_set_text (GTK_ENTRY (dialog->priv->command_entry), exec ? exec : ""); ++ + /* Note: we need to set the icon last, since the editor + * tries to guess the icon when the command is modified + */ + setup_icon_entry (dialog, icon); + -+ return TRUE; ++ g_free (name); ++ g_free (comment); ++ g_free (icon); ++ g_free (exec); ++ ++ retval = TRUE; + } + -+ return FALSE; ++ g_key_file_free (key_file); ++ ++ return retval; +} + static void command_browse_chooser_response (GtkFileChooser *chooser, gint response_id, -@@ -986,7 +1022,11 @@ command_browse_chooser_response (GtkFile +@@ -986,7 +1031,11 @@ command_browse_chooser_response (GtkFile case PANEL_DITEM_EDITOR_TYPE_APPLICATION: case PANEL_DITEM_EDITOR_TYPE_TERMINAL_APPLICATION: text = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (chooser)); @@ -57,7 +66,7 @@ diff -up gnome-panel-2.19.6/gnome-panel/panel-ditem-editor.c.launcher-desktop-fi g_free (text); break; case PANEL_DITEM_EDITOR_TYPE_LINK: -@@ -996,8 +1036,9 @@ command_browse_chooser_response (GtkFile +@@ -996,8 +1045,9 @@ command_browse_chooser_response (GtkFile g_assert_not_reached (); } diff --git a/redhat-panel-default-setup.entries b/redhat-panel-default-setup.entries index 25c9f71..b065d83 100644 --- a/redhat-panel-default-setup.entries +++ b/redhat-panel-default-setup.entries @@ -35,15 +35,6 @@ email_launcher - - wordprocessor_launcher - - - presentation_launcher - - - spreadsheet_launcher - @@ -56,6 +47,9 @@ + tomboy + + mixer @@ -343,167 +337,59 @@ objects/email_launcher/menu_path/schemas/apps/panel/objects/menu_path objects/email_launcher/action_type/schemas/apps/panel/objects/action_type - + - objects/wordprocessor_launcher/object_type + applets/tomboy/object_type /schemas/apps/panel/objects/object_type - launcher-object + bonobo-applet - objects/wordprocessor_launcher/toplevel_id + applets/tomboy/toplevel_id /schemas/apps/panel/objects/toplevel_id top_panel - objects/wordprocessor_launcher/position + applets/tomboy/position /schemas/apps/panel/objects/position 3 - objects/wordprocessor_launcher/panel_right_stick - /schemas/apps/panel/objects/panel_right_stick - - false - - - - objects/wordprocessor_launcher/locked - /schemas/apps/panel/objects/locked - - false - - - - objects/wordprocessor_launcher/launcher_location - /schemas/apps/panel/objects/launcher_location - - /usr/share/applications/openoffice.org-1.9-writer.desktop - - - - objects/wordprocessor_launcher/bonobo_iid/schemas/apps/panel/objects/bonobo_iid - objects/wordprocessor_launcher/attached_toplevel_id/schemas/apps/panel/objects/attached_toplevel_id - objects/wordprocessor_launcher/tooltip/schemas/apps/panel/objects/tooltip - objects/wordprocessor_launcher/use_custom_icon/schemas/apps/panel/objects/use_custom_icon - objects/wordprocessor_launcher/custom_icon/schemas/apps/panel/objects/custom_icon - objects/wordprocessor_launcher/use_menu_path/schemas/apps/panel/objects/use_menu_path - objects/wordprocessor_launcher/menu_path/schemas/apps/panel/objects/menu_path - objects/wordprocessor_launcher/action_type/schemas/apps/panel/objects/action_type - - - - - objects/presentation_launcher/object_type - /schemas/apps/panel/objects/object_type - - launcher-object - - - - objects/presentation_launcher/toplevel_id - /schemas/apps/panel/objects/toplevel_id - - top_panel - - - - objects/presentation_launcher/position - /schemas/apps/panel/objects/position - - 4 - - - - objects/presentation_launcher/panel_right_stick + applets/tomboy/panel_right_stick /schemas/apps/panel/objects/panel_right_stick - false - - - - objects/presentation_launcher/locked - /schemas/apps/panel/objects/locked - - false - - - - objects/presentation_launcher/launcher_location - /schemas/apps/panel/objects/launcher_location - - /usr/share/applications/openoffice.org-1.9-impress.desktop - - - - objects/presentation_launcher/bonobo_iid/schemas/apps/panel/objects/bonobo_iid - objects/presentation_launcher/attached_toplevel_id/schemas/apps/panel/objects/attached_toplevel_id - objects/presentation_launcher/tooltip/schemas/apps/panel/objects/tooltip - objects/presentation_launcher/use_custom_icon/schemas/apps/panel/objects/use_custom_icon - objects/presentation_launcher/custom_icon/schemas/apps/panel/objects/custom_icon - objects/presentation_launcher/use_menu_path/schemas/apps/panel/objects/use_menu_path - objects/presentation_launcher/menu_path/schemas/apps/panel/objects/menu_path - objects/presentation_launcher/action_type/schemas/apps/panel/objects/action_type - - - - - objects/spreadsheet_launcher/object_type - /schemas/apps/panel/objects/object_type - - launcher-object - - - - objects/spreadsheet_launcher/toplevel_id - /schemas/apps/panel/objects/toplevel_id - - top_panel - - - - objects/spreadsheet_launcher/position - /schemas/apps/panel/objects/position - - 5 - - - - objects/spreadsheet_launcher/panel_right_stick - /schemas/apps/panel/objects/panel_right_stick - - false + true - objects/spreadsheet_launcher/locked + applets/tomboy/locked /schemas/apps/panel/objects/locked - false + true - objects/spreadsheet_launcher/launcher_location - /schemas/apps/panel/objects/launcher_location + applets/tomboy/bonobo_iid + /schemas/apps/panel/objects/bonobo_iid - /usr/share/applications/openoffice.org-1.9-calc.desktop + OAFIID:TomboyApplet - objects/spreadsheet_launcher/bonobo_iid/schemas/apps/panel/objects/bonobo_iid - objects/spreadsheet_launcher/attached_toplevel_id/schemas/apps/panel/objects/attached_toplevel_id - objects/spreadsheet_launcher/tooltip/schemas/apps/panel/objects/tooltip - objects/spreadsheet_launcher/use_custom_icon/schemas/apps/panel/objects/use_custom_icon - objects/spreadsheet_launcher/custom_icon/schemas/apps/panel/objects/custom_icon - objects/spreadsheet_launcher/use_menu_path/schemas/apps/panel/objects/use_menu_path - objects/spreadsheet_launcher/menu_path/schemas/apps/panel/objects/menu_path - objects/spreadsheet_launcher/action_type/schemas/apps/panel/objects/action_type + applets/tomboy/attached_toplevel_id/schemas/apps/panel/objects/attached_toplevel_id + applets/tomboy/tooltip/schemas/apps/panel/objects/tooltip + applets/tomboy/use_custom_icon/schemas/apps/panel/objects/use_custom_icon + applets/tomboy/custom_icon/schemas/apps/panel/objects/custom_icon + applets/tomboy/use_menu_path/schemas/apps/panel/objects/use_menu_path + applets/tomboy/menu_path/schemas/apps/panel/objects/menu_path + applets/tomboy/launcher_location/schemas/apps/panel/objects/launcher_location + applets/tomboy/action_type/schemas/apps/panel/objects/action_type