From 1023cf7d1665d65b079d9898103ad31f3dd1d525 Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Mon, 20 Mar 2023 10:02:10 +0100 Subject: merge from chromium fork avoid conversion of string longer than we can converse https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/third_party/chromiumos-overlay/media-libs/libmtp/files/libmtp-1.1.20-24_update_ptp_ucs2str_reader.patch --- src/ptp-pack.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/ptp-pack.c b/src/ptp-pack.c index 381326f..8e8aa29 100644 --- a/src/ptp-pack.c +++ b/src/ptp-pack.c @@ -213,6 +213,9 @@ ptp_pack_string(PTPParams *params, char *string, unsigned char* data, uint16_t o char *ucs2strp = (char *) ucs2str; size_t convlen = strlen(string); + if (convlen > PTP_MAXSTRLEN) { + convlen = PTP_MAXSTRLEN; + } /* Cannot exceed 255 (PTP_MAXSTRLEN) since it is a single byte, duh ... */ memset(ucs2strp, 0, sizeof(ucs2str)); /* XXX: necessary? */ #if defined(HAVE_ICONV) && defined(HAVE_LANGINFO_H) -- cgit v1.2.1