mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-11 11:20:12 +00:00
fix signature of this function and propagate errors from
2008-01-16 Michael Natterer <mitch@imendio.com> * gdk-pixbuf-io.c (save_to_stream): fix signature of this function and propagate errors from g_output_stream_write(). Return error also on incomplete writes (which don't generate an error by themselves). Unrelated: (gdk_pixbuf_io_init): initialize "builtin_module" on a separate line to avoid compiler warning in the common case of no built-in modules. svn path=/trunk/; revision=19378
This commit is contained in:
parent
7ffe104a77
commit
7932cfb669
@ -1,3 +1,16 @@
|
||||
2008-01-16 Michael Natterer <mitch@imendio.com>
|
||||
|
||||
* gdk-pixbuf-io.c (save_to_stream): fix signature of this function
|
||||
and propagate errors from g_output_stream_write(). Return error
|
||||
also on incomplete writes (which don't generate an error by
|
||||
themselves).
|
||||
|
||||
Unrelated:
|
||||
|
||||
(gdk_pixbuf_io_init): initialize "builtin_module" on a separate
|
||||
line to avoid compiler warning in the common case of no built-in
|
||||
modules.
|
||||
|
||||
2008-01-16 Michael Natterer <mitch@imendio.com>
|
||||
|
||||
* Makefile.am (LDADDS): use $GDK_PIXBUF_DEP_LIBS instead of
|
||||
|
@ -306,7 +306,12 @@ gdk_pixbuf_io_init (void)
|
||||
GdkPixbufModulePattern *pattern;
|
||||
GError *error = NULL;
|
||||
#endif
|
||||
GdkPixbufModule *builtin_module = NULL;
|
||||
GdkPixbufModule *builtin_module ;
|
||||
|
||||
/* initialize on separate line to avoid compiler warnings in the
|
||||
* common case of no compiled-in modules.
|
||||
*/
|
||||
builtin_module = NULL;
|
||||
|
||||
#define load_one_builtin_module(format) \
|
||||
builtin_module = g_new0 (GdkPixbufModule, 1); \
|
||||
@ -2209,16 +2214,29 @@ typedef struct {
|
||||
static gboolean
|
||||
save_to_stream (const gchar *buffer,
|
||||
gsize count,
|
||||
GCancellable *cancellable,
|
||||
GError **error,
|
||||
gpointer data)
|
||||
{
|
||||
SaveToStreamData *sdata = (SaveToStreamData *)data;
|
||||
GError *my_error = NULL;
|
||||
gsize n;
|
||||
|
||||
g_output_stream_write (sdata->stream,
|
||||
buffer, count,
|
||||
sdata->cancellable,
|
||||
error);
|
||||
n = g_output_stream_write (sdata->stream,
|
||||
buffer, count,
|
||||
sdata->cancellable,
|
||||
&my_error);
|
||||
if (n != count) {
|
||||
if (!my_error) {
|
||||
g_set_error (error,
|
||||
G_IO_ERROR, 0,
|
||||
_("Error writing to image stream"));
|
||||
}
|
||||
else {
|
||||
g_propagate_error (error, my_error);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user