diff options
| author | Glenn Morris | 2007-12-11 05:49:10 +0000 |
|---|---|---|
| committer | Glenn Morris | 2007-12-11 05:49:10 +0000 |
| commit | 4e44324af220f05b922fcabed7142b0601949f02 (patch) | |
| tree | e33c45215f421c3cc7604455766472aa731a833f | |
| parent | 8703ea5358af50c74f3958cc699707731b253ecc (diff) | |
| download | emacs-4e44324af220f05b922fcabed7142b0601949f02.tar.gz emacs-4e44324af220f05b922fcabed7142b0601949f02.zip | |
(url-cookie-write-file): Use url-make-private-file and with-temp-buffer.
| -rw-r--r-- | lisp/url/url-cookie.el | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/lisp/url/url-cookie.el b/lisp/url/url-cookie.el index bc0fea4de44..40791d29fb6 100644 --- a/lisp/url/url-cookie.el +++ b/lisp/url/url-cookie.el | |||
| @@ -119,19 +119,17 @@ telling Microsoft that." | |||
| 119 | (set var new))) | 119 | (set var new))) |
| 120 | 120 | ||
| 121 | (defun url-cookie-write-file (&optional fname) | 121 | (defun url-cookie-write-file (&optional fname) |
| 122 | (setq fname (or fname url-cookie-file)) | 122 | (when url-cookies-changed-since-last-save |
| 123 | (unless (file-directory-p (file-name-directory fname)) | 123 | (or fname (setq fname (expand-file-name url-cookie-file))) |
| 124 | (ignore-errors (make-directory (file-name-directory fname)))) | 124 | (if (condition-case nil |
| 125 | (cond | 125 | (progn |
| 126 | ((not url-cookies-changed-since-last-save) nil) | 126 | (url-make-private-file fname) |
| 127 | ((not (file-writable-p fname)) | 127 | nil) |
| 128 | (message "Cookies file %s (see variable `url-cookie-file') is unwritable." fname)) | 128 | (error t)) |
| 129 | (t | 129 | (message "Error accessing cookie file `%s'" fname) |
| 130 | (url-cookie-clean-up) | 130 | (url-cookie-clean-up) |
| 131 | (url-cookie-clean-up t) | 131 | (url-cookie-clean-up t) |
| 132 | (with-current-buffer (get-buffer-create " *cookies*") | 132 | (with-temp-buffer |
| 133 | (erase-buffer) | ||
| 134 | (fundamental-mode) | ||
| 135 | (insert ";; Emacs-W3 HTTP cookies file\n" | 133 | (insert ";; Emacs-W3 HTTP cookies file\n" |
| 136 | ";; Automatically generated file!!! DO NOT EDIT!!!\n\n" | 134 | ";; Automatically generated file!!! DO NOT EDIT!!!\n\n" |
| 137 | "(setq url-cookie-storage\n '") | 135 | "(setq url-cookie-storage\n '") |
| @@ -144,9 +142,8 @@ telling Microsoft that." | |||
| 144 | ";; no-byte-compile: t\n" | 142 | ";; no-byte-compile: t\n" |
| 145 | ";; End:\n") | 143 | ";; End:\n") |
| 146 | (set (make-local-variable 'version-control) 'never) | 144 | (set (make-local-variable 'version-control) 'never) |
| 147 | (write-file fname) | 145 | (write-file fname)) |
| 148 | (setq url-cookies-changed-since-last-save nil) | 146 | (setq url-cookies-changed-since-last-save nil)))) |
| 149 | (kill-buffer (current-buffer)))))) | ||
| 150 | 147 | ||
| 151 | (defun url-cookie-store (name value &optional expires domain localpart secure) | 148 | (defun url-cookie-store (name value &optional expires domain localpart secure) |
| 152 | "Store a netscape-style cookie." | 149 | "Store a netscape-style cookie." |