From 47d7f7aa623538c9ea05a7a9215cfed8613c91e7 Mon Sep 17 00:00:00 2001 From: Brian Taylor Date: Sun, 18 May 2025 08:36:34 -0700 Subject: [PATCH] Allocating arrays of double* should use sizeof double* not double, even though they may be the same. Avoid potential divide by zero. --- src/maths/ni/nipzmeth.c | 2 +- src/xspice/icm/analog/s_xfer/cfunc.mod | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/maths/ni/nipzmeth.c b/src/maths/ni/nipzmeth.c index ee6d75a0d..dda44d7a2 100644 --- a/src/maths/ni/nipzmeth.c +++ b/src/maths/ni/nipzmeth.c @@ -56,7 +56,7 @@ NIpzMuller(PZtrial **set, PZtrial *newtry) } } - magx = total / j; + magx = (j != 0) ? (total / j) : total; if (magx < min) magx = min; diff --git a/src/xspice/icm/analog/s_xfer/cfunc.mod b/src/xspice/icm/analog/s_xfer/cfunc.mod index 939d8635a..4844312d7 100644 --- a/src/xspice/icm/analog/s_xfer/cfunc.mod +++ b/src/xspice/icm/analog/s_xfer/cfunc.mod @@ -341,8 +341,8 @@ void cm_s_xfer(ARGS) /* structure holding parms, inputs, outputs, etc. */ /* Set den_coefficient & gain pointers to ITP values */ /* for denominator coefficients & gain... */ - old_den_coefficient = (double **) calloc((size_t) den_size, sizeof(double)); - den_coefficient = (double **) calloc((size_t) den_size, sizeof(double)); + old_den_coefficient = (double **) calloc((size_t) den_size, sizeof(double *)); + den_coefficient = (double **) calloc((size_t) den_size, sizeof(double *)); for(i=den_size;i<2*den_size;i++){ old_den_coefficient[i-den_size] = (double *) cm_analog_get_ptr(i,1); @@ -350,8 +350,8 @@ void cm_s_xfer(ARGS) /* structure holding parms, inputs, outputs, etc. */ *(den_coefficient[i-den_size]) = *(old_den_coefficient[i-den_size]); } - num_coefficient = (double **) calloc((size_t) num_size, sizeof(double)); - old_num_coefficient = (double **) calloc((size_t) num_size, sizeof(double)); + num_coefficient = (double **) calloc((size_t) num_size, sizeof(double *)); + old_num_coefficient = (double **) calloc((size_t) num_size, sizeof(double *)); for(i=2*den_size;i<2*den_size+num_size;i++){ old_num_coefficient[i-2*den_size] = (double *) cm_analog_get_ptr(i,1);