Browse Source

Revert setting of DISPLAY variable, to avoid memory leaks. Thanks to Benedikt for the explanation.

(Old svn revision: 20344)
upstream/xfce4-panel-4.10.1
Jasper Huijsmans 17 years ago
parent
commit
51235f3f6f
  1. 9
      panel/panel-app.c
  2. 1
      panel/panel-app.h
  3. 6
      panel/panel-config.c
  4. 9
      panel/panel.c

9
panel/panel-app.c

@ -116,7 +116,6 @@ cleanup_panels (void)
for (i = 0; i < panel_app.monitor_list->len; ++i)
{
XfceMonitor *xmon = g_ptr_array_index (panel_app.monitor_list, i);
g_free (xmon->dpyname);
g_free (xmon);
}
g_ptr_array_free (panel_app.monitor_list, TRUE);
@ -320,8 +319,6 @@ create_monitor_list (void)
gdk_screen_get_monitor_geometry (screen, j, &(monitor->geometry));
monitor->dpyname = gdk_screen_make_display_name (screen);
g_ptr_array_add (panel_app.monitor_list, monitor);
if (j > 0)
@ -343,8 +340,6 @@ create_monitor_list (void)
gdk_screen_get_monitor_geometry (screen, j, &(monitor->geometry));
monitor->dpyname = gdk_screen_make_display_name (screen);
g_ptr_array_add (panel_app.monitor_list, monitor);
#endif
}
@ -585,10 +580,6 @@ panel_app_run (int argc, char **argv)
g_ptr_array_foreach (panel_app.panel_list, (GFunc)panel_app_init_panel,
NULL);
/* reset environment */
xfce_setenv ("DISPLAY", gdk_display_get_name (gdk_display_get_default ()),
TRUE);
/* Run Forrest, Run! */
panel_app.check_id =
g_timeout_add (250, (GSourceFunc) check_signal_state, NULL);

1
panel/panel-app.h

@ -87,7 +87,6 @@ struct _XfceMonitor
GdkScreen *screen;
int num;
GdkRectangle geometry;
char *dpyname;
guint has_neighbor_left:1;
guint has_neighbor_right:1;
guint has_neighbor_above:1;

6
panel/panel-config.c

@ -428,8 +428,6 @@ end_element_handler (GMarkupParseContext * context,
case PROPERTIES:
if (strcmp ("properties", element_name) == 0)
{
XfceMonitor *xmon;
parser->state = PANEL;
if (parser->properties_set)
{
@ -443,10 +441,6 @@ end_element_handler (GMarkupParseContext * context,
}
/* environment */
xmon = panel_app_get_monitor (parser->monitor);
xfce_setenv ("DISPLAY", xmon->dpyname, TRUE);
g_object_set (G_OBJECT (parser->current_panel),
"size", parser->size,
"monitor", parser->monitor,

9
panel/panel.c

@ -810,14 +810,9 @@ panel_create_item (Panel *panel, const char *name, const char *id)
{
PanelPrivate *priv;
GtkWidget *item = NULL;
XfceMonitor *xmon;
priv = panel->priv;
/* environment */
xmon = panel_app_get_monitor (priv->monitor);
xfce_setenv ("DISPLAY", xmon->dpyname, TRUE);
if ((item = xfce_panel_item_manager_create_item (name, id,
priv->size, priv->screen_position)) != NULL)
{
@ -840,10 +835,6 @@ panel_create_item (Panel *panel, const char *name, const char *id)
G_CALLBACK (_item_start_move), panel);
}
/* reset environment */
xfce_setenv ("DISPLAY", gdk_display_get_name (gdk_display_get_default ()),
TRUE);
return item;
}

Loading…
Cancel
Save