From e297b8293fd947bfedb1526f7210882f0e0b870d Mon Sep 17 00:00:00 2001 From: Brian Taylor Date: Sat, 15 Aug 2026 21:59:04 -0700 Subject: [PATCH] When configuring with --disable-cider, the XCALLOC macro needs to be defined in sndprint.c. Also, strict_errorhandling needs to be set in the paranoia_parallel cider examples to make ngspice exit for a non-cider build. --- paranoia_parallel/examples/cider/.spiceinit | 2 ++ src/frontend/sndprint.c | 10 ++++++++++ 2 files changed, 12 insertions(+) create mode 100644 paranoia_parallel/examples/cider/.spiceinit diff --git a/paranoia_parallel/examples/cider/.spiceinit b/paranoia_parallel/examples/cider/.spiceinit new file mode 100644 index 000000000..b670921b7 --- /dev/null +++ b/paranoia_parallel/examples/cider/.spiceinit @@ -0,0 +1,2 @@ +set ngbehavior=mcpsa +set strict_errorhandling diff --git a/src/frontend/sndprint.c b/src/frontend/sndprint.c index 7c0d29a12..7919fef17 100644 --- a/src/frontend/sndprint.c +++ b/src/frontend/sndprint.c @@ -9,6 +9,16 @@ #if defined(HAVE_LIBSNDFILE) && defined(HAVE_LIBSAMPLERATE) #include +#ifndef XCALLOC +#define XCALLOC(ptr, type, number) \ + do { \ + if ((number) && (ptr = (type *)calloc((size_t)(number), sizeof(type))) == NULL) { \ + fprintf(stderr, "Out of Memory\n"); \ + controlled_exit(1); \ + } \ + } while(0) +#endif + static int o_samplerate = 48000; static int o_sndfmt = (SF_FORMAT_WAV | SF_FORMAT_PCM_24); static float o_mult = 1.0;