In the ngspice shared library the fcn ivers is called
with a NULL argument. The fix safeguards against argv0 being NULL. In this case Spice_Exec_Path is set to NULL, it is safeguarded against NULL when being used.
This commit is contained in:
parent
b68f2617c7
commit
2e2b74c188
|
|
@ -105,19 +105,23 @@ ivars(char *argv0)
|
|||
AsciiRawFile = atoi(temp);
|
||||
|
||||
/* path of the ngspice executable */
|
||||
Spice_Exec_Path = copy(argv0);
|
||||
/* find the last occurence of "ngspice" in Spice_Exec_Path */
|
||||
char* path_end = strstr(Spice_Exec_Path, "ngspice");
|
||||
if (path_end) {
|
||||
char* exec_only = strstr(path_end + 7, "ngspice");
|
||||
while (exec_only) {
|
||||
path_end = strstr(exec_only, "ngspice");
|
||||
if (argv0) {
|
||||
Spice_Exec_Path = copy(argv0);
|
||||
/* find the last occurence of "ngspice" in Spice_Exec_Path */
|
||||
char* path_end = strstr(Spice_Exec_Path, "ngspice");
|
||||
if (path_end) {
|
||||
char* exec_only = strstr(path_end + 7, "ngspice");
|
||||
while (exec_only) {
|
||||
path_end = strstr(exec_only, "ngspice");
|
||||
if (path_end)
|
||||
exec_only = strstr(path_end + 7, "ngspice");
|
||||
}
|
||||
if (path_end)
|
||||
exec_only = strstr(path_end + 7, "ngspice");
|
||||
*path_end = '\0';
|
||||
}
|
||||
if (path_end)
|
||||
*path_end = '\0';
|
||||
}
|
||||
else
|
||||
Spice_Exec_Path = NULL;
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
Loading…
Reference in New Issue