summaryrefslogtreecommitdiffstats
path: root/hl/src/H5TB.c
diff options
context:
space:
mode:
authorDana Robinson <43805+derobins@users.noreply.github.com>2022-04-21 05:24:35 (GMT)
committerGitHub <noreply@github.com>2022-04-21 05:24:35 (GMT)
commitec14985c8555bda02021568ea20295384a2cef7e (patch)
tree491c1f08a68d92e400d939d96fefdc7bfef57ddc /hl/src/H5TB.c
parentbc62da7eb911727497475d1cc90991230f33fa3d (diff)
downloadhdf5-ec14985c8555bda02021568ea20295384a2cef7e.zip
hdf5-ec14985c8555bda02021568ea20295384a2cef7e.tar.gz
hdf5-ec14985c8555bda02021568ea20295384a2cef7e.tar.bz2
VFD SWMR: Merges from develop (#1670)
* Cleans up SWMR test scripts (both legacy and VFD) * Brings over format source changes for Java * Normalization of HL, Fortran, C++, Java w/ develop * Removes the STATIC flavor of FUNC_ENTER macros (#1622) * Removes the STATIC flavor of FUNC_ENTER macros * Remove H5_NO_ALIGNMENT_RESTRICTIONS (#1426) * Do not conditionally compile code that uses a pointer dereference and assignment to copy a potentially unaligned variable to aligned automatic storage, or vice versa. Instead, always use naked `memcpy(3)`s. Disassembling the generated code reveals that the `memcpy(3)`s optimize (`-O3`) to a single `mov` instruction for x86_64, which is not strict about alignment. This change reduces the size of code and scripts by 143 lines, eases our way to cross-compilation, and avoids invoking undefined behavior. * Committing clang-format changes * Per discussion, use HD and add comments. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> * Removes unused definitions from module headers (#1624) * Misc stuff from develop (includes some parallel things) * Brings over SWMR test quiet mode changes from develop Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'hl/src/H5TB.c')
-rw-r--r--hl/src/H5TB.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/hl/src/H5TB.c b/hl/src/H5TB.c
index efa61a3..eda3a35 100644
--- a/hl/src/H5TB.c
+++ b/hl/src/H5TB.c
@@ -2585,11 +2585,11 @@ H5TBdelete_field(hid_t loc_id, const char *dset_name, const char *field_name)
HDsnprintf(attr_name, sizeof(attr_name), "FIELD_%d_FILL", (int)i);
/* check if we have the _FILL attribute */
- if ((has_fill = H5LT_find_attribute(did_1, attr_name)) < 0)
+ if ((has_fill = H5Aexists(did_1, attr_name)) < 0)
goto out;
/* get it */
- if (has_fill)
+ if (has_fill > 0)
if (H5LT_get_attribute_disk(did_1, attr_name, tmp_fill_buf + curr_offset) < 0)
goto out;
@@ -2747,7 +2747,7 @@ H5TBdelete_field(hid_t loc_id, const char *dset_name, const char *field_name)
* attach the fill attributes from previous table
*-------------------------------------------------------------------------
*/
- if (has_fill) {
+ if (has_fill > 0) {
if ((sid_1 = H5Screate(H5S_SCALAR)) < 0)
goto out;
@@ -2918,15 +2918,15 @@ H5TBAget_fill(hid_t loc_id, const char *dset_name, hid_t dset_id, unsigned char
for (i = 0; i < nfields; i++) {
HDsnprintf(attr_name, sizeof(attr_name), "FIELD_%d_FILL", (int)i);
- /* check if we have the _FILL attribute */
- if ((has_fill = H5LT_find_attribute(dset_id, attr_name)) < 0)
+ /* Check if we have the _FILL attribute */
+ if ((has_fill = H5Aexists(dset_id, attr_name)) < 0)
goto out;
/* get it */
- if (has_fill)
+ if (has_fill > 0)
if (H5LT_get_attribute_disk(dset_id, attr_name, dst_buf + src_offset[i]) < 0)
goto out;
- } /* end for */
+ }
ret_val = has_fill;