From 27ca4a27f0fc442028ec4d2f23f465148d56d0b4 Mon Sep 17 00:00:00 2001 From: Martin Wimpress Date: Sat, 11 May 2024 12:55:43 +0100 Subject: [PATCH] refactor: improve kill VM logic by using VM_PID --- quickemu | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/quickemu b/quickemu index b310404..d261941 100755 --- a/quickemu +++ b/quickemu @@ -1962,21 +1962,20 @@ fi if [ ${KILL_VM} -eq 1 ]; then echo "Killing ${VMNAME}" - if [ -r "${VMDIR}/${VMNAME}.pid" ]; then - VM_PID=$(head -c50 "${VMDIR}/${VMNAME}.pid") + if [ -z "${VM_PID}" ]; then + echo " - ${VMNAME} is not running." + rm -f "${VMDIR}/${VMNAME}.pid" + elif [ -n "${VM_PID}" ]; then if kill -9 "${VM_PID}" > /dev/null 2>&1; then echo " - ${VMNAME} (${VM_PID}) killed." rm -f "${VMDIR}/${VMNAME}.pid" - exit else - echo " - ERROR! ${VMNAME} with PID ${VM_PID} was not killed." - rm -f "${VMDIR}/${VMNAME}.pid" - exit 1 + echo " - ${VMNAME} (${VM_PID}) was not killed." fi - else - echo " - ERROR! Could not read ${VMDIR}/${VMNAME}.pid." - exit 1 + elif [ ! -r "${VMDIR}/${VMNAME}.pid" ]; then + echo " - ${VMNAME} has no ${VMDIR}/${VMNAME}.pid" fi + exit fi if [ ${DELETE_DISK} -eq 1 ]; then