[thaller@redhat.com: I modified the condition "if (data && len)"
in the original patch to just check "len > 0".
Note that all call sites of meta_alloc() make sure to pass a
valid data pointer with a non-zero length (anything else would
be a bug). But indeed, calling memcpy with invalid src pointer
is undefined behavior, even if len is zero.]
Signed-off-by: Thomas Haller <thaller@redhat.com>
value->mv_shift = shift;
value->mv_len = len;
- memcpy(value + 1, data, len);
+ if (len)
+ memcpy(value + 1, data, len);
return value;
}