diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2007-08-14 18:41:40 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2007-08-14 18:41:40 (GMT) |
commit | 92bdaa7d0f11564a523a86b6cb170d43842ff6ef (patch) | |
tree | 69c0d005493bf60057534f2618b85de39eac4133 /src/H5FScache.c | |
parent | 665366d499eb7831d90655c704507c4920313361 (diff) | |
download | hdf5-92bdaa7d0f11564a523a86b6cb170d43842ff6ef.zip hdf5-92bdaa7d0f11564a523a86b6cb170d43842ff6ef.tar.gz hdf5-92bdaa7d0f11564a523a86b6cb170d43842ff6ef.tar.bz2 |
[svn-r14086] Description:
Correct error in metadata cache entry logic for free space objects, where
a free space header could unpin its entry in the cache, even when the sections
for that free space manager were still in the cache and technically holding the
header pinned. Fix problem by checking for the section info in the cache
before allowing the header to unpin its cache entry.
Tested on:
FreeBSD/32 6.2 (duty)
Mac OS X/32 10.4.10 (amazon)
Linux/32 2.6 (chicago)
Linux/64 2.6 (chicago2)
Diffstat (limited to 'src/H5FScache.c')
-rw-r--r-- | src/H5FScache.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/H5FScache.c b/src/H5FScache.c index 700f026..74a9aab 100644 --- a/src/H5FScache.c +++ b/src/H5FScache.c @@ -869,6 +869,8 @@ HDfprintf(stderr, "%s: Flushing free space header, addr = %a, destroy = %u\n", F HDassert(f); HDassert(H5F_addr_defined(addr)); HDassert(sinfo); + HDassert(sinfo->fspace); + HDassert(sinfo->fspace->sect_cls); if(sinfo->cache_info.is_dirty) { H5FS_iter_ud_t udata; /* User data for callbacks */ |