do not leak the output stream.

2008-06-10  Paolo Borelli  <pborelli@katamail.com>

	* gfile.c (g_file_replace_contents): do not leak the output stream.


svn path=/trunk/; revision=6984
This commit is contained in:
Paolo Borelli 2008-06-10 11:40:45 +00:00 committed by Paolo Borelli
parent 6908da5a57
commit 9944e93fda
2 changed files with 11 additions and 5 deletions

View File

@ -1,3 +1,7 @@
2008-06-10 Paolo Borelli <pborelli@katamail.com>
* gfile.c (g_file_replace_contents): do not leak the output stream.
2008-06-10 Michael Natterer <mitch@imendio.com>
* gcontenttype.c (g_content_type_get_icon): fix SEGV by not using

View File

@ -5411,6 +5411,7 @@ g_file_replace_contents (GFile *file,
GFileOutputStream *out;
gsize pos, remainder;
gssize res;
gboolean ret;
g_return_val_if_fail (G_IS_FILE (file), FALSE);
g_return_val_if_fail (contents != NULL, FALSE);
@ -5436,18 +5437,19 @@ g_file_replace_contents (GFile *file,
{
/* Ignore errors on close */
g_output_stream_close (G_OUTPUT_STREAM (out), cancellable, NULL);
g_object_unref (out);
/* error is set already */
return FALSE;
}
if (!g_output_stream_close (G_OUTPUT_STREAM (out), cancellable, error))
return FALSE;
ret = g_output_stream_close (G_OUTPUT_STREAM (out), cancellable, error);
g_object_unref (out);
if (new_etag)
*new_etag = g_file_output_stream_get_etag (out);
return TRUE;
return ret;
}
typedef struct {