# HG changeset patch # User Gunnar Farneback # Date 1287688544 -7200 # Node ID 837b8c104dd3059315826892a95a3d14326a7ff8 # Parent 850f8d9ec27c7adc498dddef99939d6b2c098fad Stop converting single valued output from mex files to doubles. diff -r 850f8d9ec27c -r 837b8c104dd3 src/ChangeLog --- a/src/ChangeLog Thu Oct 21 21:01:35 2010 +0200 +++ b/src/ChangeLog Thu Oct 21 21:15:44 2010 +0200 @@ -1,3 +1,9 @@ +2010-10-21 Gunnar Farneback + + * mex.cc (mxArray_number::as_octave_value): Convert single + matlab array to single octave array instead of to double octave + array. + 2010-10-18 John W. Eaton * load-path.cc (load_path::do_find_first_of, diff -r 850f8d9ec27c -r 837b8c104dd3 src/mex.cc --- a/src/mex.cc Thu Oct 21 21:01:35 2010 +0200 +++ b/src/mex.cc Thu Oct 21 21:15:44 2010 +0200 @@ -1361,22 +1361,22 @@ if (pi) { - ComplexNDArray val (dv); - - Complex *ptr = val.fortran_vec (); + FloatComplexNDArray val (dv); + + FloatComplex *ptr = val.fortran_vec (); float *ppi = static_cast (pi); for (mwIndex i = 0; i < nel; i++) - ptr[i] = Complex (ppr[i], ppi[i]); + ptr[i] = FloatComplex (ppr[i], ppi[i]); retval = val; } else { - NDArray val (dv); - - double *ptr = val.fortran_vec (); + FloatNDArray val (dv); + + float *ptr = val.fortran_vec (); for (mwIndex i = 0; i < nel; i++) ptr[i] = ppr[i];