view src/msvc-of-miscellaneous-1.patch @ 5579:2734b3818171

Avoid double-free with librsb (bug #58957). * src/librsb.mk: Add work-around to avoid double-free (provided by Michele Martone). * src/mingw-of-sparsersb-1-no-render.patch: Remove patch. * dist-files.mk: Remove file from list.
author Markus Mützel <markus.muetzel@gmx.de>
date Mon, 02 Nov 2020 08:55:18 +0100
parents b799b3f81a1e
children
line wrap: on
line source

diff -ur miscellaneous-1.0.11-orig/src/partarray.cc miscellaneous-1.0.11/src/partarray.cc
--- miscellaneous-1.0.11-orig/src/partarray.cc	2011-02-25 08:33:33 +0000
+++ miscellaneous-1.0.11/src/partarray.cc	2011-08-28 21:37:56 +0100
@@ -18,6 +18,7 @@
 */
 
 #include <octave/oct.h>
+#include <octave/oct-locbuf.h>
 #include <octave/ov-struct.h>
 
 template<class NDA>
@@ -43,7 +44,8 @@
   Array<int> nidx (dim_vector (maxdims, 1));
   // Octave-3.2.4 reports "missing symbol" with Array<Array< > >,
   // though 3.3.54+ does not
-  Array<octave_idx_type> bidc [maxdims], eidc [maxdims];
+  OCTAVE_LOCAL_BUFFER (Array<octave_idx_type>, bidc, maxdims);
+  OCTAVE_LOCAL_BUFFER (Array<octave_idx_type>, eidc, maxdims);
   //
   Array<octave_idx_type> step (dim_vector (maxdims, 1));
   step(0) = 1;