gvariant-core: Don't pass NULL second argument to memcpy

Similar to 3837b83f, glibc memcpy is declared with the first two
arguments annotated as non-null via an attribute, which results in the
undefined behaviour sanitizer considering it to be UB to pass a null
pointer there (even if we are copying no bytes, and hence not actually
dereferencing the pointer).

Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
Simon McVittie 2019-11-04 17:34:17 +00:00 committed by Philip Withnall
parent 027c3f8d59
commit e9337a9c1d

View File

@ -554,7 +554,8 @@ g_variant_new_from_bytes (const GVariantType *type,
aligned_size) != 0) aligned_size) != 0)
g_error ("posix_memalign failed"); g_error ("posix_memalign failed");
memcpy (aligned_data, g_bytes_get_data (bytes, NULL), aligned_size); if (aligned_size != 0)
memcpy (aligned_data, g_bytes_get_data (bytes, NULL), aligned_size);
bytes = owned_bytes = g_bytes_new_with_free_func (aligned_data, bytes = owned_bytes = g_bytes_new_with_free_func (aligned_data,
aligned_size, aligned_size,