Browse Source

src/tclspice.c, bug fix, broken trimming of the "spice::" namespace

Due to a missing break in the for(;;) loop,
  causing the loop to walk beyond end of string argv[0],
  causing random behaviour.
pre-master-46
Fabio Rossi 9 years ago
committed by rlar
parent
commit
4c503c1e47
  1. 7
      src/tclspice.c

7
src/tclspice.c

@ -828,10 +828,9 @@ _tcl_dispatch TCL_CMDPROCARGS(clientData, interp, argc, argv)
int i;
NG_IGNORE(clientData);
save_interp();
/* Looks backwards through the first command and strips the :: part */
for (i = strlen(argv[0])-1; i > 0; i--)
if (argv[0][i] == *":")
argv[0] += i + 1;
char *prefix = strstr(argv[0], "spice::");
if (prefix)
argv[0] = prefix + 7;
return _run(argc, (char **)argv);
}

Loading…
Cancel
Save