summaryrefslogtreecommitdiffstats
path: root/c++/src/H5Object.cpp
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2009-10-04 02:15:24 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2009-10-04 02:15:24 (GMT)
commita83c61c53741f15e21451421d9422ac1ba306504 (patch)
tree1c1367ecba46ad95cea2f2c837cd2d03022f5b09 /c++/src/H5Object.cpp
parenteed2ea424b233c451c81569aa2df48c99bc8c79e (diff)
downloadhdf5-a83c61c53741f15e21451421d9422ac1ba306504.zip
hdf5-a83c61c53741f15e21451421d9422ac1ba306504.tar.gz
hdf5-a83c61c53741f15e21451421d9422ac1ba306504.tar.bz2
[svn-r17587] Purpose:
Fixed bugzilla #1061 Description: Added a check for NULL before accessing a pointer Also, removed a few warnings about returning values Platforms tested: Linux/32 2.6 (jam) FreeBSD/64 6.3 (liberty) SunOS 5.10 (linew)
Diffstat (limited to 'c++/src/H5Object.cpp')
-rw-r--r--c++/src/H5Object.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/c++/src/H5Object.cpp b/c++/src/H5Object.cpp
index 2d32014..2643e41 100644
--- a/c++/src/H5Object.cpp
+++ b/c++/src/H5Object.cpp
@@ -214,7 +214,7 @@ int H5Object::iterateAttrs( attr_operator_t user_op, unsigned *_idx, void *op_da
userData->object = this;
// call the C library routine H5Aiterate2 to iterate the attributes
- hsize_t idx = (hsize_t)*_idx;
+ hsize_t idx = _idx ? (hsize_t)*_idx : 0;
int ret_value = H5Aiterate2(getId(), H5_INDEX_NAME, H5_ITER_INC, &idx,
userAttrOpWrpr, (void *) userData);
@@ -223,7 +223,8 @@ int H5Object::iterateAttrs( attr_operator_t user_op, unsigned *_idx, void *op_da
if( ret_value >= 0 ) {
/* Pass back update index value to calling code */
- *_idx = (unsigned)idx;
+ if (_idx)
+ *_idx = (unsigned)idx;
return( ret_value );
}