usb-mtp: fix string length for filename when writing metadata
The ObjectInfo 'length' field provides the length of the wide character string filename. This is then converted to a multi-byte character string. This may have a different byte count to the wide character string. We should use the C string length of the multi-byte string instead. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-id: 20190415154503.6758-2-berrange@redhat.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
f75d15231e
commit
3541cd48f3
|
@ -1721,7 +1721,7 @@ static void usb_mtp_write_metadata(MTPState *s, uint64_t dlen)
|
|||
return;
|
||||
}
|
||||
|
||||
o = usb_mtp_object_lookup_name(p, filename, dataset->length);
|
||||
o = usb_mtp_object_lookup_name(p, filename, -1);
|
||||
if (o != NULL) {
|
||||
next_handle = o->handle;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue