diff options
| author | Mattias EngdegÄrd | 2020-04-14 12:17:40 +0200 |
|---|---|---|
| committer | Mattias EngdegÄrd | 2020-04-14 12:25:16 +0200 |
| commit | 4acdd7fe58ae9f94102afeca67b0383141d597da (patch) | |
| tree | 5c6856ade640eba80849dc0b251f4057e65937d3 /lisp/mail | |
| parent | 5f36e21fe519fe98784d230dd65ca2af78444d14 (diff) | |
| download | emacs-4acdd7fe58ae9f94102afeca67b0383141d597da.tar.gz emacs-4acdd7fe58ae9f94102afeca67b0383141d597da.zip | |
Fix edge case errors in filename-matching regexps
These changes fix actual or latent bugs in regexps that match
file names, such as PATTERN arguments to 'directory-files'. See
https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00265.html
* admin/authors.el (authors-obsolete-files-regexps)
(authors-renamed-files-regexps):
* lisp/auth-source-pass.el (auth-source-pass-entries):
* lisp/calendar/todo-mode.el (todo-show, todo-find-filtered-items-file)
(todo-filter-items, todo-reset-nondiary-marker, todo-reset-done-string)
(todo-reset-comment-string, todo-reset-highlight-item):
* lisp/cedet/semantic/db-ebrowse.el (semanticdb-load-ebrowse-caches):
* lisp/cedet/semantic/texi.el (semantic-texi-associated-files):
* lisp/cedet/srecode/map.el (srecode-map-update-map):
* lisp/dired.el (dired-re-no-dot):
* lisp/emacs-lisp/autoload.el (update-directory-autoloads):
* lisp/emacs-lisp/shadow.el (load-path-shadows-find):
* lisp/files.el (auto-mode-alist, directory-files-no-dot-files-regexp):
* lisp/finder.el (finder-compile-keywords):
* lisp/generic-x.el (inetd-conf-generic-mode, named-boot-generic-mode)
(resolve-conf-generic-mode, etc-modules-conf-generic-mode):
* lisp/gnus/gnus-agent.el (gnus-agent-read-agentview)
(gnus-agent-regenerate-group, gnus-agent-update-files-total-fetched-for):
* lisp/gnus/gnus-cache.el (gnus-cache-articles-in-group):
* lisp/gnus/gnus-score.el (gnus-score-search-global-directories):
* lisp/gnus/gnus-util.el (gnus-delete-directory):
* lisp/gnus/gnus-uu.el (gnus-uu-dir-files):
* lisp/gnus/nndraft.el (nndraft-request-group):
* lisp/gnus/nnmh.el (nnmh-request-group, nnmh-request-create-group):
(nnmh-request-delete-group, nnmh-active-number, nnmh-update-gnus-unreads):
* lisp/gnus/nnspool.el (nnspool-request-group):
* lisp/gnus/spam-stat.el (spam-stat-process-directory)
(spam-stat-test-directory):
* lisp/help-fns.el (help-fns--first-release):
* lisp/help.el (view-emacs-news):
* lisp/international/quail.el (quail-update-leim-list-file):
* lisp/international/titdic-cnv.el (batch-titdic-convert):
* lisp/mail/mspools.el (mspools-set-vm-spool-files)
(mspools-get-spool-files):
* lisp/mail/rmail.el (rmail-secondary-file-regexp)
(rmail-speedbar-match-folder-regexp):
* lisp/net/ange-ftp.el (ange-ftp-delete-directory):
* lisp/net/tramp.el (tramp-use-absolute-autoload-file-names):
* lisp/obsolete/gulp.el (gulp-send-requests):
* lisp/obsolete/vc-arch.el (vc-arch-trim-revlib):
* lisp/org/ob-core.el (org-babel-remove-temporary-directory):
* lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp, ebnf-style-database):
* lisp/progmodes/executable.el (executable-command-find-posix-p):
* lisp/startup.el (command-line):
* lisp/textmodes/refer.el (refer-get-bib-files):
* lisp/url/url-about.el (url-probe-protocols):
* lisp/vc/vc-rcs.el (vc-rcs-register, vc-rcs-unregister):
* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test19-directory-files-and-attributes):
* test/lisp/net/tramp-tests.el (tramp-test19-directory-files-and-attributes):
Replace ^ and $ with \` and \', respectively.
Use (rx (or (not ".") "...")), translated into "[^.]\\|\\.\\.\\.",
to match anything but "." and "..", instead of several incorrect
regexps.
Diffstat (limited to 'lisp/mail')
| -rw-r--r-- | lisp/mail/mspools.el | 4 | ||||
| -rw-r--r-- | lisp/mail/rmail.el | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lisp/mail/mspools.el b/lisp/mail/mspools.el index 9c0c3fe5ca9..94b0886c75f 100644 --- a/lisp/mail/mspools.el +++ b/lisp/mail/mspools.el | |||
| @@ -223,7 +223,7 @@ your primary spool is. If this fails, set it to something like | |||
| 223 | ;; So I create a vm-spool-files entry for each of those mail drops | 223 | ;; So I create a vm-spool-files entry for each of those mail drops |
| 224 | (mapcar 'file-name-sans-extension | 224 | (mapcar 'file-name-sans-extension |
| 225 | (directory-files mspools-folder-directory nil | 225 | (directory-files mspools-folder-directory nil |
| 226 | (format "^[^.]+\\.%s" mspools-suffix))) | 226 | (format "\\`[^.]+\\.%s" mspools-suffix))) |
| 227 | )) | 227 | )) |
| 228 | )) | 228 | )) |
| 229 | 229 | ||
| @@ -357,7 +357,7 @@ nil." | |||
| 357 | (if (null mspools-folder-directory) | 357 | (if (null mspools-folder-directory) |
| 358 | (error "Set `mspools-folder-directory' to where the spool files are")) | 358 | (error "Set `mspools-folder-directory' to where the spool files are")) |
| 359 | (setq folders (directory-files mspools-folder-directory nil | 359 | (setq folders (directory-files mspools-folder-directory nil |
| 360 | (format "^[^.]+\\.%s$" mspools-suffix))) | 360 | (format "\\`[^.]+\\.%s\\'" mspools-suffix))) |
| 361 | (setq folders (mapcar 'mspools-size-folder folders)) | 361 | (setq folders (mapcar 'mspools-size-folder folders)) |
| 362 | (setq folders (delq nil folders)) | 362 | (setq folders (delq nil folders)) |
| 363 | (setq mspools-files folders) | 363 | (setq mspools-files folders) |
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el index d798ffa0516..3feff803e3e 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el | |||
| @@ -474,7 +474,7 @@ the frame where you have the RMAIL buffer displayed." | |||
| 474 | :type 'directory | 474 | :type 'directory |
| 475 | :group 'rmail-files) | 475 | :group 'rmail-files) |
| 476 | ;;;###autoload | 476 | ;;;###autoload |
| 477 | (defcustom rmail-secondary-file-regexp (purecopy "\\.xmail$") | 477 | (defcustom rmail-secondary-file-regexp (purecopy "\\.xmail\\'") |
| 478 | "Regexp for which files are secondary Rmail files." | 478 | "Regexp for which files are secondary Rmail files." |
| 479 | :type 'regexp | 479 | :type 'regexp |
| 480 | :group 'rmail-files) | 480 | :group 'rmail-files) |
| @@ -4354,7 +4354,8 @@ This has an effect only if a summary buffer exists." | |||
| 4354 | (font-lock-fontify-region (point-min) (point-max))))))) | 4354 | (font-lock-fontify-region (point-min) (point-max))))))) |
| 4355 | 4355 | ||
| 4356 | ;;; Speedbar support for RMAIL files. | 4356 | ;;; Speedbar support for RMAIL files. |
| 4357 | (defcustom rmail-speedbar-match-folder-regexp "^[A-Z0-9]+\\(\\.[A-Z0-9]+\\)?$" | 4357 | (defcustom rmail-speedbar-match-folder-regexp |
| 4358 | "\\`[A-Z0-9]+\\(\\.[A-Z0-9]+\\)?\\'" | ||
| 4358 | "Regexp matching Rmail folder names to be displayed in Speedbar. | 4359 | "Regexp matching Rmail folder names to be displayed in Speedbar. |
| 4359 | Enabling this permits Speedbar to display your folders for easy | 4360 | Enabling this permits Speedbar to display your folders for easy |
| 4360 | browsing, and moving of messages." | 4361 | browsing, and moving of messages." |