diff options
| author | Glenn Morris | 2007-12-11 05:49:53 +0000 |
|---|---|---|
| committer | Glenn Morris | 2007-12-11 05:49:53 +0000 |
| commit | e6ed4935020f267cb05f065224eba69cb817c829 (patch) | |
| tree | e6a02ff965cb5ca0bbb4d2679aada504ecc4b72a | |
| parent | 38f584e90e8785a409d99d90f41ff357f7680ee1 (diff) | |
| download | emacs-e6ed4935020f267cb05f065224eba69cb817c829.tar.gz emacs-e6ed4935020f267cb05f065224eba69cb817c829.zip | |
(url-cookie-write-file): Use url-make-private-file and with-temp-buffer.
| -rw-r--r-- | lisp/url/url-cookie.el | 53 |
1 files changed, 25 insertions, 28 deletions
diff --git a/lisp/url/url-cookie.el b/lisp/url/url-cookie.el index cdca65104ad..eea34042970 100644 --- a/lisp/url/url-cookie.el +++ b/lisp/url/url-cookie.el | |||
| @@ -148,34 +148,31 @@ telling Microsoft that." | |||
| 148 | (set var new))) | 148 | (set var new))) |
| 149 | 149 | ||
| 150 | (defun url-cookie-write-file (&optional fname) | 150 | (defun url-cookie-write-file (&optional fname) |
| 151 | (setq fname (or fname url-cookie-file)) | 151 | (when url-cookies-changed-since-last-save |
| 152 | (unless (file-directory-p (file-name-directory fname)) | 152 | (or fname (setq fname (expand-file-name url-cookie-file))) |
| 153 | (ignore-errors (make-directory (file-name-directory fname)))) | 153 | (if (condition-case nil |
| 154 | (cond | 154 | (progn |
| 155 | ((not url-cookies-changed-since-last-save) nil) | 155 | (url-make-private-file fname) |
| 156 | ((not (file-writable-p fname)) | 156 | nil) |
| 157 | (message "Cookies file %s (see variable `url-cookie-file') is unwritable." fname)) | 157 | (error t)) |
| 158 | (t | 158 | (message "Error accessing cookie file `%s'" fname) |
| 159 | (url-cookie-clean-up) | 159 | (url-cookie-clean-up) |
| 160 | (url-cookie-clean-up t) | 160 | (url-cookie-clean-up t) |
| 161 | (with-current-buffer (get-buffer-create " *cookies*") | 161 | (with-temp-buffer |
| 162 | (erase-buffer) | 162 | (insert ";; Emacs-W3 HTTP cookies file\n" |
| 163 | (fundamental-mode) | 163 | ";; Automatically generated file!!! DO NOT EDIT!!!\n\n" |
| 164 | (insert ";; Emacs-W3 HTTP cookies file\n" | 164 | "(setq url-cookie-storage\n '") |
| 165 | ";; Automatically generated file!!! DO NOT EDIT!!!\n\n" | 165 | (pp url-cookie-storage (current-buffer)) |
| 166 | "(setq url-cookie-storage\n '") | 166 | (insert ")\n(setq url-cookie-secure-storage\n '") |
| 167 | (pp url-cookie-storage (current-buffer)) | 167 | (pp url-cookie-secure-storage (current-buffer)) |
| 168 | (insert ")\n(setq url-cookie-secure-storage\n '") | 168 | (insert ")\n") |
| 169 | (pp url-cookie-secure-storage (current-buffer)) | 169 | (insert "\n;; Local Variables:\n" |
| 170 | (insert ")\n") | 170 | ";; version-control: never\n" |
| 171 | (insert "\n;; Local Variables:\n" | 171 | ";; no-byte-compile: t\n" |
| 172 | ";; version-control: never\n" | 172 | ";; End:\n") |
| 173 | ";; no-byte-compile: t\n" | 173 | (set (make-local-variable 'version-control) 'never) |
| 174 | ";; End:\n") | 174 | (write-file fname)) |
| 175 | (set (make-local-variable 'version-control) 'never) | 175 | (setq url-cookies-changed-since-last-save nil)))) |
| 176 | (write-file fname) | ||
| 177 | (setq url-cookies-changed-since-last-save nil) | ||
| 178 | (kill-buffer (current-buffer)))))) | ||
| 179 | 176 | ||
| 180 | (defun url-cookie-store (name value &optional expires domain localpart secure) | 177 | (defun url-cookie-store (name value &optional expires domain localpart secure) |
| 181 | "Store a netscape-style cookie." | 178 | "Store a netscape-style cookie." |