Jim Monte
de4788cfe5
Added conjugate function conj().
2020-03-15 08:50:55 +01:00
Jim Monte
a7946474fa
Additional freeing of device-dependent information for bug #419 and related bugs.
2020-03-15 08:50:55 +01:00
Jim Monte
d3343b1791
Removed redundant macro
2020-03-15 08:50:55 +01:00
Jim Monte
0cf53a34b2
Fixed resolution of ~ to home directory. (Bug #405 ) Also fixed potential buffer overruns in glob expansion
2020-03-15 08:50:54 +01:00
Jim Monte
ce5410d33f
Fixed checking for redirection tokens
2020-03-15 08:50:54 +01:00
Jim Monte
cec6a8edd3
Fixed access of freed memory when reporting an error.
2020-03-15 08:50:54 +01:00
Jim Monte
8141a634d7
Fixed several issues related to plotting and vector lifetimes and made ownership of vectors clearer. The issues in bugs 419, 423, 425, and 426 were related and were addressed here.
2020-03-15 08:50:54 +01:00
Jim Monte
57ffe1769f
Fixed "phantom vector" issue with plots and crash when plots are resized. See bugs #419 and #423 for details. Also several parameters were changed from char * to const char * in the plotting functions.
2020-03-15 08:50:54 +01:00
Jim Monte
9d2c105942
Fixed bug with 255 card deck entered using circbyline
2020-03-15 08:50:54 +01:00
Jim Monte
e1ec2a21dd
Added error recovery when invalid foreach statement found
2020-03-15 08:50:54 +01:00
Jim Monte
690b7730fe
Fixed memory leak when empty word found.
2020-03-15 08:50:54 +01:00
Jim Monte
b120e7bd21
Fixed reporting of system information in Windows.
2020-03-15 08:50:53 +01:00
Jim Monte
271afc87cf
Made UI more consistent when comments are entered.
2020-03-15 08:50:53 +01:00
Jim Monte
2df00ad8c9
Cleaned up defintions of macro constants
2020-03-15 08:50:53 +01:00
Jim Monte
2f3b9d0f2d
Used Win32 function PathIsRelativeA() to identify an absolute path instead of checking the string since the system function may handle more cases (network shares, etc.). Also reviewed formatting that was done on inpcom.c by a code beautifier in an earlier commit. Nearly all of it was an improvement, but a few cases were reverted back to closer to the original form. One particular instance was comments where a list of steps was given one per line.
2020-03-15 08:50:53 +01:00
Jim Monte
70600258bb
Made checking for single-character words faster. The testing now also uses less memory and works for 8-bit characters, which would have previously caused buffer overruns. It is also more modular and has additional documentation.
2020-03-15 08:50:53 +01:00
Jim Monte
92725594f3
Used the new capabilities of ft_numparse() to allow the creation of variables and list items of type CP_NUM
2020-03-15 08:50:53 +01:00
Jim Monte
ad970ae4e7
Made cp_enqvar() mode modular by adding a separate function to handle the case of a vector. Lists are more efficiently handled by moving common comparisons out of the loop over elements. The first argument of cp_enqvar() is changed from char * to const char * since the name of the variable being found is not altered by the function.
2020-03-15 08:50:53 +01:00
Jim Monte
72801b1ab1
Fixed buffer resizing, made string utilities more modular, and added several new utilities, some which do not require a null termination, potentially avoiding the need to copy a string. Also some substring utilities using the Rabin-Karp algorithm were added.
2020-03-15 08:50:52 +01:00
Jim Monte
f7951af50b
Fixed locating vectors like V(node)
2020-03-15 08:50:52 +01:00
Jim Monte
81fa829b7d
Fixed potential infinite loop (until memory is exhausted) and added several utility functions for processing strings.
2020-03-15 08:50:52 +01:00
Jim Monte
068df274bf
Made ft_numparse() thread-safe (no internal static variables) and prepared to support ngspice variable type CP_NUM.
2020-03-15 08:50:52 +01:00
Holger Vogt
89411e2fe4
Fixed merge conflict. Also made readifile() static and removed an unnecessary string duplication there.
2020-03-15 08:50:52 +01:00
Jim Monte
873e4a8db0
Added no_histsubst option and related fixes
2020-03-15 08:50:52 +01:00
Jim Monte
4bd4a6e9be
Fixed usage of new dstring functions. Also added const to some parameters that did not change.
2020-03-15 08:50:52 +01:00
Jim Monte
75d233c40d
If the prompt variable was set to a value that is not a string, memory that has been freed would be used when displaying the command prompt. This could lead to strange prompts and possible access violations, although it may appear to work OK if the freed memory has not been modified. This issue is fixed. Some useless duplications of strings when defining variables are also removed.
2020-03-15 08:50:51 +01:00
Jim Monte
b677ae1611
The check for the scale vector was not comparing the name in a case-insensitive manner, so unlet Yes would delete the default yes scale vector, for example. That issue was corrected. The code was also made more modular and descriptive regarding the check for the scale vector. Also, the warning now prints the scale vector as it is stored to make clear that vector names are not case sensitive.
2020-03-15 08:50:51 +01:00
Jim Monte
b7d8c61cd9
Cleaned up code to locate a vector in a plot by name. The code was made more modular, and special names like allv are handled more efficiently
2020-03-15 08:50:51 +01:00
Jim Monte
c7b95587de
Fixed compiler warnings regarding type of argument passed
2020-03-15 08:50:51 +01:00
Jim Monte
c368f32039
Added a macro R_MIN to define the minimum resistance value aS 0.01 and replaced the numeric value with the macro in the sourc code.
2020-03-15 08:50:51 +01:00
Jim Monte
89efe5aeae
Dynamic string (dstring) rework
2020-03-15 08:50:51 +01:00
Holger Vogt
9452121954
Remove memory leaks in cmpp.
...
Two small ones (a few bytes) are still there, difficult to assess.
2020-03-15 08:50:51 +01:00
Holger Vogt
29b2799c22
plug a memory leak by CALLBACK,
...
deleting locally malloced memory
2020-03-15 08:50:51 +01:00
Holger Vogt
e89a92f944
prevent referencing a NULL pointer
...
free the loc pointer and NULL its origin STATIC_VAR (locdata)
(that translates to mif_private->inst_var[0]->element[0].pvalue)
2020-03-15 08:50:51 +01:00
Holger Vogt
707936efe3
enable setting a variable from an input file
...
using the existing i/o redirection
2020-03-15 08:50:50 +01:00
Holger Vogt
05f02f3662
On Linux: allow calling gnuplot without invoking a terminal.
...
Reported by Terry Pilling
2020-03-15 08:50:50 +01:00
Holger Vogt
9238c0f9d4
prevent crash if 0 length vector is assessed
2019-11-30 11:43:29 +01:00
Holger Vogt
ac65968595
allow 'dc TEMP 10 20 1' as well as 'dc temp 10 20 1'
2019-11-30 11:43:12 +01:00
Holger Vogt
ee5f4cfc29
Replace B source pwl by XSPICE PWL Controlled Source
...
that has smooth rounded and differentiable corners.
This is used in the replacem,ent operation evaluating
Exxx n1 n2 TABLE {expression} = (x0, y0) (x1, y1) (x2, y2)
2019-11-30 11:42:00 +01:00
Holger Vogt
b76fbf99fe
Replace B source pwl by XSPICE PWL Controlled Source
...
that has smooth rounded and differentiable corners.
Microchip or On-Semi OpAmps that needed gmin and source
stepping for operating point calculation now converge
without, others like MCP6001 that generally refused
to converge are o.k. now. Reason is the heavily used
Gxxx n1 n2 TABLE {expression} = (x0, y0) (x1, y1) (x2, y2)
from the OpAmp models.
2019-11-30 11:39:09 +01:00
Holger Vogt
917ea99758
enable system info for Windows 10,
...
exclude function not existing in older SDKs
2019-11-30 11:38:53 +01:00
Holger Vogt
6598225ec0
Replace deprecated GetVersionExA by version helper functions
...
Add new macro _MSC_PLATFORM_TOOLSET to check for toolset
2019-11-30 11:38:25 +01:00
Holger Vogt
de9dfad0c9
remove VS 'assignment within conditional expression' warning
2019-11-30 11:38:11 +01:00
Holger Vogt
13a6e042f6
remove 'unreachable code' warning
2019-11-30 11:37:49 +01:00
Holger Vogt
dc1ee5f11f
remove 'potentially uninitialized' warning
2019-11-30 11:37:02 +01:00
Holger Vogt
ceea40e012
Revert "enable compiling with readline for macOS"
...
This reverts commit 11df2b7719 .
2019-11-30 11:36:09 +01:00
Holger Vogt
71917744a8
remove superfluous double parentheses
2019-11-30 11:35:56 +01:00
Holger Vogt
7983b0d16a
macOS: Do not use deprecated finite, but isfinite
2019-11-30 11:35:44 +01:00
Holger Vogt
fa58223204
update for Linux
2019-11-30 11:35:24 +01:00
Holger Vogt
5542729694
fix for macOS
2019-11-30 11:35:12 +01:00