diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-12 11:32:53 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-12 11:32:53 -0500 |
| commit | c6260735749d29dda254361427c613572a2c6a65 (patch) | |
| tree | 8f9ae11662bb6470bbf70c8af40555dcd66463a3 /modules/ui-navigation.el | |
| parent | 8c713514d1a09f800141194b59fb276978d5da88 (diff) | |
| download | dotemacs-c6260735749d29dda254361427c613572a2c6a65.tar.gz dotemacs-c6260735749d29dda254361427c613572a2c6a65.zip | |
fix(ui-navigation): error clearly when undo-kill prefix exceeds the list
An out-of-range numeric prefix made (nth (1- arg) ...) return nil, and find-file on nil signaled a wrong-type-argument. Guard the index and raise a user-error naming how many killed files are available. A new test covers the out-of-range path.
Diffstat (limited to 'modules/ui-navigation.el')
| -rw-r--r-- | modules/ui-navigation.el | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/modules/ui-navigation.el b/modules/ui-navigation.el index f0d2ef527..f2181d97e 100644 --- a/modules/ui-navigation.el +++ b/modules/ui-navigation.el @@ -179,8 +179,11 @@ With numeric prefix ARG, re-open the ARGth most-recently-killed file (delq buf-file recently-killed-list))) buffer-files-list) (when recently-killed-list - (find-file - (nth (1- arg) recently-killed-list))))) + (let ((file (nth (1- arg) recently-killed-list))) + (if file + (find-file file) + (user-error "Only %d killed file(s) to choose from" + (length recently-killed-list))))))) (keymap-global-set "M-S-z" #'cj/undo-kill-buffer) ;; was M-Z, overrides zap-to-char ;; ---------------------------- Undo Layout Changes ---------------------------- |
