X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=mime-node.c;h=a95bdabc43d86bffd8ce55eaffda2f2395825900;hp=d6b4506cbad5b7b19271bd237d87860bb4232ce8;hb=353577ad5733b78b71d93c9bdbaae0b062d32331;hpb=90f310b4fb8903898ead674059584737e448eb8a;ds=sidebyside diff --git a/mime-node.c b/mime-node.c index d6b4506c..a95bdabc 100644 --- a/mime-node.c +++ b/mime-node.c @@ -97,11 +97,26 @@ mime_node_open (const void *ctx, notmuch_message_t *message, } mctx->stream = g_mime_stream_file_new (mctx->file); + if (!mctx->stream) { + fprintf (stderr, "Out of memory.\n"); + status = NOTMUCH_STATUS_OUT_OF_MEMORY; + goto DONE; + } g_mime_stream_file_set_owner (GMIME_STREAM_FILE (mctx->stream), FALSE); mctx->parser = g_mime_parser_new_with_stream (mctx->stream); + if (!mctx->parser) { + fprintf (stderr, "Out of memory.\n"); + status = NOTMUCH_STATUS_OUT_OF_MEMORY; + goto DONE; + } mctx->mime_message = g_mime_parser_construct_message (mctx->parser); + if (!mctx->mime_message) { + fprintf (stderr, "Failed to parse %s\n", filename); + status = NOTMUCH_STATUS_FILE_ERROR; + goto DONE; + } mctx->cryptoctx = cryptoctx; mctx->decrypt = decrypt;