diff options
author | Amin Bandali <bandali@gnu.org> | 2021-09-12 14:09:53 -0400 |
---|---|---|
committer | Amin Bandali <bandali@gnu.org> | 2021-09-12 14:32:12 -0400 |
commit | e20bae005e9fff0f7f9cdb54a8d797c65e01e7ee (patch) | |
tree | bb94e30743960d0361197898caab5b28e3ee3476 /lisp/erc/erc-backend.el | |
parent | 911043845d8c0a8e67407ac80ded3bf6362bb972 (diff) | |
download | emacs-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.el | 21 |
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)) |