summaryrefslogtreecommitdiffstats
path: root/src/H5Oattr.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-11-22 17:14:11 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-11-22 17:14:11 (GMT)
commit35ffb5bd1341b0b49096fae2554ba18046a30958 (patch)
tree76125ea42d3f13837e6fedd4c8ba950cf8456c91 /src/H5Oattr.c
parentd58b9bf5b22522cd51949941f1a61949467dc354 (diff)
downloadhdf5-35ffb5bd1341b0b49096fae2554ba18046a30958.zip
hdf5-35ffb5bd1341b0b49096fae2554ba18046a30958.tar.gz
hdf5-35ffb5bd1341b0b49096fae2554ba18046a30958.tar.bz2
[svn-r9556] Purpose:
Code cleanup & optimization Description: Improve ADF/CGNS benchmark by reducing the number of internal attribute copies made during creations, opens and writes. Added new H5O_iterate() routine for iterating through messages of a certain type in the object header (attributes are the only message currently that can have multiple instances in the object header). Cross-pollinated various minor code cleanups to reduce diffs between branches. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Solaris 2.7 (arabica) Too minor to require h5committest
Diffstat (limited to 'src/H5Oattr.c')
-rw-r--r--src/H5Oattr.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/H5Oattr.c b/src/H5Oattr.c
index 9f92c87..28da005 100644
--- a/src/H5Oattr.c
+++ b/src/H5Oattr.c
@@ -32,7 +32,7 @@
/* PRIVATE PROTOTYPES */
static herr_t H5O_attr_encode (H5F_t *f, uint8_t *p, const void *mesg);
static void *H5O_attr_decode (H5F_t *f, hid_t dxpl_id, const uint8_t *p, H5O_shared_t *sh);
-static void *H5O_attr_copy (const void *_mesg, void *_dest);
+static void *H5O_attr_copy (const void *_mesg, void *_dest, unsigned update_flags);
static size_t H5O_attr_size (H5F_t *f, const void *_mesg);
static herr_t H5O_attr_reset (void *_mesg);
static herr_t H5O_attr_free (void *mesg);
@@ -368,8 +368,8 @@ done:
This function copies a native (memory) attribute message,
allocating the destination structure if necessary.
--------------------------------------------------------------------------*/
-static void *
-H5O_attr_copy(const void *_src, void *_dst)
+static void *
+H5O_attr_copy(const void *_src, void *_dst, unsigned update_flags)
{
const H5A_t *src = (const H5A_t *) _src;
void *ret_value; /* Return value */
@@ -380,7 +380,7 @@ H5O_attr_copy(const void *_src, void *_dst)
assert(src);
/* copy */
- if (NULL == (ret_value = H5A_copy(_dst,src)))
+ if (NULL == (ret_value = H5A_copy(_dst,src,update_flags)))
HGOTO_ERROR(H5E_ATTR, H5E_CANTINIT, NULL, "can't copy attribute");
done:
@@ -481,7 +481,7 @@ H5O_attr_reset(void *_mesg)
H5A_t *attr = (H5A_t *) _mesg;
herr_t ret_value=SUCCEED; /* Return value */
- FUNC_ENTER_NOAPI_NOINIT(H5O_attr_reset);
+ FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5O_attr_reset);
if (attr)
H5A_free(attr);