From d1309a8a47a49d544ccee74a15146729577cef16 Mon Sep 17 00:00:00 2001 From: stefan schippers Date: Sun, 15 Oct 2023 13:24:19 +0200 Subject: [PATCH] fix uninitialized var in interpolate_yval() --- src/scheduler.c | 24 +++++++++++++++++------- src/token.c | 2 +- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/scheduler.c b/src/scheduler.c index adf4bb34..ba2a4716 100644 --- a/src/scheduler.c +++ b/src/scheduler.c @@ -4526,14 +4526,24 @@ int xschem(ClientData clientdata, Tcl_Interp *interp, int argc, const char * arg /* test * testmode */ - else if(!strcmp(argv[1], "test")) + else if(0 && !strcmp(argv[1], "test")) { - /* - * if(argc > 3) { - * char *r = my_strcasestr(argv[2], argv[3]); - * dbg(0, "%s\n", r ? r : "NULL"); - * } - */ + static int swap = 0; + static Raw *saveraw = NULL; + if(!xctx) {Tcl_SetResult(interp, not_avail, TCL_STATIC); return TCL_ERROR;} + if(swap == 0) { + saveraw = xctx->raw; + swap = 1; + xctx->raw = NULL; + raw_read("/home/schippes/.xschem/simulations/cmos_example_ngspice2.raw", &xctx->raw, "dc"); + draw(); + } else { + free_rawfile(&xctx->raw, 0); + swap = 0; + xctx->raw = saveraw; + draw(); + } + Tcl_ResetResult(interp); } diff --git a/src/token.c b/src/token.c index f8d755f9..9a6cc284 100644 --- a/src/token.c +++ b/src/token.c @@ -3387,7 +3387,7 @@ static double interpolate_yval(int idx) if((xctx->raw->allpoints > 1) && xctx->raw->annot_sweep_idx >= 0) { Raw *raw = xctx->raw; int dset; - int npoints; + int npoints = 0; SPICE_DATA *sweep_gv = raw->values[raw->annot_sweep_idx]; SPICE_DATA *gv = raw->values[idx]; for(dset = 0 ; dset < raw->datasets; dset++) {