[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

address@hidden: Add log bug]

From: Richard Stallman
Subject: address@hidden: Add log bug]
Date: Tue, 26 Dec 2006 12:22:46 -0500

Would someone please DTRT with this?

------- Start of forwarded message -------
From: "Herbert Euler" <address@hidden>
To: address@hidden
Date: Tue, 26 Dec 2006 09:29:12 +0800
Mime-Version: 1.0
Content-Type: text/plain; format=flowed
Subject: Add log bug
X-Spam-Status: No, score=0.0 required=5.0 tests=MSGID_FROM_MTA_HEADER 
        autolearn=failed version=3.0.4

There is a bug in add-log.el, in the function
`add-log-current-defun'.  There was a fix; but it is not complete.
The old description of the bug can be found at


The problem exists yet now.  If you put point in the body of the C++
function below:

web_slim::slim_dirent::clear ()
  for (slim_dirent_seq::iterator i = sub.begin (); i != sub.end (); ++i)
    i->clear ();
  sub.clear ();

`add-change-log-entry-other-window' would try to add a log entry for
function `slim_dirent::clear', rather than the desired

The old fix changed `forward-word' into `forward-sexp', but the latter
one only moves one sexp.  So the point is put before `slim_dirent' in
the above example.  A complete fix could be:

*** add-log.el.~    Mon Nov 13 10:58:16 2006
- --- add-log.el  Wed Dec 20 10:13:47 2006
*************** (defun add-log-current-defun ()
*** 916,922 ****
                              ;; Include certain keywords if they
                              ;; precede the name.
                              (setq middle (point))
!                              (forward-sexp -1)
                              ;; Is this C++ method?
                              (when (and (< 2 middle)
                                         (string= (buffer-substring (- 
middle 2)
- --- 916,923 ----
                              ;; Include certain keywords if they
                              ;; precede the name.
                              (setq middle (point))
!                              (while (not (looking-back "\\(^\\| 
!                                (forward-sexp -1))
                              ;; Is this C++ method?
                              (when (and (< 2 middle)
                                         (string= (buffer-substring (- 
middle 2)

This is not a big problem; but it is still a bug.  Since it will take
long between two releases, I think it could be good of fixing it
before this release.

Guanpeng Xu

Express yourself instantly with MSN Messenger! Download today it's FREE! 

Emacs-devel mailing list
------- End of forwarded message -------

reply via email to

[Prev in Thread] Current Thread [Next in Thread]