Message ID | 1457503813-31631-2-git-send-email-peterx@redhat.com |
---|---|
State | New |
Headers | show |
On Wed, 03/09 14:10, Peter Xu wrote: > Use heap instead of stack. > > Signed-off-by: Peter Xu <peterx@redhat.com> > --- > hw/usb/dev-mtp.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c > index 7391783..cf63fd0 100644 > --- a/hw/usb/dev-mtp.c > +++ b/hw/usb/dev-mtp.c > @@ -718,7 +718,7 @@ static void usb_mtp_add_wstr(MTPData *data, const wchar_t *str) > static void usb_mtp_add_str(MTPData *data, const char *str) > { > uint32_t len = strlen(str)+1; > - wchar_t wstr[len]; > + wchar_t *wstr = g_malloc(sizeof(wchar_t) * len); I think it is better to use g_new() in this case. Fam > size_t ret; > > ret = mbstowcs(wstr, str, len); > @@ -727,6 +727,8 @@ static void usb_mtp_add_str(MTPData *data, const char *str) > } else { > usb_mtp_add_wstr(data, wstr); > } > + > + g_free(wstr); > } > > static void usb_mtp_add_time(MTPData *data, time_t time) > -- > 2.4.3 > >
On Thu, Mar 10, 2016 at 09:54:41AM +0800, Fam Zheng wrote: > On Wed, 03/09 14:10, Peter Xu wrote: > > + wchar_t *wstr = g_malloc(sizeof(wchar_t) * len); > > I think it is better to use g_new() in this case. Okay. Will re-send this one. Thanks. Peter
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c index 7391783..cf63fd0 100644 --- a/hw/usb/dev-mtp.c +++ b/hw/usb/dev-mtp.c @@ -718,7 +718,7 @@ static void usb_mtp_add_wstr(MTPData *data, const wchar_t *str) static void usb_mtp_add_str(MTPData *data, const char *str) { uint32_t len = strlen(str)+1; - wchar_t wstr[len]; + wchar_t *wstr = g_malloc(sizeof(wchar_t) * len); size_t ret; ret = mbstowcs(wstr, str, len); @@ -727,6 +727,8 @@ static void usb_mtp_add_str(MTPData *data, const char *str) } else { usb_mtp_add_wstr(data, wstr); } + + g_free(wstr); } static void usb_mtp_add_time(MTPData *data, time_t time)
Use heap instead of stack. Signed-off-by: Peter Xu <peterx@redhat.com> --- hw/usb/dev-mtp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)