summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/H5Distore.c4
-rw-r--r--src/H5Fistore.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/src/H5Distore.c b/src/H5Distore.c
index 772b763..54c6041 100644
--- a/src/H5Distore.c
+++ b/src/H5Distore.c
@@ -1421,7 +1421,6 @@ H5F_istore_lock(H5F_t *f, const H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_id, con
udata.mesg = *layout;
udata.addr = HADDR_UNDEF;
status = H5B_find (f, dxpl_id, H5B_ISTORE, layout->addr, &udata);
- H5E_clear(NULL);
if (status>=0 && H5F_addr_defined(udata.addr)) {
size_t chunk_alloc=0; /*allocated chunk size */
@@ -1444,6 +1443,9 @@ H5F_istore_lock(H5F_t *f, const H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_id, con
} else {
H5D_fill_value_t fill_status;
+ /* Clear the error stack from not finding the chunk on disk */
+ H5E_clear(NULL);
+
/* Chunk size on disk isn't [likely] the same size as the final chunk
* size in memory, so allocate memory big enough. */
if (NULL==(chunk = H5MM_malloc (chunk_size)))
diff --git a/src/H5Fistore.c b/src/H5Fistore.c
index 772b763..54c6041 100644
--- a/src/H5Fistore.c
+++ b/src/H5Fistore.c
@@ -1421,7 +1421,6 @@ H5F_istore_lock(H5F_t *f, const H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_id, con
udata.mesg = *layout;
udata.addr = HADDR_UNDEF;
status = H5B_find (f, dxpl_id, H5B_ISTORE, layout->addr, &udata);
- H5E_clear(NULL);
if (status>=0 && H5F_addr_defined(udata.addr)) {
size_t chunk_alloc=0; /*allocated chunk size */
@@ -1444,6 +1443,9 @@ H5F_istore_lock(H5F_t *f, const H5D_dxpl_cache_t *dxpl_cache, hid_t dxpl_id, con
} else {
H5D_fill_value_t fill_status;
+ /* Clear the error stack from not finding the chunk on disk */
+ H5E_clear(NULL);
+
/* Chunk size on disk isn't [likely] the same size as the final chunk
* size in memory, so allocate memory big enough. */
if (NULL==(chunk = H5MM_malloc (chunk_size)))