]> git.cameronkatri.com Git - mandoc.git/commitdiff
avoid repetitive code for asprintf error handling
authorIngo Schwarze <schwarze@openbsd.org>
Sun, 23 Mar 2014 12:11:18 +0000 (12:11 +0000)
committerIngo Schwarze <schwarze@openbsd.org>
Sun, 23 Mar 2014 12:11:18 +0000 (12:11 +0000)
mandocdb.c
mansearch.c
mdoc.c
mdoc_validate.c
roff.c

index 70c66e4071c798818cb0876a83a823d07204566a..50614d3d391a785482ffb8e9d3c10c2d90faa8a8 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: mandocdb.c,v 1.119 2014/03/23 11:25:26 schwarze Exp $ */
+/*     $Id: mandocdb.c,v 1.120 2014/03/23 12:11:18 schwarze Exp $ */
 /*
  * Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -1536,10 +1536,7 @@ parse_mdoc_Xr(struct mpage *mpage, const struct mdoc_node *n)
                return(0);
        }
 
-       if (-1 == asprintf(&cp, "%s(%s)", n->string, n->next->string)) {
-               perror(NULL);
-               exit((int)MANDOCLEVEL_SYSERR);
-       }
+       mandoc_asprintf(&cp, "%s(%s)", n->string, n->next->string);
        putkey(mpage, cp, TYPE_Xr);
        free(cp);
        return(0);
index d53cc2a67000c68dc47db0e16b2b33d11bdbcd53..2fb196c9c5d7cd4c5a4b7cbffe81d38ea31404f6 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: mansearch.c,v 1.23 2014/03/23 11:25:26 schwarze Exp $ */
+/*     $Id: mansearch.c,v 1.24 2014/03/23 12:11:18 schwarze Exp $ */
 /*
  * Copyright (c) 2012 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2013, 2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -338,11 +338,8 @@ buildnames(struct manpage *mpage, sqlite3 *db, sqlite3_stmt *s,
                    (strcmp(sec, prevsec) ||
                     strcmp(arch, prevarch))) {
                        sep2 = '\0' == *prevarch ? "" : "/";
-                       if (-1 == asprintf(&newnames, "%s(%s%s%s)",
-                           oldnames, prevsec, sep2, prevarch)) {
-                               perror(0);
-                               exit((int)MANDOCLEVEL_SYSERR);
-                       }
+                       mandoc_asprintf(&newnames, "%s(%s%s%s)",
+                           oldnames, prevsec, sep2, prevarch);
                        free(mpage->names);
                        oldnames = mpage->names = newnames;
                        free(prevsec);
@@ -359,11 +356,8 @@ buildnames(struct manpage *mpage, sqlite3 *db, sqlite3_stmt *s,
 
                /* Append the new name. */
 
-               if (-1 == asprintf(&newnames, "%s%s%s",
-                   oldnames, sep1, name)) {
-                       perror(0);
-                       exit((int)MANDOCLEVEL_SYSERR);
-               }
+               mandoc_asprintf(&newnames, "%s%s%s",
+                   oldnames, sep1, name);
                free(mpage->names);
                mpage->names = newnames;
 
@@ -380,11 +374,8 @@ buildnames(struct manpage *mpage, sqlite3 *db, sqlite3_stmt *s,
                        fsec = "0";
                }
                sep2 = '\0' == *arch ? "" : "/";
-               if (-1 == asprintf(&mpage->file, "%s/%s%s%s%s/%s.%s",
-                   path, sep1, sec, sep2, arch, name, fsec)) {
-                       perror(0);
-                       exit((int)MANDOCLEVEL_SYSERR);
-               }
+               mandoc_asprintf(&mpage->file, "%s/%s%s%s%s/%s.%s",
+                   path, sep1, sec, sep2, arch, name, fsec);
        }
        if (SQLITE_DONE != c)
                fprintf(stderr, "%s\n", sqlite3_errmsg(db));
@@ -394,11 +385,8 @@ buildnames(struct manpage *mpage, sqlite3 *db, sqlite3_stmt *s,
 
        if (NULL != prevsec) {
                sep2 = '\0' == *prevarch ? "" : "/";
-               if (-1 == asprintf(&newnames, "%s(%s%s%s)",
-                   mpage->names, prevsec, sep2, prevarch)) {
-                       perror(0);
-                       exit((int)MANDOCLEVEL_SYSERR);
-               }
+               mandoc_asprintf(&newnames, "%s(%s%s%s)",
+                   mpage->names, prevsec, sep2, prevarch);
                free(mpage->names);
                mpage->names = newnames;
                free(prevsec);
@@ -427,11 +415,8 @@ buildoutput(sqlite3 *db, sqlite3_stmt *s, uint64_t id, uint64_t outbit)
                        sep1 = " # ";
                }
                data = sqlite3_column_text(s, 1);
-               if (-1 == asprintf(&newoutput, "%s%s%s",
-                   oldoutput, sep1, data)) {
-                       perror(0);
-                       exit((int)MANDOCLEVEL_SYSERR);
-               }
+               mandoc_asprintf(&newoutput, "%s%s%s",
+                   oldoutput, sep1, data);
                free(output);
                output = newoutput;
        }
@@ -603,10 +588,7 @@ exprspec(struct expr *cur, uint64_t key, const char *value,
        if (NULL == value)
                return(cur);
 
-       if (-1 == asprintf(&cp, format, value)) {
-               perror(0);
-               exit((int)MANDOCLEVEL_SYSERR);
-       }
+       mandoc_asprintf(&cp, format, value);
        cur->next = mandoc_calloc(1, sizeof(struct expr));
        cur = cur->next;
        cur->and = 1;
diff --git a/mdoc.c b/mdoc.c
index 612f259aba338c623c46bcb2b071a83b670b8204..1d00b03c29ca25c8c13ed6180dfd8b21cb2c99a2 100644 (file)
--- a/mdoc.c
+++ b/mdoc.c
@@ -1,4 +1,4 @@
-/*     $Id: mdoc.c,v 1.209 2014/03/23 11:25:26 schwarze Exp $ */
+/*     $Id: mdoc.c,v 1.210 2014/03/23 12:11:18 schwarze Exp $ */
 /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2010, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -594,10 +594,7 @@ mdoc_word_append(struct mdoc *mdoc, const char *p)
 
        n = mdoc->last;
        addstr = roff_strdup(mdoc->roff, p);
-       if (-1 == asprintf(&newstr, "%s %s", n->string, addstr)) {
-               perror(NULL);
-               exit((int)MANDOCLEVEL_SYSERR);
-       }
+       mandoc_asprintf(&newstr, "%s %s", n->string, addstr);
        free(addstr);
        free(n->string);
        n->string = newstr;
index 2e725d1cc903aaf3ac3192b771b4a0f5e1b8803f..18f51ca6f19ff45d031a6d6ee470630c16572900 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: mdoc_validate.c,v 1.203 2014/03/23 11:25:26 schwarze Exp $ */
+/*     $Id: mdoc_validate.c,v 1.204 2014/03/23 12:11:18 schwarze Exp $ */
 /*
  * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2010-2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -2395,11 +2395,9 @@ post_os(POST_ARGS)
                if (-1 == uname(&utsname)) {
                        mdoc_nmsg(mdoc, n, MANDOCERR_UNAME);
                         defbuf = mandoc_strdup("UNKNOWN");
-                } else if (-1 == asprintf(&defbuf, "%s %s",
-                   utsname.sysname, utsname.release)) {
-                       perror(NULL);
-                       exit((int)MANDOCLEVEL_SYSERR);
-               }
+                } else
+                       mandoc_asprintf(&defbuf, "%s %s",
+                           utsname.sysname, utsname.release);
        }
        mdoc->meta.os = mandoc_strdup(defbuf);
 #endif /*!OSNAME*/
diff --git a/roff.c b/roff.c
index 642355294fa9ff15e88cffb2afeac2f18a2a5648..25ce76e2caa971520fc6066d5a221095818fa169 100644 (file)
--- a/roff.c
+++ b/roff.c
@@ -1,4 +1,4 @@
-/*     $Id: roff.c,v 1.201 2014/03/23 11:25:26 schwarze Exp $ */
+/*     $Id: roff.c,v 1.202 2014/03/23 12:11:18 schwarze Exp $ */
 /*
  * Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2010-2014 Ingo Schwarze <schwarze@openbsd.org>
@@ -656,11 +656,7 @@ roff_parsetext(char **bufp, size_t *szp, int pos, int *offs)
 
        /* Spring the input line trap. */
        if (1 == roffit_lines) {
-               isz = asprintf(&p, "%s\n.%s", *bufp, roffit_macro);
-               if (-1 == isz) {
-                       perror(NULL);
-                       exit((int)MANDOCLEVEL_SYSERR);
-               }
+               isz = mandoc_asprintf(&p, "%s\n.%s", *bufp, roffit_macro);
                free(*bufp);
                *bufp = p;
                *szp = isz + 1;