diff options
author | Andreas Färber <afaerber@suse.de> | 2013-01-23 12:32:49 +0100 |
---|---|---|
committer | Andreas Färber <afaerber@suse.de> | 2013-01-27 23:33:34 +0100 |
commit | 245fb54db5f8c88c9d73e037178bc3ca1f9a4bb6 (patch) | |
tree | 89e43c833c80b424890a0894e4edcb1bc9aa35e6 /target-arm/cpu.c | |
parent | a120c287086e0b03a57f1f4ac7d7aa73fe3d1fe7 (diff) |
target-arm: Catch attempt to instantiate abstract type in cpu_init()
This fixes -cpu arm-cpu asserting.
Cc: qemu-stable@nongnu.org
Acked-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'target-arm/cpu.c')
-rw-r--r-- | target-arm/cpu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target-arm/cpu.c b/target-arm/cpu.c index 57126b6855..d1a4c82680 100644 --- a/target-arm/cpu.c +++ b/target-arm/cpu.c @@ -210,7 +210,8 @@ static ObjectClass *arm_cpu_class_by_name(const char *cpu_model) } oc = object_class_by_name(cpu_model); - if (!oc || !object_class_dynamic_cast(oc, TYPE_ARM_CPU)) { + if (!oc || !object_class_dynamic_cast(oc, TYPE_ARM_CPU) || + object_class_is_abstract(oc)) { return NULL; } return oc; |