mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-18 15:15:56 +08:00
[svn-r6784] Purpose:
Bug fix Description: Corrected a couple of problems with Ray's v1.4 compat checkin yesterday. Platforms tested: FreeBSD 4.8 (sleipnir) w/ & w/o --enable_hdf5v1_4 compat switch Triple check unnecessary.
This commit is contained in:
parent
d67139f909
commit
60754030c7
29
src/H5R.c
29
src/H5R.c
@ -40,7 +40,7 @@ static herr_t H5R_create(void *ref, H5G_entry_t *loc, const char *name,
|
|||||||
H5R_type_t ref_type, H5S_t *space, hid_t dxpl_id);
|
H5R_type_t ref_type, H5S_t *space, hid_t dxpl_id);
|
||||||
static hid_t H5R_dereference(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref);
|
static hid_t H5R_dereference(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref);
|
||||||
static H5S_t * H5R_get_region(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref);
|
static H5S_t * H5R_get_region(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref);
|
||||||
static H5G_obj_t H5R_get_obj_type(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref);
|
static int H5R_get_obj_type(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref);
|
||||||
|
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------
|
/*--------------------------------------------------------------------------
|
||||||
@ -337,7 +337,7 @@ H5R_dereference(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref)
|
|||||||
H5T_t *datatype; /* Pointer to datatype to open */
|
H5T_t *datatype; /* Pointer to datatype to open */
|
||||||
H5G_entry_t ent; /* Symbol table entry */
|
H5G_entry_t ent; /* Symbol table entry */
|
||||||
uint8_t *p; /* Pointer to OID to store */
|
uint8_t *p; /* Pointer to OID to store */
|
||||||
H5G_obj_t oid_type; /* type of object being dereferenced */
|
int oid_type; /* type of object being dereferenced */
|
||||||
hid_t ret_value;
|
hid_t ret_value;
|
||||||
|
|
||||||
FUNC_ENTER_NOINIT(H5R_dereference);
|
FUNC_ENTER_NOINIT(H5R_dereference);
|
||||||
@ -647,13 +647,13 @@ done:
|
|||||||
EXAMPLES
|
EXAMPLES
|
||||||
REVISION LOG
|
REVISION LOG
|
||||||
--------------------------------------------------------------------------*/
|
--------------------------------------------------------------------------*/
|
||||||
static H5G_obj_t
|
static int
|
||||||
H5R_get_object_type(H5F_t *file, void *_ref)
|
H5R_get_object_type(H5F_t *file, hid_t dxpl_id, void *_ref)
|
||||||
{
|
{
|
||||||
H5G_entry_t ent; /* Symbol table entry */
|
H5G_entry_t ent; /* Symbol table entry */
|
||||||
hobj_ref_t *ref=(hobj_ref_t *)_ref; /* Only object references currently supported */
|
hobj_ref_t *ref=(hobj_ref_t *)_ref; /* Only object references currently supported */
|
||||||
uint8_t *p; /* Pointer to OID to store */
|
uint8_t *p; /* Pointer to OID to store */
|
||||||
H5G_obj_t ret_value;
|
int ret_value;
|
||||||
|
|
||||||
FUNC_ENTER_NOINIT(H5R_get_object_type);
|
FUNC_ENTER_NOINIT(H5R_get_object_type);
|
||||||
|
|
||||||
@ -670,7 +670,7 @@ H5R_get_object_type(H5F_t *file, void *_ref)
|
|||||||
H5F_addr_decode(ent.file,(const uint8_t **)&p,&(ent.header));
|
H5F_addr_decode(ent.file,(const uint8_t **)&p,&(ent.header));
|
||||||
|
|
||||||
/* Get the OID type */
|
/* Get the OID type */
|
||||||
ret_value=H5G_get_type(&ent, H5P_DEFAULT);
|
ret_value=H5G_get_type(&ent, dxpl_id);
|
||||||
|
|
||||||
#ifdef LATER
|
#ifdef LATER
|
||||||
done:
|
done:
|
||||||
@ -721,7 +721,7 @@ H5Rget_object_type(hid_t id, void *_ref)
|
|||||||
file=loc->file;
|
file=loc->file;
|
||||||
|
|
||||||
/* Get the object information */
|
/* Get the object information */
|
||||||
if ((ret_value=H5R_get_object_type(file,_ref))<0)
|
if ((ret_value=H5R_get_object_type(file,H5AC_ind_dxpl_id,_ref))<0)
|
||||||
HGOTO_ERROR(H5E_REFERENCE, H5E_CANTINIT, H5G_UNKNOWN, "unable to determine object type");
|
HGOTO_ERROR(H5E_REFERENCE, H5E_CANTINIT, H5G_UNKNOWN, "unable to determine object type");
|
||||||
|
|
||||||
done:
|
done:
|
||||||
@ -752,12 +752,12 @@ done:
|
|||||||
EXAMPLES
|
EXAMPLES
|
||||||
REVISION LOG
|
REVISION LOG
|
||||||
--------------------------------------------------------------------------*/
|
--------------------------------------------------------------------------*/
|
||||||
static H5G_obj_t
|
static int
|
||||||
H5R_get_obj_type(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref)
|
H5R_get_obj_type(H5F_t *file, hid_t dxpl_id, H5R_type_t ref_type, void *_ref)
|
||||||
{
|
{
|
||||||
H5G_entry_t ent; /* Symbol table entry */
|
H5G_entry_t ent; /* Symbol table entry */
|
||||||
uint8_t *p; /* Pointer to OID to store */
|
uint8_t *p; /* Pointer to OID to store */
|
||||||
H5G_obj_t ret_value;
|
int ret_value;
|
||||||
|
|
||||||
FUNC_ENTER_NOINIT(H5R_get_obj_type);
|
FUNC_ENTER_NOINIT(H5R_get_obj_type);
|
||||||
|
|
||||||
@ -849,12 +849,21 @@ done:
|
|||||||
EXAMPLES
|
EXAMPLES
|
||||||
REVISION LOG
|
REVISION LOG
|
||||||
--------------------------------------------------------------------------*/
|
--------------------------------------------------------------------------*/
|
||||||
|
#ifdef H5_WANT_H5_V1_4_COMPAT
|
||||||
int
|
int
|
||||||
H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref)
|
H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref)
|
||||||
|
#else /* H5_WANT_H5_V1_4_COMPAT */
|
||||||
|
H5G_obj_t
|
||||||
|
H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref)
|
||||||
|
#endif /* H5_WANT_H5_V1_4_COMPAT */
|
||||||
{
|
{
|
||||||
H5G_entry_t *loc = NULL; /* Symbol table entry */
|
H5G_entry_t *loc = NULL; /* Symbol table entry */
|
||||||
H5F_t *file=NULL; /* File object */
|
H5F_t *file=NULL; /* File object */
|
||||||
hid_t ret_value;
|
#ifdef H5_WANT_H5_V1_4_COMPAT
|
||||||
|
int ret_value;
|
||||||
|
#else /* H5_WANT_H5_V1_4_COMPAT */
|
||||||
|
H5G_obj_t ret_value;
|
||||||
|
#endif /* H5_WANT_H5_V1_4_COMPAT */
|
||||||
|
|
||||||
FUNC_ENTER_API(H5Rget_obj_type, H5G_UNKNOWN);
|
FUNC_ENTER_API(H5Rget_obj_type, H5G_UNKNOWN);
|
||||||
H5TRACE3("Is","iRtx",id,ref_type,_ref);
|
H5TRACE3("Is","iRtx",id,ref_type,_ref);
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
/* Public headers needed by this file */
|
/* Public headers needed by this file */
|
||||||
#include "H5public.h"
|
#include "H5public.h"
|
||||||
|
#include "H5Gpublic.h"
|
||||||
#include "H5Ipublic.h"
|
#include "H5Ipublic.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -74,8 +75,10 @@ H5_DLL hid_t H5Rdereference(hid_t dataset, H5R_type_t ref_type, void *ref);
|
|||||||
H5_DLL hid_t H5Rget_region(hid_t dataset, H5R_type_t ref_type, void *ref);
|
H5_DLL hid_t H5Rget_region(hid_t dataset, H5R_type_t ref_type, void *ref);
|
||||||
#ifdef H5_WANT_H5_V1_4_COMPAT
|
#ifdef H5_WANT_H5_V1_4_COMPAT
|
||||||
H5_DLL int H5Rget_object_type(hid_t dataset, void *_ref);
|
H5_DLL int H5Rget_object_type(hid_t dataset, void *_ref);
|
||||||
|
H5_DLL int H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref);
|
||||||
|
#else /* H5_WANT_H5_V1_4_COMPAT */
|
||||||
|
H5_DLL H5G_obj_t H5Rget_obj_type(hid_t id, H5R_type_t ref_type, void *_ref);
|
||||||
#endif /* H5_WANT_H5_V1_4_COMPAT */
|
#endif /* H5_WANT_H5_V1_4_COMPAT */
|
||||||
H5_DLL int H5Rget_obj_type(hid_t dataset, H5R_type_t ref_type, void *_ref);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user