Make it robust to fail to create a message.
authorThadeu Lima de Souza Cascardo <cascardo@cascardo.info>
Wed, 17 Jul 2013 21:48:33 +0000 (18:48 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@cascardo.info>
Wed, 17 Jul 2013 21:48:33 +0000 (18:48 -0300)
src/msg.c

index 9a04735..56ba106 100644 (file)
--- a/src/msg.c
+++ b/src/msg.c
@@ -28,8 +28,15 @@ struct sgp_msg * sgp_msg_new(char *subject)
 {
        struct sgp_msg *msg;
        msg = malloc(sizeof(*msg));
+       if (!msg)
+               return NULL;
        msg->subject = strdup(subject);
+       if (!msg->subject)
+               goto out;
        return msg;
+out:
+       free(msg);
+       return NULL;
 }
 
 void sgp_msg_destroy(struct sgp_msg *msg)