Created attachment 376898
Patch for the problem described, replacing strcpy with memmove.
Description of problem:
This is a bug against etags.emacs which is packaged in emacs-common, but there is no separate component called emacs-common. This same bug exists in etags.xemacs, packaged in xemacs-common.
When etags is run with filenames starting with "./", it normalizes them to start without "./", but does so incorrectly, messing up the result.
Version-Release number of selected component (if applicable):
emacs-common-23.1-13.fc12.x86_64
xemacs-common-21.5.29-8.fc12.x86_64
How reproducible:
100%
Steps to Reproduce:
1. Create a file with a C function and path e.g. src/gdk/gdk_atoms.c
2. Run /usr/bin/etags.emacs ./src/gdk/gdk_atoms.c
3. Observe the filename in TAGS
Actual results:
The filename recorded in the TAGS file is src/gdk/gdk_otoms.c (note "o" after underscore).
Expected results:
The filename should be src/gdk/gdk_atoms.c
Additional info:
The problem is a call to strcpy on overlapping buffers. In Fedora 11 and before that seems to have worked, but in Fedora 12 it often does not work, at least not for slightly longer filenames.
The attached patch should also work for etags.xemacs in xemacs-common, except for differing line numbers.
Created attachment 376898
Patch for the problem described, replacing strcpy with memmove.
Description of problem:
This is a bug against etags.emacs which is packaged in emacs-common, but there is no separate component called emacs-common. This same bug exists in etags.xemacs, packaged in xemacs-common.
When etags is run with filenames starting with "./", it normalizes them to start without "./", but does so incorrectly, messing up the result.
Version-Release number of selected component (if applicable): 23.1-13. fc12.x86_ 64 common- 21.5.29- 8.fc12. x86_64
emacs-common-
xemacs-
How reproducible:
100%
Steps to Reproduce: etags.emacs ./src/gdk/ gdk_atoms. c
1. Create a file with a C function and path e.g. src/gdk/gdk_atoms.c
2. Run /usr/bin/
3. Observe the filename in TAGS
Actual results:
The filename recorded in the TAGS file is src/gdk/gdk_otoms.c (note "o" after underscore).
Expected results:
The filename should be src/gdk/gdk_atoms.c
Additional info:
The problem is a call to strcpy on overlapping buffers. In Fedora 11 and before that seems to have worked, but in Fedora 12 it often does not work, at least not for slightly longer filenames.
The attached patch should also work for etags.xemacs in xemacs-common, except for differing line numbers.