[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r108449: * lisp/gnus/nntp.el: Stop th
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r108449: * lisp/gnus/nntp.el: Stop the `letf' madness. |
Date: |
Fri, 01 Jun 2012 16:24:17 -0400 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 108449
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Fri 2012-06-01 16:24:17 -0400
message:
* lisp/gnus/nntp.el: Stop the `letf' madness.
(nntp--report-1): New var.
(nntp-report): Merge nntp-report-1 into it.
(nntp-with-open-group-function): Set nntp--report-1 instead of modifying
the nntp-report function.
modified:
lisp/gnus/ChangeLog
lisp/gnus/nntp.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog 2012-06-01 20:12:11 +0000
+++ b/lisp/gnus/ChangeLog 2012-06-01 20:24:17 +0000
@@ -1,5 +1,11 @@
2012-06-01 Stefan Monnier <address@hidden>
+ * nntp.el: Stop the `letf' madness.
+ (nntp--report-1): New var.
+ (nntp-report): Merge nntp-report-1 into it.
+ (nntp-with-open-group-function): Set nntp--report-1 instead of modifying
+ the nntp-report function.
+
* auth-source.el: Fix comment-style to follow the convention.
2012-05-27 Katsumi Yamaoka <address@hidden>
=== modified file 'lisp/gnus/nntp.el'
--- a/lisp/gnus/nntp.el 2012-02-25 00:39:24 +0000
+++ b/lisp/gnus/nntp.el 2012-06-01 20:24:17 +0000
@@ -344,26 +344,26 @@
(insert (format-time-string "%Y%m%dT%H%M%S.%3N")
" " nntp-address " " string "\n")))
+(defvar nntp--report-1 nil)
+
(defun nntp-report (&rest args)
"Report an error from the nntp backend. The first string in ARGS
can be a format string. For some commands, the failed command may be
retried once before actually displaying the error report."
-
- (when nntp-record-commands
- (nntp-record-command "*** CALLED nntp-report ***"))
-
- (nnheader-report 'nntp args)
-
- (apply 'error args))
-
-(defun nntp-report-1 (&rest args)
- "Throws out to nntp-with-open-group-error so that the connection may
-be restored and the command retried."
-
- (when nntp-record-commands
- (nntp-record-command "*** CONNECTION LOST ***"))
-
- (throw 'nntp-with-open-group-error t))
+ (if nntp--report-1
+ (progn
+ ;; Throw out to nntp-with-open-group-error so that the connection may
+ ;; be restored and the command retried."
+ (when nntp-record-commands
+ (nntp-record-command "*** CONNECTION LOST ***"))
+ (throw 'nntp-with-open-group-error t))
+
+ (when nntp-record-commands
+ (nntp-record-command "*** CALLED nntp-report ***"))
+
+ (nnheader-report 'nntp args)
+
+ (apply 'error args)))
(defmacro nntp-copy-to-buffer (buffer start end)
"Copy string from unibyte current buffer to multibyte buffer."
@@ -633,10 +633,6 @@
(t
nil)))
-(eval-when-compile
- (defvar nntp-with-open-group-internal nil)
- (defvar nntp-report-n nil))
-
(defun nntp-with-open-group-function (-group -server -connectionless -bodyfun)
"Protect against servers that don't like clients that keep idle connections
opens.
The problem being that these servers may either close a connection or
@@ -647,9 +643,9 @@
`nntp-connection-timeout' has expired. When these occur
`nntp-with-open-group', opens a new connection then re-issues the NNTP
command whose response triggered the error."
- (letf ((nntp-report-n (symbol-function 'nntp-report))
- ((symbol-function 'nntp-report) (symbol-function 'nntp-report-1))
- (nntp-with-open-group-internal nil))
+ (let ((nntp-report-n nntp--report-1)
+ (nntp--report-1 t)
+ (nntp-with-open-group-internal nil))
(while (catch 'nntp-with-open-group-error
;; Open the connection to the server
;; NOTE: Existing connections are NOT tested.
@@ -685,7 +681,7 @@
(when -timer
(nnheader-cancel-timer -timer)))
nil))
- (setf (symbol-function 'nntp-report) nntp-report-n))
+ (setq nntp--report-1 nntp-report-n))
nntp-with-open-group-internal))
(defmacro nntp-with-open-group (group server &optional connectionless &rest
forms)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r108449: * lisp/gnus/nntp.el: Stop the `letf' madness.,
Stefan Monnier <=