summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorbmribler <39579120+bmribler@users.noreply.github.com>2021-02-19 19:01:44 (GMT)
committerGitHub <noreply@github.com>2021-02-19 19:01:44 (GMT)
commit99669024ff93df3ade5b8a1e6eee8bef6df57161 (patch)
tree0262c13578a938db102b409a2d9f3b2305a3e15a /src
parent5f015f474250cb632890e3ddc8d12461c0e2a476 (diff)
downloadhdf5-99669024ff93df3ade5b8a1e6eee8bef6df57161.zip
hdf5-99669024ff93df3ade5b8a1e6eee8bef6df57161.tar.gz
hdf5-99669024ff93df3ade5b8a1e6eee8bef6df57161.tar.bz2
Fixed HDFFV-11150 (#356)
Description Replaced an HDassert with a check for null pointer in H5O_dec_rc() to catch null pointer in corrupted data situation. As a result, removed the null check prior to H5O_dec_rc() calls. Platforms tested: Linux/64 (jelly)
Diffstat (limited to 'src')
-rw-r--r--src/H5Ochunk.c4
-rw-r--r--src/H5Oint.c3
2 files changed, 4 insertions, 3 deletions
diff --git a/src/H5Ochunk.c b/src/H5Ochunk.c
index 66e11c8..eadbb19 100644
--- a/src/H5Ochunk.c
+++ b/src/H5Ochunk.c
@@ -412,12 +412,12 @@ H5O__chunk_dest(H5O_chunk_proxy_t *chk_proxy)
HDassert(chk_proxy);
/* Decrement reference count of object header */
- if (chk_proxy->oh && H5O__dec_rc(chk_proxy->oh) < 0)
+ if (H5O__dec_rc(chk_proxy->oh) < 0)
HGOTO_ERROR(H5E_OHDR, H5E_CANTDEC, FAIL, "can't decrement reference count on object header")
+done:
/* Release the chunk proxy object */
chk_proxy = H5FL_FREE(H5O_chunk_proxy_t, chk_proxy);
-done:
FUNC_LEAVE_NOAPI(ret_value)
} /* H5O__chunk_dest() */
diff --git a/src/H5Oint.c b/src/H5Oint.c
index 44148e6..5fa9c6a 100644
--- a/src/H5Oint.c
+++ b/src/H5Oint.c
@@ -2923,7 +2923,8 @@ H5O__dec_rc(H5O_t *oh)
FUNC_ENTER_PACKAGE
/* check args */
- HDassert(oh);
+ if (!oh)
+ HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "invalid object header")
/* Decrement reference count */
oh->rc--;