[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r102961: gnus-html.el (gnus-html-imag
From: |
Katsumi Yamaoka |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r102961: gnus-html.el (gnus-html-image-fetched): Don't kill the temporary buffer after being called. It's apparently being killed by url.el, and killing it made point move to end-of-buffer in a random buffer. |
Date: |
Mon, 24 Jan 2011 04:10:19 +0000 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 102961
author: Lars Ingebrigtsen <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Mon 2011-01-24 04:10:19 +0000
message:
gnus-html.el (gnus-html-image-fetched): Don't kill the temporary buffer after
being called. It's apparently being killed by url.el, and killing it made
point move to end-of-buffer in a random buffer.
shr.el (shr-image-fetched): Ditto.
shr.el (shr-image-fetched): Avoid having point move in the article buffer.
gnus-html.el (gnus-html-image-fetched): Kill the buffer anyway, and fix the
bug in url-http.el instead.
shr.el (shr-image-fetched): Ditto.
gravatar.el (gravatar-retrieve): Be silent when retrieving.
gnus-gravatar.el (gnus-gravatar-insert): Don't move point around in the
article buffer.
(gnus-gravatar-insert): Use blank space from the current buffer to avoid
breaking text properties. This makes X-Sent updating work again.
gnus-art.el (gnus-article-read-summary-keys): Don't call disabled commands.
modified:
lisp/gnus/ChangeLog
lisp/gnus/gnus-art.el
lisp/gnus/gnus-gravatar.el
lisp/gnus/gravatar.el
lisp/gnus/shr.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog 2011-01-23 11:21:04 +0000
+++ b/lisp/gnus/ChangeLog 2011-01-24 04:10:19 +0000
@@ -1,3 +1,31 @@
+2011-01-24 Lars Ingebrigtsen <address@hidden>
+
+ * gnus-art.el (gnus-article-read-summary-keys): Don't call disabled
+ commands.
+
+ * gnus-gravatar.el (gnus-gravatar-insert): Don't move point around
+ in the article buffer.
+ (gnus-gravatar-insert): Use blank space from the current buffer to
+ avoid breaking text properties. This makes X-Sent updating work again.
+
+ * gravatar.el (gravatar-retrieve): Be silent when retrieving.
+
+2011-01-23 Lars Ingebrigtsen <address@hidden>
+
+ * gnus-html.el (gnus-html-image-fetched): Kill the buffer anyway, and
+ fix the bug in url-http.el instead.
+
+ * shr.el (shr-image-fetched): Ditto.
+
+ * shr.el (shr-image-fetched): Avoid having point move in the article
+ buffer.
+
+ * gnus-html.el (gnus-html-image-fetched): Don't kill the temporary
+ buffer after being called. It's apparently being killed by url.el, and
+ killing it made point move to end-of-buffer in a random buffer.
+
+ * shr.el (shr-image-fetched): Ditto.
+
2011-01-23 Julien Danjou <address@hidden>
* mm-decode.el (mm-inline-media-tests): Change text/org to text/x-org.
=== modified file 'lisp/gnus/gnus-art.el'
--- a/lisp/gnus/gnus-art.el 2011-01-21 23:33:46 +0000
+++ b/lisp/gnus/gnus-art.el 2011-01-24 04:10:19 +0000
@@ -6432,6 +6432,8 @@
(ding)
(unless (member keys nosave-in-article)
(set-buffer gnus-article-current-summary))
+ (when (get func 'disabled)
+ (error "Function %s disabled" func))
(call-interactively func)
(setq new-sum-point (point)))
(when (member keys nosave-but-article)
@@ -6460,8 +6462,11 @@
(select-window win))))
(setq in-buffer (current-buffer))
;; We disable the pick minor mode commands.
- (if (and (setq func (let (gnus-pick-mode)
- (key-binding keys t)))
+ (setq func (let (gnus-pick-mode)
+ (key-binding keys t)))
+ (when (get func 'disabled)
+ (error "Function %s disabled" func))
+ (if (and func
(functionp func)
(condition-case code
(progn
=== modified file 'lisp/gnus/gnus-gravatar.el'
--- a/lisp/gnus/gnus-gravatar.el 2011-01-15 00:35:35 +0000
+++ b/lisp/gnus/gnus-gravatar.el 2011-01-24 04:10:19 +0000
@@ -80,37 +80,44 @@
"Insert GRAVATAR for ADDRESS in HEADER in current article buffer.
Set image category to CATEGORY."
(unless (eq gravatar 'error)
- (gnus-with-article-headers
- ;; The buffer can be gone at this time
- (when (buffer-live-p (current-buffer))
- (gnus-article-goto-header header)
- (mail-header-narrow-to-field)
- (let ((real-name (car address))
- (mail-address (cadr address)))
- (when (if real-name
- (re-search-forward
- (concat (gnus-replace-in-string
- (regexp-quote real-name) "[\t ]+" "[\t\n ]+")
- "\\|"
- (regexp-quote mail-address))
- nil t)
- (search-forward mail-address nil t))
- (goto-char (1- (match-beginning 0)))
- ;; If we're on the " quoting the name, go backward
- (when (looking-at "[\"<]")
- (goto-char (1- (point))))
- ;; Do not do anything if there's already a gravatar. This can
- ;; happens if the buffer has been regenerated in the mean time, for
- ;; example we were fetching someaddress, and then we change to
- ;; another mail with the same someaddress.
- (unless (memq 'gnus-gravatar (text-properties-at (point)))
- (let ((point (point)))
- (unless (featurep 'xemacs)
- (setq gravatar (append gravatar gnus-gravatar-properties)))
- (gnus-put-image gravatar nil category)
- (put-text-property point (point) 'gnus-gravatar address)
- (gnus-add-wash-type category)
- (gnus-add-image category gravatar)))))))))
+ (with-current-buffer gnus-article-buffer
+ (let ((mark (point-marker))
+ (inhibit-read-only t)
+ (inhibit-point-motion-hooks t)
+ (case-fold-search t))
+ (save-restriction
+ (article-narrow-to-head)
+ ;; The buffer can be gone at this time
+ (when (buffer-live-p (current-buffer))
+ (gnus-article-goto-header header)
+ (mail-header-narrow-to-field)
+ (let ((real-name (car address))
+ (mail-address (cadr address)))
+ (when (if real-name
+ (re-search-forward
+ (concat (gnus-replace-in-string
+ (regexp-quote real-name) "[\t ]+" "[\t\n ]+")
+ "\\|"
+ (regexp-quote mail-address))
+ nil t)
+ (search-forward mail-address nil t))
+ (goto-char (1- (match-beginning 0)))
+ ;; If we're on the " quoting the name, go backward
+ (when (looking-at "[\"<]")
+ (goto-char (1- (point))))
+ ;; Do not do anything if there's already a gravatar. This can
+ ;; happens if the buffer has been regenerated in the mean time,
for
+ ;; example we were fetching someaddress, and then we change to
+ ;; another mail with the same someaddress.
+ (unless (memq 'gnus-gravatar (text-properties-at (point)))
+ (let ((point (point)))
+ (unless (featurep 'xemacs)
+ (setq gravatar (append gravatar
gnus-gravatar-properties)))
+ (gnus-put-image gravatar (buffer-substring (point) (1+
point)) category)
+ (put-text-property point (point) 'gnus-gravatar address)
+ (gnus-add-wash-type category)
+ (gnus-add-image category gravatar)))))))
+ (goto-char (marker-position mark))))))
;;;###autoload
(defun gnus-treat-from-gravatar (&optional force)
=== modified file 'lisp/gnus/gravatar.el'
--- a/lisp/gnus/gravatar.el 2011-01-15 00:35:35 +0000
+++ b/lisp/gnus/gravatar.el 2011-01-24 04:10:19 +0000
@@ -108,9 +108,15 @@
You can provide a list of argument to pass to CB in CBARGS."
(let ((url (gravatar-build-url mail-address)))
(if (gravatar-cache-expired url)
- (url-retrieve url
- 'gravatar-retrieved
- (list cb (when cbargs cbargs)))
+ (let ((args (list url
+ 'gravatar-retrieved
+ (list cb (when cbargs cbargs)))))
+ (when (> (length (if (featurep 'xemacs)
+ (cdr (split-string (function-arglist
'url-retrieve)))
+ (help-function-arglist 'url-retrieve)))
+ 4)
+ (setq args (nconc args (list t))))
+ (apply #'url-retrieve args))
(apply cb
(with-temp-buffer
(mm-disable-multibyte)
=== modified file 'lisp/gnus/shr.el'
--- a/lisp/gnus/shr.el 2011-01-02 23:17:32 +0000
+++ b/lisp/gnus/shr.el 2011-01-24 04:10:19 +0000
@@ -462,11 +462,12 @@
(search-forward "\r\n\r\n" nil t))
(let ((data (buffer-substring (point) (point-max))))
(with-current-buffer buffer
- (let ((alt (buffer-substring start end))
- (inhibit-read-only t))
- (delete-region start end)
- (goto-char start)
- (shr-put-image data alt))))))
+ (save-excursion
+ (let ((alt (buffer-substring start end))
+ (inhibit-read-only t))
+ (delete-region start end)
+ (goto-char start)
+ (shr-put-image data alt)))))))
(kill-buffer (current-buffer)))
(defun shr-put-image (data alt)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r102961: gnus-html.el (gnus-html-image-fetched): Don't kill the temporary buffer after being called. It's apparently being killed by url.el, and killing it made point move to end-of-buffer in a random buffer.,
Katsumi Yamaoka <=