scripts/runqemu: Fix logic error causing failures with MACHINE from the environment

MACHINE=qemux86-64 oe-selftest -r runqemu.RunqemuTests.test_boot_machine_slirp_qcow2

fails yet

oe-selftest -r runqemu.RunqemuTests.test_boot_machine_slirp_qcow2

with MACHINE in local.conf would work.

It turns out that:

runqemu slirp wic.qcow2 qemux86-64

works but:

MACHINE=qemux86-64 runqemu slirp wic.qcow2 qemux86-64

does not.

The reason are the misplaced return statements in runqemu, its skipping a block
of logic when MACHINE is set in the environment when it shouldn't. Fix this.

(From OE-Core rev: 98d113ae52cbbc88773a81a17b0933412a8e463b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2018-11-28 16:09:56 +00:00
parent ce17f3b679
commit 1eaf3631a6

View File

@ -475,14 +475,11 @@ class BaseConfig(object):
"Try 'runqemu help' on how to use it" % \
(unknown_arg, arg))
# Check to make sure it is a valid machine
if unknown_arg:
if self.get('MACHINE') == unknown_arg:
return
if unknown_arg and self.get('MACHINE') != unknown_arg:
if self.get('DEPLOY_DIR_IMAGE'):
machine = os.path.basename(self.get('DEPLOY_DIR_IMAGE'))
if unknown_arg == machine:
self.set("MACHINE", machine)
return
self.check_arg_machine(unknown_arg)