emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master fd9431d: Fix shorter-than-length case for string-limit


From: Lars Ingebrigtsen
Subject: master fd9431d: Fix shorter-than-length case for string-limit
Date: Mon, 21 Dec 2020 14:42:28 -0500 (EST)

branch: master
commit fd9431dde443471f17ffeebf9628fd9aee154e1b
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Fix shorter-than-length case for string-limit
    
    * lisp/emacs-lisp/subr-x.el (string-limit): Fix
    shorter-than-length case.
---
 lisp/emacs-lisp/subr-x.el            | 2 +-
 test/lisp/emacs-lisp/subr-x-tests.el | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/lisp/emacs-lisp/subr-x.el b/lisp/emacs-lisp/subr-x.el
index db7e75d..05fa16d 100644
--- a/lisp/emacs-lisp/subr-x.el
+++ b/lisp/emacs-lisp/subr-x.el
@@ -292,7 +292,7 @@ is a positive number, return a a substring consisting of the
 first LENGTH characters of STRING.  If LENGTH is negative, return
 a substring consisitng of thelast LENGTH characters of STRING."
   (cond
-   ((<= (length string) length) string)
+   ((<= (length string) (abs length)) string)
    ((>= length 0) (substring string 0 length))
    (t (substring string (+ (length string) length)))))
 
diff --git a/test/lisp/emacs-lisp/subr-x-tests.el 
b/test/lisp/emacs-lisp/subr-x-tests.el
index 6ed06d4..c655fcf 100644
--- a/test/lisp/emacs-lisp/subr-x-tests.el
+++ b/test/lisp/emacs-lisp/subr-x-tests.el
@@ -596,6 +596,7 @@
   (should (equal (string-limit "foo" 10) "foo"))
   (should (equal (string-limit "foo" 2) "fo"))
   (should (equal (string-limit "foo" -2) "oo"))
+  (should (equal (string-limit "abc" -10) "abc"))
   (should (equal (string-limit "foo" 0) "")))
 
 (ert-deftest subr-string-lines ()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]