From fb7c269ed694c103397c5fffbfcccd3e90aed23c Mon Sep 17 00:00:00 2001 From: Dunrong Huang Date: Tue, 24 Jul 2012 00:42:20 +0800 Subject: vl.c: Exit QEMU early if no machine is found We check whether the variable machine is NULL or not before accessing it. If machine is NULL, exit QEMU with an error, this can avoids a segfault error. Markus Armbruster adds that the segfault can be reproduced as follows: $ qemu-system-xtensa -cpu help Signed-off-by: Dunrong Huang Reviewed-by: Markus Armbruster Signed-off-by: Stefan Hajnoczi --- vl.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'vl.c') diff --git a/vl.c b/vl.c index a4a520fb7e..4871428864 100644 --- a/vl.c +++ b/vl.c @@ -3204,6 +3204,11 @@ int main(int argc, char **argv, char **envp) } loc_set_none(); + if (machine == NULL) { + fprintf(stderr, "No machine found.\n"); + exit(1); + } + if (machine->hw_version) { qemu_set_version(machine->hw_version); } @@ -3246,11 +3251,6 @@ int main(int argc, char **argv, char **envp) data_dir = CONFIG_QEMU_DATADIR; } - if (machine == NULL) { - fprintf(stderr, "No machine found.\n"); - exit(1); - } - /* * Default to max_cpus = smp_cpus, in case the user doesn't * specify a max_cpus value. -- cgit v1.2.1