[PATCH] Handle errors in mime_node_open
Austin Clements
amdragon at MIT.EDU
Tue Mar 6 10:26:57 PST 2012
---
mime-node.c | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/mime-node.c b/mime-node.c
index d6b4506..a95bdab 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;
--
1.7.7.3
More information about the notmuch
mailing list