diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2006-08-17 15:43:10 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2006-08-17 15:43:10 (GMT) |
commit | 7fd5028f7ccfa34bec0e46c21113dbc664c4b850 (patch) | |
tree | 59a6710aee2c4d99898b729849c1db973d98b719 /src/H5FScache.c | |
parent | dec126b2fee13830ca3eef3ef34cc81037e1efce (diff) | |
download | hdf5-7fd5028f7ccfa34bec0e46c21113dbc664c4b850.zip hdf5-7fd5028f7ccfa34bec0e46c21113dbc664c4b850.tar.gz hdf5-7fd5028f7ccfa34bec0e46c21113dbc664c4b850.tar.bz2 |
[svn-r12588] Description:
Set the address of the free space section info's parent header correctly
when bringing the section info into the metadata cache.
Tested on:
FreeBSD/32 4.11 (sleipnir)
Linux/64 2.4 (mir)
Solaris/64 2.9 (shanti)
Diffstat (limited to 'src/H5FScache.c')
-rw-r--r-- | src/H5FScache.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/H5FScache.c b/src/H5FScache.c index a2d7e67..b79dea7 100644 --- a/src/H5FScache.c +++ b/src/H5FScache.c @@ -165,6 +165,9 @@ HDfprintf(stderr, "%s: Load free space header, addr = %a\n", FUNC, addr); if(NULL == (fspace = H5FS_new(fs_prot->nclasses, fs_prot->classes, fs_prot->cls_init_udata))) HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed") + /* Set free space manager's internal information */ + fspace->addr = addr; + /* Compute the size of the free space header on disk */ size = H5FS_HEADER_SIZE(f); @@ -569,6 +572,9 @@ HDfprintf(stderr, "%s: fspace->sect_size = %Hu\n", FUNC, fspace->sect_size); /* Address of free space header for these sections */ H5F_addr_decode(f, &p, &fs_addr); +#ifdef QAK +HDfprintf(stderr, "%s: fspace->addr = %a, fs_addr = %a\n", FUNC, fspace->addr, fs_addr); +#endif /* QAK */ if(H5F_addr_ne(fs_addr, fspace->addr)) HGOTO_ERROR(H5E_FSPACE, H5E_CANTLOAD, NULL, "incorrect header address for free space sections") @@ -856,6 +862,9 @@ HDfprintf(stderr, "%s: Flushing free space header, addr = %a, destroy = %u\n", F p += 4; /* Address of free space header for these sections */ +#ifdef QAK +HDfprintf(stderr, "%s: sinfo->fspace->addr = %a\n", FUNC, sinfo->fspace->addr); +#endif /* QAK */ H5F_addr_encode(f, &p, sinfo->fspace->addr); /* Set up user data for iterator */ |