diff options
author | Raymond Lu <songyulu@hdfgroup.org> | 2008-07-21 16:50:22 (GMT) |
---|---|---|
committer | Raymond Lu <songyulu@hdfgroup.org> | 2008-07-21 16:50:22 (GMT) |
commit | e7037ad07213833582cf066b05f6dbf52c626ce6 (patch) | |
tree | 3938c5b0cbc343bbd4dad0f88c9d66ae971ad7fa /src/H5A.c | |
parent | 60957dc6cfa069aa2809732479e004b7813a2054 (diff) | |
download | hdf5-e7037ad07213833582cf066b05f6dbf52c626ce6.zip hdf5-e7037ad07213833582cf066b05f6dbf52c626ce6.tar.gz hdf5-e7037ad07213833582cf066b05f6dbf52c626ce6.tar.bz2 |
[svn-r15390] Last round of checkin introduced a bug. This checkin corrected it and made a few minor
changes.
Last round of check in fixed the problem when an attribute was opened twice and data was
written with one of the handles, the file didn't have the data. It happened because each
handle had its own object structure, and the empty one overwrote the data with fill value.
This is fixed by making some attribute information like the data be shared in the
attribute structure.
Tested on smirom, kagiso, and linew.
Diffstat (limited to 'src/H5A.c')
-rw-r--r-- | src/H5A.c | 4 |
1 files changed, 1 insertions, 3 deletions
@@ -2417,14 +2417,12 @@ done: herr_t H5A_close(H5A_t *attr) { - H5O_t *oh = NULL; /* Pointer to attr's object header */ - unsigned free_failed = FALSE; herr_t ret_value = SUCCEED; /* Return value */ FUNC_ENTER_NOAPI(H5A_close, FAIL) HDassert(attr); - HDassert(attr->shared>0); + HDassert(attr->shared); /* Close the object's symbol-table entry */ if(attr->obj_opened && (H5O_close(&(attr->shared->oloc)) < 0)) |