summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-05-07 11:48:51 +0200
committerLudovic Courtès <ludo@gnu.org>2019-05-07 12:18:44 +0200
commit91936f153a6d1026350a1f58bf93f54d2ee3e1dc (patch)
tree5320572eeb1d1ffdef9c11d2dd5c1124e388232d
parent6c5790a2faf8ffc401e43b13425a707394e40874 (diff)
downloadguix-91936f153a6d1026350a1f58bf93f54d2ee3e1dc.tar.gz
installer: "Exit" button in user page actually exits.
Fixes <https://bugs.gnu.org/35607>.
Reported by Florian Pelz <pelzflorian@pelzflorian.de>.

* gnu/installer/newt/user.scm (run-user-page): Add 'cond' clause for
ARGUMENT = EXIT-BUTTON.
-rw-r--r--gnu/installer/newt/user.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/gnu/installer/newt/user.scm b/gnu/installer/newt/user.scm
index f866de54ce..c797eb6a92 100644
--- a/gnu/installer/newt/user.scm
+++ b/gnu/installer/newt/user.scm
@@ -19,6 +19,7 @@
 
 (define-module (gnu installer newt user)
   #:use-module (gnu installer user)
+  #:use-module ((gnu installer steps) #:select (&installer-step-abort))
   #:use-module (gnu installer newt page)
   #:use-module (gnu installer newt utils)
   #:use-module (guix i18n)
@@ -27,6 +28,8 @@
   #:use-module (ice-9 receive)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-34)
+  #:use-module (srfi srfi-35)
   #:export (run-user-page))
 
 (define* (run-user-add-page #:key (name "") (real-name "")
@@ -247,7 +250,11 @@ administrator (\"root\").")
                   (run-error-page (G_ "Please create at least one user.")
                                   (G_ "No user"))
                   (run users))
-                (reverse users)))))
+                (reverse users))
+               ((components=? argument exit-button)
+                (raise
+                 (condition
+                  (&installer-step-abort)))))))
           (lambda ()
             (destroy-form-and-pop form))))))