Mercurial > mxe-octave
view src/of-netcdf-1-fixes.patch @ 4064:2840415e6c1d
of-splines: update to 1.2.9
* src/of-splines.mk: update version, checksum, subdir
* build_packages.m: update splines version
author | John Donoghue |
---|---|
date | Mon, 30 Nov 2015 16:48:14 -0500 |
parents | 85abb6c3ec8b |
children |
line wrap: on
line source
diff -ur netcdf.orig/src/__netcdf__.cc netcdf/src/__netcdf__.cc --- netcdf.orig/src/__netcdf__.cc 2015-09-26 07:53:37.710240236 -0400 +++ netcdf/src/__netcdf__.cc 2015-09-26 13:58:27.115208120 -0400 @@ -551,8 +551,14 @@ check_err(nc_inq_unlimdims(ncid, &nunlimdims, NULL)); Array<int> unlimdimids = Array<int>(dim_vector(1,nunlimdims)); check_err(nc_inq_unlimdims(ncid, &nunlimdims, unlimdimids.fortran_vec())); + + Array<double> d_unlimdimids = Array<double>(dim_vector(1,nunlimdims)); + for (octave_idx_type idx=0;idx<d_unlimdimids.numel();idx++) + { + d_unlimdimids(idx) = unlimdimids(idx); + } - return octave_value(unlimdimids); + return octave_value(d_unlimdimids); } @@ -1840,7 +1846,14 @@ Array<int> varids = Array<int>(dim_vector(1,nvars)); check_err(nc_inq_varids(ncid, &nvars, varids.fortran_vec())); - return octave_value(varids); + Array<double> d_varids = Array<double>(dim_vector(1,nvars)); + for (octave_idx_type idx=0;idx<d_varids.numel();idx++) + { + d_varids(idx) = varids(idx); + } + + + return octave_value(d_varids); } DEFUN_DLD(netcdf_inqVar, args,, @@ -1996,8 +2009,14 @@ check_err(nc_inq_ndims(ncid, &ndims)); Array<int> dimids = Array<int>(dim_vector(1,ndims)); check_err(nc_inq_dimids(ncid, &ndims, dimids.fortran_vec(),include_parents)); + + Array<double> d_dimids = Array<double>(dim_vector(1,ndims)); + for (octave_idx_type idx=0;idx<d_dimids.numel();idx++) + { + d_dimids(idx) = dimids(idx); + } - return octave_value(dimids); + return octave_value(d_dimids); } @@ -2067,8 +2086,14 @@ Array<int> ncids = Array<int>(dim_vector(1,numgrps)); check_err(nc_inq_grps(ncid, NULL, ncids.fortran_vec())); - - return octave_value(ncids); + + Array<double> d_ncids = Array<double>(dim_vector(1,numgrps)); + for (octave_idx_type idx=0;idx<d_ncids.numel();idx++) + { + d_ncids(idx) = ncids(idx); + } + + return octave_value(d_ncids); } //int nc_inq_grpname(int ncid, char *name);