X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkwidgetpath.c;h=855902fd6835e09ebb35d4f9659bb294ab692962;hb=17d3775555888151780fa404242e734a8e7f6b21;hp=00afbe0b9e4a80c759c8460ab2190d6aac0e3797;hpb=9d0febc9a64a5bfb0fcfc3a88de4757f6c1ff090;p=~andy%2Fgtk diff --git a/gtk/gtkwidgetpath.c b/gtk/gtkwidgetpath.c index 00afbe0b9..855902fd6 100644 --- a/gtk/gtkwidgetpath.c +++ b/gtk/gtkwidgetpath.c @@ -174,15 +174,16 @@ gtk_widget_path_copy (const GtkWidgetPath *path) new_path = gtk_widget_path_new (); + g_array_set_size (new_path->elems, path->elems->len); + for (i = 0; i < path->elems->len; i++) { - GtkPathElement *elem, new; + GtkPathElement *elem, *dest; elem = &g_array_index (path->elems, GtkPathElement, i); + dest = &g_array_index (new_path->elems, GtkPathElement, i); - gtk_path_element_copy (&new, elem); - - g_array_append_val (new_path->elems, new); + gtk_path_element_copy (dest, elem); } return new_path;