diff options
author | Isaku Yamahata | 2011-06-15 00:37:47 +0200 |
---|---|---|
committer | Michael S. Tsirkin | 2011-06-15 17:32:08 +0200 |
commit | c2afc92290f2b5a8eb6f7b75338815012f90a5c7 (patch) | |
tree | d4788cd54660f3a53fd959416aa9248e8fe020b8 /hw/pci.c | |
parent | Merge remote-tracking branch 'origin/master' into pci (diff) | |
download | qemu-c2afc92290f2b5a8eb6f7b75338815012f90a5c7.tar.gz qemu-c2afc92290f2b5a8eb6f7b75338815012f90a5c7.tar.xz qemu-c2afc92290f2b5a8eb6f7b75338815012f90a5c7.zip |
pci: don't call qdev pci init method
As pci id initialization is moved to common layer,
some initialization function can be empty.
So don't call init method if NULL.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/pci.c')
-rw-r--r-- | hw/pci.c | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -1681,10 +1681,12 @@ static int pci_qdev_init(DeviceState *qdev, DeviceInfo *base) do_pci_unregister_device(pci_dev); return -1; } - rc = info->init(pci_dev); - if (rc != 0) { - do_pci_unregister_device(pci_dev); - return rc; + if (info->init) { + rc = info->init(pci_dev); + if (rc != 0) { + do_pci_unregister_device(pci_dev); + return rc; + } } /* rom loading */ |