[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/02: edit: Improve error reporting when $EDITOR is not found.
From: |
Ludovic Courtès |
Subject: |
02/02: edit: Improve error reporting when $EDITOR is not found. |
Date: |
Thu, 05 Nov 2015 11:05:58 +0000 |
civodul pushed a commit to branch master
in repository guix.
commit 650f1615de325f332dbf3d993acc8a16648d795e
Author: Ludovic Courtès <address@hidden>
Date: Thu Nov 5 12:04:26 2015 +0100
edit: Improve error reporting when $EDITOR is not found.
Reported by Benno Evers <address@hidden>
at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00125.html>.
* guix/scripts/edit.scm (guix-edit): Wrap 'execl' call in 'catch'.
Provide more meaningful error message.
---
guix/scripts/edit.scm | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/guix/scripts/edit.scm b/guix/scripts/edit.scm
index fa10a16..0509148 100644
--- a/guix/scripts/edit.scm
+++ b/guix/scripts/edit.scm
@@ -79,5 +79,12 @@ line."
(leave (_ "source location of package '~a' is unknown~%")
(package-full-name package))))
packages)
- (apply execlp (%editor) (%editor)
- (append-map package->location-specification packages)))))
+
+ (catch 'system-error
+ (lambda ()
+ (apply execlp (%editor) (%editor)
+ (append-map package->location-specification packages)))
+ (lambda args
+ (let ((errno (system-error-errno args)))
+ (leave (_ "failed to launch '~a': ~a~%")
+ (%editor) (strerror errno))))))))