[Bug: 21.4.17] When calling perldb from a script, the current source line is not properly selected! (keywords: perl, debug, gud)

Stephen J. Turnbull stephen at xemacs.org
Fri Nov 9 16:39:55 EST 2007


Thomas Mittelstaedt writes:

 > In package debug, version 1.17, in function gud-perldb-marker-filter I
 > changed the following to get the desired behaviour!
 > 
 > ;     (while (string-match 
 > "^\032\032\\([a-zA-Z]:\\)?\\([^:\n]*\\):\\([0-9]*\\):.*\n"

Thanks for the report.  Do you have any idea why the \032 characters
(^Z) might have been put there in the first place?

 > 
 > ;; thmi changed the regex to the following. When I called the perl 
 > debugger from
 > ;; a script like
 > ;; cat /tmp/stdin-21164.log | perl -d 
 > /buildcontrol/tinderbox/bin/processmail_builds_test.pl
 > ;; the current source line would not show up in the other buffer
 > 
 >       (while (string-match 
 > "^\\([a-zA-Z]+\\)::[^:\n]*(\\([^:\n]*\\):\\([0-9]*\\)):"

This is quite different semantically from the regexp above, the
required double colon replaces a pair of colons separated by optional
text, and your regexp is not anchored at a newline at the end but the
one above is.  I think this is likely to have quite bad impacts on
other users.

Can you come up with more minimal changes that work for you?  (NB, I
don't use this feature so can't judge, thus I'm being conservative.
If you get better advice, please ignore me.)



More information about the XEmacs-Beta mailing list