va_list args;
va_start(args, format);
if (vasprintf(&message, format, args) == -1) {
- return;
+ goto finish;
}
struct status_block *err_block = scalloc(1, sizeof(struct status_block));
TAILQ_INSERT_HEAD(&statusline_head, err_block, blocks);
TAILQ_INSERT_TAIL(&statusline_head, message_block, blocks);
+finish:
FREE(message);
va_end(args);
}
break;
}
ELOG("read() failed!: %s\n", strerror(errno));
+ FREE(buffer);
exit(EXIT_FAILURE);
}
if (n == 0) {
ELOG("stdin: received EOF\n");
+ FREE(buffer);
*ret_buffer_len = -1;
return NULL;
}