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 19b47113; for ; Sat, 7 Feb 2015 01:28:39 -0500 (EST) Date: Sat, 7 Feb 2015 01:28:39 -0500 (EST) Message-Id: <10375499602436286411.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: be more careful about argc == 0 X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Log Message: ----------- be more careful about argc == 0 Modified Files: -------------- mdocml: demandoc.c main.c Revision Data ------------- Index: main.c =================================================================== RCS file: /home/cvs/mdocml/mdocml/main.c,v retrieving revision 1.218 retrieving revision 1.219 diff -Lmain.c -Lmain.c -u -p -r1.218 -r1.219 --- main.c +++ main.c @@ -134,8 +134,9 @@ main(int argc, char *argv[]) int options; int c; - progname = strrchr(argv[0], '/'); - if (progname == NULL) + if (argc < 1) + progname = "mandoc"; + else if ((progname = strrchr(argv[0], '/')) == NULL) progname = argv[0]; else ++progname; @@ -287,8 +288,10 @@ main(int argc, char *argv[]) /* Parse arguments. */ - argc -= optind; - argv += optind; + if (argc > 0) { + argc -= optind; + argv += optind; + } resp = NULL; /* @@ -414,13 +417,13 @@ main(int argc, char *argv[]) if (OUTT_MAN == curp.outtype) mparse_keep(curp.mp); - if (argc == 0) { + if (argc < 1) { if (use_pager && isatty(STDOUT_FILENO)) spawn_pager(); parse(&curp, STDIN_FILENO, "", &rc); } - while (argc) { + while (argc > 0) { rctmp = mparse_open(curp.mp, &fd, resp != NULL ? resp->file : *argv); if (rc < rctmp) Index: demandoc.c =================================================================== RCS file: /home/cvs/mdocml/mdocml/demandoc.c,v retrieving revision 1.13 retrieving revision 1.14 diff -Ldemandoc.c -Ldemandoc.c -u -p -r1.13 -r1.14 --- demandoc.c +++ demandoc.c @@ -47,8 +47,9 @@ main(int argc, char *argv[]) int ch, fd, i, list; extern int optind; - progname = strrchr(argv[0], '/'); - if (progname == NULL) + if (argc < 1) + progname = "demandoc"; + else if ((progname = strrchr(argv[0], '/')) == NULL) progname = argv[0]; else ++progname; @@ -81,7 +82,7 @@ main(int argc, char *argv[]) mp = mparse_alloc(MPARSE_SO, MANDOCLEVEL_BADARG, NULL, mchars, NULL); assert(mp); - if (0 == argc) + if (argc < 1) pmandoc(mp, STDIN_FILENO, "", list); for (i = 0; i < argc; i++) { -- To unsubscribe send an email to source+unsubscribe@mdocml.bsd.lv