diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2009-06-04 03:02:14 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2009-06-04 22:57:29 +0800 |
commit | 05ffc39af8369116e830fd6a70c4fe54857a6336 (patch) | |
tree | 10b526c01e677497d947110b4cb3039ebbc172d6 /widgets | |
parent | f0da93ccd071b8c56e91d52035b460a60828044c (diff) | |
download | gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.tar gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.tar.gz gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.tar.bz2 gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.tar.lz gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.tar.xz gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.tar.zst gsoc2013-evolution-05ffc39af8369116e830fd6a70c4fe54857a6336.zip |
Fix a runtime warning for zero-length attachments.
Diffstat (limited to 'widgets')
-rw-r--r-- | widgets/misc/e-attachment.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/widgets/misc/e-attachment.c b/widgets/misc/e-attachment.c index 35c377abe5..ba2811d5d9 100644 --- a/widgets/misc/e-attachment.c +++ b/widgets/misc/e-attachment.c @@ -2430,10 +2430,14 @@ attachment_save_got_output_stream (SaveContext *save_context) camel_data_wrapper_decode_to_stream (wrapper, stream); camel_object_unref (stream); - /* Load the buffer into a GMemoryInputStream. */ - input_stream = g_memory_input_stream_new_from_data ( - buffer->data, (gssize) buffer->len, - (GDestroyNotify) g_free); + /* Load the buffer into a GMemoryInputStream. + * But watch out for zero length MIME parts. */ + input_stream = g_memory_input_stream_new (); + if (buffer->len > 0) + g_memory_input_stream_add_data ( + G_MEMORY_INPUT_STREAM (input_stream), + buffer->data, (gssize) buffer->len, + (GDestroyNotify) g_free); save_context->input_stream = input_stream; save_context->total_num_bytes = (goffset) buffer->len; g_byte_array_free (buffer, FALSE); |