diff options
Diffstat (limited to 'debian/patches')
-rw-r--r-- | debian/patches/02_fix_segfault_in_listview.patch | 29 | ||||
-rw-r--r-- | debian/patches/series | 1 |
2 files changed, 30 insertions, 0 deletions
diff --git a/debian/patches/02_fix_segfault_in_listview.patch b/debian/patches/02_fix_segfault_in_listview.patch new file mode 100644 index 00000000..662a6290 --- /dev/null +++ b/debian/patches/02_fix_segfault_in_listview.patch @@ -0,0 +1,29 @@ +diff --git a/src/tree.c b/src/tree.c +index ad4a6d1..b347b15 100644 +--- a/src/tree.c ++++ b/src/tree.c +@@ -120,13 +120,13 @@ zenity_tree_handle_stdin (GIOChannel *channel, + + string = g_string_new (NULL); + +- while (channel->is_readable != TRUE) ++ while ((g_io_channel_get_flags(channel) & G_IO_FLAG_IS_READABLE) != G_IO_FLAG_IS_READABLE) + ; + do { + gint status; + + do { +- if (channel->is_readable == TRUE) ++ if (g_io_channel_get_flags(channel) & G_IO_FLAG_IS_READABLE) + status = g_io_channel_read_line_string (channel, string, NULL, &error); + else + return FALSE; +@@ -645,7 +645,7 @@ zenity_tree_dialog_response (GtkWidget *widget, int response, gpointer data) + zen_data->exit_code = zenity_util_return_exit_code (ZENITY_ESC); + break; + } +- if (channel->is_readable == TRUE) ++ if (channel != NULL && g_io_channel_get_flags (channel) & G_IO_FLAG_IS_READABLE) + g_io_channel_shutdown (channel, TRUE, NULL); + + gtk_main_quit (); diff --git a/debian/patches/series b/debian/patches/series index 777963c8..4e5e3421 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ 01_dont_quit_zenity_when_stdin_ends.patch +02_fix_segfault_in_listview.patch |