summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authordkegel@google.com <dkegel@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-29 18:16:43 +0000
committerdkegel@google.com <dkegel@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-29 18:16:43 +0000
commita4a78e5cc57a3018a1163b3733f0c8c976291ddf (patch)
tree3f49f4dae4d5aacb48e3a3c69868696f04fb0a63 /chrome
parent6d662cd0bf502ee83f09fc578799e3af1969b5b8 (diff)
downloadchromium_src-a4a78e5cc57a3018a1163b3733f0c8c976291ddf.zip
chromium_src-a4a78e5cc57a3018a1163b3733f0c8c976291ddf.tar.gz
chromium_src-a4a78e5cc57a3018a1163b3733f0c8c976291ddf.tar.bz2
Free gtk list. Should fix valgrind warning
24 (12 direct, 12 indirect) bytes in 1 blocks are definitely lost in loss record 54 of 258 at malloc (vg_replace_malloc.c:178) ... by gtk_container_foreach (in /usr/lib/libgtk-x11-2.0.so.0.1200.9) by gtk_container_get_children (in /usr/lib/libgtk-x11-2.0.so.0.1200.9) by (anonymous namespace)::OnDialogResponse(_GtkDialog*, int, AppModalDialog*) (app_modal_dialog_gtk.cc:24) Review URL: http://codereview.chromium.org/102007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14855 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/app_modal_dialog_gtk.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/chrome/browser/app_modal_dialog_gtk.cc b/chrome/browser/app_modal_dialog_gtk.cc
index 743db73..76b5607 100644
--- a/chrome/browser/app_modal_dialog_gtk.cc
+++ b/chrome/browser/app_modal_dialog_gtk.cc
@@ -19,15 +19,17 @@ namespace {
// If there's a text entry in the dialog, get the text from the first one and
// return it.
std::wstring GetPromptText(GtkDialog* dialog) {
+ std::wstring text;
// TODO(tc): Replace with gtk_dialog_get_content_area() when using GTK 2.14+
GtkWidget* contents_vbox = dialog->vbox;
GList* first_child = gtk_container_get_children(GTK_CONTAINER(contents_vbox));
for (GList* item = first_child; item; item = g_list_next(item)) {
if (GTK_IS_ENTRY(item->data)) {
- return UTF8ToWide(gtk_entry_get_text(GTK_ENTRY(item->data)));
+ text = UTF8ToWide(gtk_entry_get_text(GTK_ENTRY(item->data)));
}
}
- return std::wstring();
+ g_list_free(first_child);
+ return text;
}
void OnDialogResponse(GtkDialog* dialog, gint response_id,