diff mbox

[PULL,11/19] usb-mtp: fix segmentation fault

Message ID 1431085553-6055-12-git-send-email-kraxel@redhat.com
State New
Headers show

Commit Message

Gerd Hoffmann May 8, 2015, 11:45 a.m. UTC
From: Gonglei <arei.gonglei@huawei.com>

When x-root property not be configured, will cause segfault
because of null pointer accessing. Add a check for s->root
property avoid segfault.

Signed-off-by: Gonglei <arei.gonglei@huawei.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/usb/dev-mtp.c | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox

Patch

diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
index c9c1f32..809b1cb 100644
--- a/hw/usb/dev-mtp.c
+++ b/hw/usb/dev-mtp.c
@@ -1071,6 +1071,10 @@  static void usb_mtp_realize(USBDevice *dev, Error **errp)
     usb_desc_init(dev);
     QTAILQ_INIT(&s->objects);
     if (s->desc == NULL) {
+        if (s->root == NULL) {
+            error_setg(errp, "usb-mtp: x-root property must be configured");
+            return;
+        }
         s->desc = strrchr(s->root, '/');
         if (s->desc && s->desc[0]) {
             s->desc = g_strdup(s->desc + 1);