From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38714) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YqgjK-0008Uj-SP for qemu-devel@nongnu.org; Fri, 08 May 2015 07:46:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YqgjH-0007ny-3K for qemu-devel@nongnu.org; Fri, 08 May 2015 07:46:10 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34382) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YqgjG-0007nh-OG for qemu-devel@nongnu.org; Fri, 08 May 2015 07:46:07 -0400 From: Gerd Hoffmann Date: Fri, 8 May 2015 13:45:45 +0200 Message-Id: <1431085553-6055-12-git-send-email-kraxel@redhat.com> In-Reply-To: <1431085553-6055-1-git-send-email-kraxel@redhat.com> References: <1431085553-6055-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PULL 11/19] usb-mtp: fix segmentation fault List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Gonglei , Gerd Hoffmann From: Gonglei 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 Signed-off-by: Gerd Hoffmann --- hw/usb/dev-mtp.c | 4 ++++ 1 file changed, 4 insertions(+) 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); -- 1.8.3.1