Gnus development mailing list
 help / color / mirror / Atom feed
From: jam@jamux.com (John A. Martin)
Subject: Re: Trouble selecting group in recent cvs
Date: Fri, 29 Nov 2002 17:54:38 -0500	[thread overview]
Message-ID: <87of88oukx.fsf@athene.jamux.com> (raw)
In-Reply-To: <84el94ie1o.fsf@lucy.cs.uni-dortmund.de>

[-- Attachment #1: Type: text/plain, Size: 9461 bytes --]

>>>>> "Kai" == Kai Großjohann
>>>>> "Re: Trouble selecting group in recent cvs"
>>>>>  Fri, 29 Nov 2002 16:36:03 +0100

    Kai> jam@jamux.com (John A. Martin) writes:
    >>>>>> "Kai" == Kai Großjohann
    >>>>>> "Re: Trouble selecting group in recent cvs"
    >>>>>>  Fri, 29 Nov 2002 14:22:04 +0100
    >>
    Kai> Could you load gnus-sum.el (the .el is important) and get
    Kai> another backtrace?  I think the new one will contain more
    Kai> information.
    >>
    >> ,----
    >> | Signaling: (void-function nil)
    >> |   nil()
    >> |   funcall(nil)
    >> |   (let ((face ...)) (unless (eq face ...) (gnus-put-text-property-excluding-characters-with-faces beg ... ... ...) (when gnus-summary-highlight-line-function ...)))
    >> |   (let* ((list gnus-summary-highlight) (beg ...) (article ...) (score ...) (mark ...) (inhibit-read-only t) (default gnus-summary-default-score) (default-high gnus-summary-default-high-score) (default-low gnus-summary-default-low-score) (downloaded ...)) (let (...) (unless ... ... ...)))
    >> |   gnus-summary-highlight-line()

    Kai> Uh.  There are two instances of `funcall' in that function,
    Kai> and the first one invokes gnus-summary-highlight-line-0.

    Kai> Does your gnus-sum.el contain gnus-summary-highlight-line-0?

Yes.

    Kai> If not, try updating from CVS.  If yes, then I'm stumped.
    Kai> Please investigate as follows:

    Kai> Put point inside the definition of
    Kai> gnus-summary-highlight-line and type M-x edebug-defun RET.
    Kai> Then do stuff that reproduces the error.  During execution,
    Kai> Emacs will show you the source code of
    Kai> gnus-summary-highlight-line and allows you to single-step
    Kai> with SPC.  Do that single-stepping and report where it fails.
    Kai> Also report any other strange things that you might see.

,----
| ;; New implementation by Christian Limpach <Christian.Limpach@nice.ch>.
| (defun gnus-summary-highlight-line ()
|   "Highlight current line according to `gnus-summary-highlight'."
|   (let* ((list gnus-summary-highlight)
| 	 (beg (gnus-point-at-bol))
| 	 (article (gnus-summary-article-number))
| 	 (score (or (cdr (assq (or article gnus-current-article)
| 			       gnus-newsgroup-scored))
| 		    gnus-summary-default-score 0))
| 	 (mark (or (gnus-summary-article-mark) gnus-unread-mark))
| 	 (inhibit-read-only t)
| 	 (default gnus-summary-default-score)
| 	 (default-high gnus-summary-default-high-score)
| 	 (default-low gnus-summary-default-low-score)
|          (downloaded (and (boundp 'gnus-agent-article-alist)
|                           gnus-agent-article-alist
|                           ;; Optimized for when gnus-summary-highlight-line is called multiple times for articles in ascending order (i.e. initial generation of summary buffer).
|                           (progn 
|                             (if (and (eq gnus-summary-highlight-line-downloaded-alist gnus-agent-article-alist)
|                                      (<= (caar gnus-summary-highlight-line-downloaded-cached) article))
|                                 nil
|                               (setq gnus-summary-highlight-line-downloaded-alist  gnus-agent-article-alist
|                                     gnus-summary-highlight-line-downloaded-cached gnus-agent-article-alist))
|                             (let (n)
|                               (while (and (< (caar gnus-summary-highlight-line-downloaded-cached) article)
|                                           (setq n (cdr gnus-summary-highlight-line-downloaded-cached)))
|                                 (setq gnus-summary-highlight-line-downloaded-cached n)))
|                             (and (eq (caar gnus-summary-highlight-line-downloaded-cached) article)
|                                  (cdar gnus-summary-highlight-line-downloaded-cached))))))
| =>  (let ((face (funcall (gnus-summary-highlight-line-0))-!-))
|       (unless (eq face (get-text-property beg 'face))
| 	(gnus-put-text-property-excluding-characters-with-faces
| 	 beg (gnus-point-at-eol) 'face
| 	 (setq face (if (boundp face) (symbol-value face) face)))
| 	(when gnus-summary-highlight-line-function
| 	  (funcall gnus-summary-highlight-line-function article face))))))
`----v
,----^
| Recent minibuffer messages (most recent first):
| 
| Result: nil
| Result: nil
| Result: nil
| Result: t
| Result: 0 = C-@
| Result: 0 = C-@
| Result: 0 = C-@
| Result: ?!
| Result: ?!
| Result: 0 = C-@
| Result: 0 = C-@
| Result: nil
| Result: nil
| Result: nil
| Result: 368
| Result: 368
| Result: 368
| Result: 1 = C-a
| C-c C-a not defined.
| Quit
| Result: (((eq mark gnus-canceled-mark) . gnus-summary-cancelled-face) ((and (> score default-high) (or (eq mark gnus-dormant-mark) (eq mark gnus-ticked-mark))) . gnus-summary-high-ticked-face) ((and (< score default-low) (or (eq mark gnus-dormant-mark) (eq mark gnus-ticked-mark))) . gnus-summary-low-ticked-face) ((or (eq mark gnus-dormant-mark) (eq mark gnus-ticked-mark)) . gnus-summary-normal-ticked-face) ((and (> score default-high) (eq mark gnus-ancient-mark)) . gnus-summary-high-ancient-face) ((and (< score default-low) (eq mark gnus-ancient-mark)) . gnus-summary-low-ancient-face) ((eq mark gnus-ancient-mark) . gnus-summary-normal-ancient-face) (downloaded . gnus-agent-downloaded-article-face) ((and (> score default-high) (eq mark gnus-unread-mark)) . gnus-summary-high-unread-face) ((and (< score default-low) (eq mark gnus-unread-mark)) . gnus-summary-low-unread-face) ((eq mark gnus-unread-mark) . gnus-summary-normal-unread-face) ((and (> score default-high) (memq mark (list gnus-downloadable-mark gnus-undownloaded-mark))) . gnus-summary-high-unread-face) ((and (< score default-low) (memq mark (list gnus-downloadable-mark gnus-undownloaded-mark))) . gnus-summary-low-unread-face) ((and (memq mark (list gnus-downloadable-mark gnus-undownloaded-mark)) (memq article gnus-newsgroup-unreads)) . gnus-summary-normal-unread-face) ((memq mark (list gnus-downloadable-mark gnus-undownloaded-mark)) . gnus-summary-normal-read-face) ((> score default-high) . gnus-summary-high-read-face) ((< score default-low) . gnus-summary-low-read-face) (t . gnus-summary-normal-read-face))
| Generating summary...
| Fetching headers for nnmaildir:sg-dc...done
| Fetching headers for nnmaildir:sg-dc...
| Retrieving newsgroup: nnmaildir:sg-dc...
| Edebug: gnus-summary-highlight-line
| Loading lazy-lock...done
| Loading lazy-lock...
| Loading gnus-sum.el...done
| Loading gnus-sum.el...
| Symbol's function definition is void: nil
| Generating summary...
| Fetching headers for nnmaildir:sg-dc...done
| Loading sort...done
| Loading sort...
| Fetching headers for nnmaildir:sg-dc...
| Loading gnus-ml...done
| Loading gnus-ml...
| Retrieving newsgroup: nnmaildir:sg-dc...
| Checking new news...done
| Opening nntp server on news.gnus.org...done
| Opening nntp server on news.gnus.org...
| nnmh: Reading incoming mail (no new mail)...done
| nnmh: Reading incoming mail from file...
| Opening nnmh server...done
| Opening nnmh server...
| Opening nndoc server on gnus-help...done
| Opening nndoc server on gnus-help...
| Checking new news...
| No new newsgroups
| Reading active file from archive via nnfolder...done
| Reading active file from archive via nnfolder...
| Opening nnfolder server on archive...done
| Opening nnfolder server on archive...
| Reading active file from archive via nnfolder...
| Opening nnmaildir server...done
| Opening nnmaildir server...
| Reading active file via nnmaildir...
| Reading active file via nnnil...done
| Reading active file via nnnil...
| Reading active file via nnnil...
| Reading /home/jam/.newsrc.eld...
| Loading bbdb-gnus...done
| Loading bbdb-gnus...
| Loading gnus-agent...done
| Loading gnus-agent...
| Loading regexp-opt...done
| Loading regexp-opt...
| Loading edebug...done
| Loading edebug...
| Loading /home/jam/.xemacs/lisp/boxquote...done
| Loading /home/jam/.xemacs/lisp/boxquote...
| Loading /home/jam/.xemacs/lisp/smiley...done
| Loading /home/jam/.xemacs/lisp/smiley...
| Reading directory /home/jam/...done
| Reading directory /home/jam/...
| Reading directory /home/jam/.saves-*...done
| Reading directory /home/jam/.saves-*...
| Loading font...done
| Loading font...
`----

I'm too clumbsy to nail it down clearly but I think, in

,----
| (defun gnus-summary-highlight-line-0 ()
|   (if (and (eq gnus-summary-highlight-line-trigger 
|                gnus-summary-highlight)
|            gnus-summary-highlight-line-cached)
|       gnus-summary-highlight-line-cached
|     (setq gnus-summary-highlight-line-trigger gnus-summary-highlight
|           gnus-summary-highlight-line-cached
|           (let* ((cond (list 'cond))
|                  (c cond)
|                  (list gnus-summary-highlight))
|             (while list
|               (setcdr c (cons (list (caar list) (list 'quote (cdar list))) nil))
|               (setq c (cdr c)
|                     list (cdr list)))
|            (gnus-byte-compile (list 'lambda nil cond))))))
`----

the while is exited with nil.  It is for sure nil over the first few
iterations.  I can't seem to get edebug to run up to a breakpoint and
show the value coming out of the loop.  For example, SPACE doesn't
seem to work here for me.

        jam


[-- Attachment #2: Type: application/pgp-signature, Size: 154 bytes --]

  reply	other threads:[~2002-11-29 22:54 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-28 23:37 John A. Martin
2002-11-29 13:22 ` Kai Großjohann
2002-11-29 14:13   ` John A. Martin
2002-11-29 15:36     ` Kai Großjohann
2002-11-29 22:54       ` John A. Martin [this message]
2002-11-30  1:01         ` ShengHuo ZHU
2002-11-30  5:07           ` John A. Martin
2002-11-30 17:33             ` Kai Großjohann
2002-11-30 20:51               ` John A. Martin
2002-11-30 21:50                 ` Kai Großjohann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87of88oukx.fsf@athene.jamux.com \
    --to=jam@jamux.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).