summaryrefslogtreecommitdiff
path: root/lisp/erc/erc-backend.el
diff options
context:
space:
mode:
authorAmin Bandali <bandali@gnu.org>2021-09-12 14:09:53 -0400
committerAmin Bandali <bandali@gnu.org>2021-09-12 14:32:12 -0400
commite20bae005e9fff0f7f9cdb54a8d797c65e01e7ee (patch)
treebb94e30743960d0361197898caab5b28e3ee3476 /lisp/erc/erc-backend.el
parent911043845d8c0a8e67407ac80ded3bf6362bb972 (diff)
downloademacs-e20bae005e9fff0f7f9cdb54a8d797c65e01e7ee.tar.gz
emacs-e20bae005e9fff0f7f9cdb54a8d797c65e01e7ee.tar.bz2
emacs-e20bae005e9fff0f7f9cdb54a8d797c65e01e7ee.zip
ERC: Use 'string-search' only on Emacs 28 and later
* lisp/erc/erc-backend.el (erc-parse-server-response): * lisp/erc/erc-dcc.el (erc-dcc-member): * lisp/erc/erc-speedbar.el (erc-speedbar-expand-server) (erc-speedbar-expand-channel, erc-speedbar-expand-user): * lisp/erc/erc.el (erc-send-input): Use 'string-search' only on Emacs 28 and later, otherwise use 'string-match' on older Emacsen.
Diffstat (limited to 'lisp/erc/erc-backend.el')
-rw-r--r--lisp/erc/erc-backend.el21
1 files changed, 16 insertions, 5 deletions
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el
index 6d84665873e..ad9719380a4 100644
--- a/lisp/erc/erc-backend.el
+++ b/lisp/erc/erc-backend.el
@@ -950,15 +950,22 @@ PROCs `process-buffer' is `current-buffer' when this function is called."
(unless (string= string "") ;; Ignore empty strings
(save-match-data
(let* ((tag-list (when (eq (aref string 0) ?@)
- (substring string 1 (string-search " " string))))
+ (substring string 1
+ (if (>= emacs-major-version 28)
+ (string-search " " string)
+ (string-match " " string)))))
(msg (make-erc-response :unparsed string :tags (when tag-list
(erc-parse-tags
tag-list))))
(string (if tag-list
- (substring string (+ 1 (string-search " " string)))
+ (substring string (+ 1 (if (>= emacs-major-version 28)
+ (string-search " " string)
+ (string-match " " string))))
string))
(posn (if (eq (aref string 0) ?:)
- (string-search " " string)
+ (if (>= emacs-major-version 28)
+ (string-search " " string)
+ (string-match " " string))
0)))
(setf (erc-response.sender msg)
@@ -968,7 +975,9 @@ PROCs `process-buffer' is `current-buffer' when this function is called."
(setf (erc-response.command msg)
(let* ((bposn (string-match "[^ \n]" string posn))
- (eposn (string-search " " string bposn)))
+ (eposn (if (>= emacs-major-version 28)
+ (string-search " " string bposn)
+ (string-match " " string bposn))))
(setq posn (and eposn
(string-match "[^ \n]" string eposn)))
(substring string bposn eposn)))
@@ -976,7 +985,9 @@ PROCs `process-buffer' is `current-buffer' when this function is called."
(while (and posn
(not (eq (aref string posn) ?:)))
(push (let* ((bposn posn)
- (eposn (string-search " " string bposn)))
+ (eposn (if (>= emacs-major-version 28)
+ (string-search " " string bposn)
+ (string-match " " string bposn))))
(setq posn (and eposn
(string-match "[^ \n]" string eposn)))
(substring string bposn eposn))