bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#32: marked as done (Bug in etags ".." code)


From: Emacs bug Tracking System
Subject: bug#32: marked as done (Bug in etags ".." code)
Date: Thu, 29 May 2008 13:25:06 -0700

Your message dated Thu, 29 May 2008 16:18:48 -0400
with message-id <jwvr6bkampj.fsf-monnier+emacsbugreports@gnu.org>
and subject line Re: Bug in etags ".." code
has caused the Emacs bug report #32,
regarding Bug in etags ".." code
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact don@donarmstrong.com
immediately.)


-- 
32: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=32
Emacs Bug Tracking System
Contact don@donarmstrong.com with problems
--- Begin Message --- Subject: Bug in etags ".." code Date: Sun, 02 Mar 2008 17:02:48 -0700
I ran etags like this:

etags ./eval.c -o $(pwd)//.retags.d/Q

Note the double "/".

The resulting tags file contains this line:

../../eval.c,567

But this is wrong, there should be only a single "..".

I think relative_filename needs to handle the situation where multiple
"/"s appear consecutively.  The appended patch worked for me.

Tom

*** etags.c     07 Feb 2008 19:34:52 -0700      3.82
--- etags.c     02 Mar 2008 17:01:30 -0700      
***************
*** 6792,6799 ****
  
    /* Build a sequence of "../" strings for the resulting relative file name. 
*/
    i = 0;
    while ((dp = etags_strchr (dp + 1, '/')) != NULL)
!     i += 1;
    res = xnew (3*i + strlen (fp + 1) + 1, char);
    res[0] = '\0';
    while (i-- > 0)
--- 6792,6805 ----
  
    /* Build a sequence of "../" strings for the resulting relative file name. 
*/
    i = 0;
+   while (*dp == '/')
+     ++dp;
    while ((dp = etags_strchr (dp + 1, '/')) != NULL)
!     {
!       i += 1;
!       while (*dp == '/')
!       ++dp;
!     }
    res = xnew (3*i + strlen (fp + 1) + 1, char);
    res[0] = '\0';
    while (i-- > 0)




--- End Message ---
--- Begin Message --- Subject: Re: Bug in etags ".." code Date: Thu, 29 May 2008 16:18:48 -0400 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)
Thanks, installed,


        Stefan


--- End Message ---

reply via email to

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