From patchwork Tue Mar 13 18:32:27 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Langsdorf X-Patchwork-Id: 146468 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id CFB11B6F9D for ; Wed, 14 Mar 2012 05:32:12 +1100 (EST) Received: from localhost ([::1]:41128 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7WW2-0003Fn-MD for incoming@patchwork.ozlabs.org; Tue, 13 Mar 2012 14:32:10 -0400 Received: from eggs.gnu.org ([208.118.235.92]:53798) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7WVu-0003Ep-OX for qemu-devel@nongnu.org; Tue, 13 Mar 2012 14:32:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S7WVr-00058c-T4 for qemu-devel@nongnu.org; Tue, 13 Mar 2012 14:32:02 -0400 Received: from smtp121.dfw.emailsrvr.com ([67.192.241.121]:41842) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7WVr-00058O-OZ for qemu-devel@nongnu.org; Tue, 13 Mar 2012 14:31:59 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp12.relay.dfw1a.emailsrvr.com (SMTP Server) with ESMTP id 85EC13C0927; Tue, 13 Mar 2012 14:31:58 -0400 (EDT) X-Virus-Scanned: OK Received: by smtp12.relay.dfw1a.emailsrvr.com (Authenticated sender: mark.langsdorf-AT-calxeda.com) with ESMTPSA id 8C3FD3C0165; Tue, 13 Mar 2012 14:31:57 -0400 (EDT) From: Mark Langsdorf To: qemu-devel@nongnu.org Date: Tue, 13 Mar 2012 13:32:27 -0500 Message-Id: <1331663547-30041-1-git-send-email-mark.langsdorf@calxeda.com> X-Mailer: git-send-email 1.7.5.4 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 67.192.241.121 Cc: Joshua Housh , aliguori@us.ibm.com, paul@codesourcery.com, Mark Langsdorf Subject: [Qemu-devel] [PATCH 2/2] qdev: fix NULL deference X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: Joshua Housh Make sure a BusInfo exists before trying to dereference it. Signed-off-by: Joshua Housh Signed-off-by: Mark Langsdorf --- hw/qdev.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/hw/qdev.c b/hw/qdev.c index ee21d90..6c3d02f 100644 --- a/hw/qdev.c +++ b/hw/qdev.c @@ -86,9 +86,12 @@ void qdev_set_parent_bus(DeviceState *dev, BusState *bus) dev->parent_bus = bus; QTAILQ_INSERT_HEAD(&bus->children, dev, sibling); - for (prop = qdev_get_bus_info(dev)->props; prop && prop->name; prop++) { - qdev_property_add_legacy(dev, prop, NULL); - qdev_property_add_static(dev, prop, NULL); + BusInfo *info = qdev_get_bus_info(dev); + if (info) { + for (prop = info->props; prop && prop->name; prop++) { + qdev_property_add_legacy(dev, prop, NULL); + qdev_property_add_static(dev, prop, NULL); + } } qdev_prop_set_defaults(dev, dev->parent_bus->info->props); }