2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
2002-01-03 Anders Carlsson <andersca@gnu.org>
+ * gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
+ necessary.
+
+ * gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.
+
+ * gtk/gtkcolorsel.c (get_focus_gc): Free dash list.
+
+ * gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
+ if it's NULL.
+
* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
_gtk_tree_view_queue_draw_node.
(gtk_tree_view_row_has_child_toggled): Only redraw one node.
if (dash_list[0])
gdk_gc_set_dashes (gc, 0, dash_list, strlen (dash_list));
+ g_free (dash_list);
+
return gc;
}
gtk_widget_shape_combine_mask (window, mask, 0, 0);
g_object_unref (G_OBJECT (pixmap));
- g_object_unref (G_OBJECT (mask));
+
+ if (mask)
+ g_object_unref (G_OBJECT (mask));
gtk_drag_set_icon_window (context, window, hot_x, hot_y, TRUE);
}
if (dash_list[0])
gdk_gc_set_dashes (focus_gc, 0, dash_list, strlen (dash_list));
+ g_free (dash_list);
+
return focus_gc;
}
{
GdkPoint points[5];
GdkGC *gc;
+ gboolean free_dash_list = FALSE;
gint line_width = 1;
gchar *dash_list = "\1\1";
gint dash_len;
gc = style->fg_gc[state_type];
if (widget)
- gtk_widget_style_get (widget,
- "focus-line-width", &line_width,
- "focus-line-pattern", (gchar *)&dash_list,
- NULL);
-
+ {
+ gtk_widget_style_get (widget,
+ "focus-line-width", &line_width,
+ "focus-line-pattern", (gchar *)&dash_list,
+ NULL);
+
+ free_dash_list = TRUE;
+ }
+
sanitize_size (window, &width, &height);
if (area)
if (detail && !strcmp (detail, "add-mode"))
- dash_list = "\4\4";
+ {
+ if (free_dash_list)
+ g_free (dash_list);
+
+ dash_list = "\4\4";
+ free_dash_list = FALSE;
+ }
points[0].x = x + line_width / 2;
points[0].y = y + line_width / 2;
if (area)
gdk_gc_set_clip_rectangle (gc, NULL);
+
+ if (free_dash_list)
+ g_free (dash_list);
}
static void