Fix valgrind warning about write of uninitialized bytes in ScaleOffset filter (#3390)

This commit is contained in:
jhendersonHDF 2023-08-18 16:00:43 -05:00 committed by GitHub
parent 31f4d5aa4e
commit 81830c1ded
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1283,6 +1283,9 @@ H5Z__filter_scaleoffset(unsigned flags, size_t cd_nelmts, const unsigned cd_valu
}
/* output; compress */
else {
size_t used_bytes;
size_t unused_bytes;
assert(nbytes == d_nelmts * p.size);
/* before preprocess, convert to memory endianness order if needed */
@ -1334,7 +1337,10 @@ H5Z__filter_scaleoffset(unsigned flags, size_t cd_nelmts, const unsigned cd_valu
/* (Looks like an error in the original determination of how many
* bytes would be needed for parameters. - QAK, 2010/08/19)
*/
memset(outbuf + 13, 0, (size_t)8);
used_bytes = 4 + 1 + sizeof(unsigned long long);
assert(used_bytes <= size_out);
unused_bytes = size_out - used_bytes;
memset(outbuf + 13, 0, unused_bytes);
/* special case: minbits equal to full precision */
if (minbits == p.size * 8) {