fix: Detect device

* fix: Detect device
This commit is contained in:
Kroese 2023-12-28 05:04:40 +01:00 committed by GitHub
parent 08e4084458
commit 159fce6839
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 23 additions and 6 deletions

View File

@ -24,10 +24,23 @@ if [[ "$CONSOLE" == [Yy]* ]]; then
fi
[[ "$DEBUG" == [Yy1]* ]] && info "$VERS" && set -x
qemu-system-x86_64 -daemonize -pidfile "$QEMU_PID" ${ARGS:+ $ARGS}
dev=$(qemu-system-x86_64 -daemonize -pidfile "$QEMU_PID" ${ARGS:+ $ARGS})
{ set +x; } 2>/dev/null
cat /dev/pts/1 2>/dev/null & wait $! || true
if [[ "$dev" != "char"* || "$dev" != *"redirected to"* || "$dev" != *")" ]]; then
error "$dev"
finish 33
fi
dev="${dev#*/dev/}"
dev="/dev/${dev%% *}"
if [ ! -c "$dev" ]; then
error "Device $dev not found!"
finish 34
fi
cat "$dev" 2>/dev/null & wait $! || true
sleep 1
finish 0

View File

@ -61,10 +61,14 @@ _graceful_shutdown() {
local code=$?
local pid cnt response
[ -f "$QEMU_COUNT" ] && return
echo 0 > "$QEMU_COUNT"
set +e
if [ -f "$QEMU_COUNT" ]; then
echo && info "Ignored $1 signal, already shutting down..."
return
fi
echo 0 > "$QEMU_COUNT"
echo && info "Received $1 signal, sending shutdown command..."
if [ ! -f "$QEMU_PID" ]; then