--- ray/src/cv/mgflib/mgfilt.c 1994/06/21 14:45:45 1.1 +++ ray/src/cv/mgflib/mgfilt.c 1995/02/11 09:54:29 1.2 @@ -1,4 +1,4 @@ -/* Copyright (c) 1994 Regents of the University of California */ +/* Copyright (c) 1995 Regents of the University of California */ #ifndef lint static char SCCSid[] = "$SunId$ LBL"; @@ -25,22 +25,38 @@ register char **av; } -main(argc, argv) /* arguments are understood entities */ +main(argc, argv) /* first argument is understood entities, comma-sep. */ int argc; -char **argv; +char *argv[]; { + char *cp1, *cp2; int i, en; - for (i = 1; i < argc; i++) { - en = mg_entity(argv[i]); + if (argc < 2) { + fprintf(stderr, "Usage: %s entity,list [file ..]\n", argv[0]); + exit(1); + } + for (cp1 = cp2 = argv[1]; *cp1; cp1 = cp2) { + while (*cp2) { + if (*cp2 == ',') { + *cp2++ = '\0'; + break; + } + cp2++; + } + en = mg_entity(cp1); if (en < 0) { fprintf(stderr, "%s: %s: no such entity\n", - argv[0], argv[i]); + argv[0], cp1); exit(1); } mg_ehand[en] = put_entity; } mg_init(); - en = mg_load((char *)NULL); - exit(en != MG_OK); + if (argc < 3) + exit(mg_load((char *)NULL) != MG_OK); + for (i = 2; i < argc; i++) + if (mg_load(argv[i]) != MG_OK) + exit(1); + exit(0); }