From 3cb92eb95e0681007513a2fd5ef23c7def3f560d Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 18 Jul 2008 17:48:30 +0000 Subject: [PATCH] Fix a segfault svn path=/trunk/; revision=7200 --- gio/ChangeLog | 19 +++++++++++++++++++ gio/gfile.c | 12 ++++++++++++ 2 files changed, 31 insertions(+) diff --git a/gio/ChangeLog b/gio/ChangeLog index 61e9f3326..6029a6efe 100644 --- a/gio/ChangeLog +++ b/gio/ChangeLog @@ -1,3 +1,22 @@ +2008-07-18 Matthias Clasen + + Bug 543040 – async reading on dummy file will crash on + GIO_USE_VFS=local + + * gfile.c (open_read_async_thread): Cope with read_fn being + NULL. Reported by Lin Ma. + +2008-07-18 Matthias Clasen + + * gio.symbols: + * gcontenttype.[hc]: Add g_content_type_guess_for_tree(). + +2008-07-16 Matthias Clasen + + * gvfs.h: + * gdesktopappinfo.h: + * giomodule.c: Rename a chapter id to avoid filename conflict. + 2008-07-16 Matthias Clasen Bug 540616 – mem leak in filechooser button diff --git a/gio/gfile.c b/gio/gfile.c index 2dd40ba00..e056942a1 100644 --- a/gio/gfile.c +++ b/gio/gfile.c @@ -4198,6 +4198,18 @@ open_read_async_thread (GSimpleAsyncResult *res, iface = G_FILE_GET_IFACE (object); + if (iface->read_fn == NULL) + { + g_set_error_literal (error, G_IO_ERROR, + G_IO_ERROR_NOT_SUPPORTED, + _("Operation not supported")); + + g_simple_async_result_set_from_error (res, error); + g_error_free (error); + + return; + } + stream = iface->read_fn (G_FILE (object), cancellable, &error); if (stream == NULL)