diff options
| -rw-r--r-- | src/buffer.c | 7 | ||||
| -rw-r--r-- | src/cmark.c | 8 | 
2 files changed, 12 insertions, 3 deletions
| diff --git a/src/buffer.c b/src/buffer.c index a6754b6..629f809 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -42,7 +42,12 @@ void cmark_strbuf_grow(cmark_strbuf *buf, bufsize_t target_size) {    if (target_size < buf->asize)      return; -  if (target_size > (bufsize_t)(INT32_MAX / 2)) +  if (target_size > (bufsize_t)(INT32_MAX / 2)) { +    fprintf(stderr, +      "[cmark] cmark_strbuf_grow requests buffer with size > %d, aborting\n", +         (bufsize_t)(INT32_MAX / 2)); +    abort(); +  }      abort();    /* Oversize the buffer by 50% to guarantee amortized linear time diff --git a/src/cmark.c b/src/cmark.c index 0d3bc16..d64237f 100644 --- a/src/cmark.c +++ b/src/cmark.c @@ -12,15 +12,19 @@ const char *cmark_version_string() { return CMARK_VERSION_STRING; }  static void *xcalloc(size_t nmem, size_t size) {    void *ptr = calloc(nmem, size); -  if (!ptr) +  if (!ptr) { +    fprintf(stderr, "[cmark] calloc returned null pointer, aborting\n");      abort(); +  }    return ptr;  }  static void *xrealloc(void *ptr, size_t size) {    void *new_ptr = realloc(ptr, size); -  if (!new_ptr) +  if (!new_ptr) { +    fprintf(stderr, "[cmark] realloc returned null pointer, aborting\n");      abort(); +  }    return new_ptr;  } | 
