Mercurial > octave-nkf
diff src/mex.cc @ 12367:4f4eb7da82d5 release-3-4-x
mex.cc (mxArray_octave_value::dup): if value can't be converted to mxArray object, create a clone of the mxArray_octave_value container
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 03 Feb 2011 01:40:00 -0500 |
parents | 9ea6f69259d7 |
children | c40528d06c92 |
line wrap: on
line diff
--- a/src/mex.cc Thu Feb 03 01:04:41 2011 -0500 +++ b/src/mex.cc Thu Feb 03 01:40:00 2011 -0500 @@ -327,7 +327,13 @@ : mxArray_base (), val (ov), mutate_flag (false), id (mxUNKNOWN_CLASS), class_name (0), ndims (-1), dims (0) { } - mxArray *dup (void) const { return val.as_mxArray (); } + mxArray *dup (void) const + { + mxArray *retval = val.as_mxArray (); + + if (! retval) + retval = new mxArray_octave_value (*this); + } ~mxArray_octave_value (void) {