diff --git a/test/test-program.script b/test/test-program.script
index d8465e80bd5f97adc0d672a1e4e78798a4ef496b..8756d78d9beb9d7a5f25b299da8b7654579e105e 100644
--- a/test/test-program.script
+++ b/test/test-program.script
@@ -9,9 +9,9 @@
 
 #+allegro
 (defparameter *lisp*
-  (if (absolute-pathname-p (first (raw-command-line-arguments)))
-      (first (raw-command-line-arguments))
-    (truename (subpathname #p"sys:" (first (raw-command-line-arguments))))))
+  (let ((argv0 (parse-native-namestring (first (raw-command-line-arguments)))))
+    (or (absolute-pathname-p argv0)
+        (truename (subpathname #p"sys:" argv0)))))
 
 ;; Try to load lisp-invocation from xcvb
 (setf *central-registry*