ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/util/rmtxop.c
(Generate patch)

Comparing ray/src/util/rmtxop.c (file contents):
Revision 2.14 by greg, Mon Aug 12 02:26:46 2019 UTC vs.
Revision 2.15 by greg, Mon Aug 12 16:55:24 2019 UTC

# Line 320 | Line 320 | main(int argc, char *argv[])
320          for (i = 1; i < argc; i++) {
321                  if (argv[i][0] && !argv[i][1] &&
322                                  strchr(".+*/", argv[i][0]) != NULL) {
323 <                        if (mop[nmats].inspec == NULL || mop[nmats].binop) {
323 >                        if (!nmats || mop[nmats-1].binop) {
324                                  fprintf(stderr,
325 <                        "%s: missing matrix argument for '%c' operation\n",
325 >                        "%s: missing matrix argument before '%c' operation\n",
326                                                  argv[0], argv[i][0]);
327                                  return(1);
328                          }
329 <                        mop[nmats++].binop = argv[i][0];
329 >                        mop[nmats-1].binop = argv[i][0];
330                  } else if (argv[i][0] != '-' || !argv[i][1]) {
331                          if (argv[i][0] == '-') {
332                                  if (stdin_used++) {
# Line 391 | Line 391 | main(int argc, char *argv[])
391          }
392          if (mop[0].inspec == NULL)      /* nothing to do? */
393                  goto userr;
394 +        if (mop[nmats-1].binop) {
395 +                fprintf(stderr,
396 +                        "%s: missing matrix argument after '%c' operation\n",
397 +                                argv[0], mop[nmats-1].binop);
398 +                return(1);
399 +        }
400                                          /* favor quicker concatenation */
401          mop[nmats].mtx = prefer_right2left(mop) ? op_right2left(mop)
402                                                  : op_left2right(mop);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines