summaryrefslogtreecommitdiffstats
path: root/src/H5R.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2006-11-11 06:22:41 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2006-11-11 06:22:41 (GMT)
commitb1c6bb5b982562a872f79f58d003fae65af2a2a4 (patch)
tree207ad618dd4104695f9f3b0c9889ff35dba54066 /src/H5R.c
parente53f3daf610359bc61b8da499c66495b0476b68d (diff)
downloadhdf5-b1c6bb5b982562a872f79f58d003fae65af2a2a4.zip
hdf5-b1c6bb5b982562a872f79f58d003fae65af2a2a4.tar.gz
hdf5-b1c6bb5b982562a872f79f58d003fae65af2a2a4.tar.bz2
[svn-r12893] Description:
Fix error with retrieving names of object references on big-endian platforms. Tested on: AIX/32 5.? (copper)
Diffstat (limited to 'src/H5R.c')
-rw-r--r--src/H5R.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/H5R.c b/src/H5R.c
index a8e2d32..3232ba3 100644
--- a/src/H5R.c
+++ b/src/H5R.c
@@ -808,7 +808,6 @@ H5R_get_name(H5F_t *f, hid_t dxpl_id, hid_t id, H5R_type_t ref_type,
{
hid_t file_id = (-1); /* ID for file that the reference is in */
H5O_loc_t oloc; /* Object location describing object for reference */
- const uint8_t *p; /* Pointer to reference to decode */
ssize_t ret_value; /* Return value */
FUNC_ENTER_NOAPI_NOINIT(H5R_get_name)
@@ -823,15 +822,17 @@ H5R_get_name(H5F_t *f, hid_t dxpl_id, hid_t id, H5R_type_t ref_type,
oloc.file = f;
/* Get address for reference */
- p = (const uint8_t *)_ref;
switch(ref_type) {
case H5R_OBJECT:
- H5F_addr_decode(oloc.file, &p, &oloc.addr);
+ oloc.addr = *(const hobj_ref_t *)_ref;
break;
case H5R_DATASET_REGION:
{
+ const uint8_t *p; /* Pointer to reference to decode */
+
/* Skip over the heap ID for the dataset region */
+ p = (const uint8_t *)_ref;
p += H5F_SIZEOF_ADDR(f);
p += 4;