From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from localhost (fantadrom.bsd.lv [local]); by fantadrom.bsd.lv (OpenSMTPD) with ESMTPA id ce369ef6; for ; Tue, 17 Mar 2015 08:36:22 -0500 (EST) Date: Tue, 17 Mar 2015 08:36:22 -0500 (EST) Message-Id: <7371866130028581638.enqueue@fantadrom.bsd.lv> X-Mailinglist: mdocml-source Reply-To: source@mdocml.bsd.lv MIME-Version: 1.0 From: schwarze@mdocml.bsd.lv To: source@mdocml.bsd.lv Subject: mdocml: Simplify: Now that rc is global anyway, no need to pass it X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Log Message: ----------- Simplify: Now that rc is global anyway, no need to pass it around as an argument. No functional change. Modified Files: -------------- mdocml: main.c Revision Data ------------- Index: main.c =================================================================== RCS file: /home/cvs/mdocml/mdocml/main.c,v retrieving revision 1.226 retrieving revision 1.227 diff -Lmain.c -Lmain.c -u -p -r1.226 -r1.227 --- main.c +++ main.c @@ -101,9 +101,8 @@ int mandocdb(int, char**); static int moptions(int *, char *); static void mmsg(enum mandocerr, enum mandoclevel, const char *, int, int, const char *); -static void parse(struct curparse *, int, - const char *, enum mandoclevel *); -static enum mandoclevel passthrough(const char *, int, int); +static void parse(struct curparse *, int, const char *); +static void passthrough(const char *, int, int); static pid_t spawn_pager(void); static int toptions(struct curparse *, char *); static void usage(enum argmode) __attribute__((noreturn)); @@ -423,7 +422,7 @@ main(int argc, char *argv[]) if (argc < 1) { if (pager_pid == 1 && isatty(STDOUT_FILENO)) pager_pid = spawn_pager(); - parse(&curp, STDIN_FILENO, "", &rc); + parse(&curp, STDIN_FILENO, ""); } while (argc > 0) { @@ -437,17 +436,13 @@ main(int argc, char *argv[]) pager_pid = spawn_pager(); if (resp == NULL) - parse(&curp, fd, *argv, &rc); + parse(&curp, fd, *argv); else if (resp->form & FORM_SRC) { /* For .so only; ignore failure. */ chdir(paths.paths[resp->ipath]); - parse(&curp, fd, resp->file, &rc); - } else { - rctmp = passthrough(resp->file, fd, - synopsis_only); - if (rc < rctmp) - rc = rctmp; - } + parse(&curp, fd, resp->file); + } else + passthrough(resp->file, fd, synopsis_only); rctmp = mparse_wait(curp.mp); if (rc < rctmp) @@ -632,10 +627,9 @@ fs_search(const struct mansearch *cfg, c } static void -parse(struct curparse *curp, int fd, const char *file, - enum mandoclevel *level) +parse(struct curparse *curp, int fd, const char *file) { - enum mandoclevel rc; + enum mandoclevel rctmp; struct mdoc *mdoc; struct man *man; @@ -644,15 +638,17 @@ parse(struct curparse *curp, int fd, con assert(file); assert(fd >= -1); - rc = mparse_readfd(curp->mp, fd, file); + rctmp = mparse_readfd(curp->mp, fd, file); + if (rc < rctmp) + rc = rctmp; /* * With -Wstop and warnings or errors of at least the requested * level, do not produce output. */ - if (MANDOCLEVEL_OK != rc && curp->wstop) - goto cleanup; + if (rctmp != MANDOCLEVEL_OK && curp->wstop) + return; /* If unset, allocate output dev now (if applicable). */ @@ -730,13 +726,9 @@ parse(struct curparse *curp, int fd, con (*curp->outman)(curp->outdata, man); if (mdoc && curp->outmdoc) (*curp->outmdoc)(curp->outdata, mdoc); - -cleanup: - if (*level < rc) - *level = rc; } -static enum mandoclevel +static void passthrough(const char *file, int fd, int synopsis_only) { const char synb[] = "S\bSY\bYN\bNO\bOP\bPS\bSI\bIS\bS"; @@ -794,12 +786,13 @@ passthrough(const char *file, int fd, in done: fclose(stream); - return(MANDOCLEVEL_OK); + return; fail: fprintf(stderr, "%s: %s: SYSERR: %s: %s", progname, file, syscall, strerror(errno)); - return(MANDOCLEVEL_SYSERR); + if (rc < MANDOCLEVEL_SYSERR) + rc = MANDOCLEVEL_SYSERR; } static int @@ -947,7 +940,7 @@ static void handle_sigpipe(int signum) { - exit(rc); + exit((int)rc); } static pid_t -- To unsubscribe send an email to source+unsubscribe@mdocml.bsd.lv