* bug#4604: 23.1.50; tramp + remote debugging works no longer
@ 2009-09-30 16:27 Michal
2009-10-01 3:14 ` Nick Roberts
[not found] ` <mailman.7818.1254367639.2239.bug-gnu-emacs@gnu.org>
0 siblings, 2 replies; 3+ messages in thread
From: Michal @ 2009-09-30 16:27 UTC (permalink / raw)
To: emacs-pretest-bug
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.
Your bug report will be posted to the emacs-pretest-bug@gnu.org mailing list.
Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:
I just upgraded from emacs 23.1 (version from web site, not from cvs) to 23.1.50.1.
Then tried to debug some simple program:
M-x gdb: gdb -i=mi /n.10.3.rh73:/tmp/p1
failed as You can see.
Additionaly I just invoked it again, this time with "debug-on-error". This is result:
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
string-match("[^-0-9a-zA-Z_./]" nil 0)
shell-quote-argument(nil)
tramp-shell-quote-argument(nil)
mapconcat(tramp-shell-quote-argument (nil) " ")
tramp-handle-start-file-process("gdb-inferior" #<buffer limbo> nil)
apply(tramp-handle-start-file-process ("gdb-inferior" #<buffer limbo> nil))
tramp-sh-file-name-handler(start-file-process "gdb-inferior" #<buffer limbo> nil)
apply(tramp-sh-file-name-handler start-file-process ("gdb-inferior" #<buffer limbo> nil))
tramp-file-name-handler(start-file-process "gdb-inferior" #<buffer limbo> nil)
apply(tramp-file-name-handler start-file-process "gdb-inferior" #<buffer limbo> nil nil)
start-file-process("gdb-inferior" #<buffer limbo> nil)
apply(start-file-process "gdb-inferior" #<buffer limbo> nil nil)
comint-exec-1("gdb-inferior" #<buffer limbo> nil nil)
comint-exec(#<buffer limbo> "gdb-inferior" nil nil nil)
make-comint-in-buffer("gdb-inferior" #<buffer limbo> nil)
gdb-inferior-io-mode()
gdb-get-buffer-create(gdb-inferior-io)
gdb-init-1()
gdb-update()
gdb("gdb -i=mi /n.10.3.rh73:/tmp/p1")
call-interactively(gdb t nil)
execute-extended-command(nil)
call-interactively(execute-extended-command nil nil)
in previous emacs I used to do:
1) visit /n.10.3.rh73:/tmp directory
2) M-x gdb: gdb --annotate=3 ./p1
for emacs 23.1.50.1 I also tried this command, but no success.
Best regards,
Michal
If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
`bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/local/share/emacs/23.1.50/etc/DEBUG for instructions.
In GNU Emacs 23.1.50.1 (i686-pc-linux-gnu, GTK+ Version 2.12.12)
of 2009-09-29 on localhost.localdomain
Windowing system distributor `The X.Org Foundation', version 11.0.10502000
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_US.utf8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default enable-multibyte-characters: t
Major mode: Debugger
Minor modes in effect:
shell-dirtrack-mode: t
tooltip-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
global-auto-composition-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
C-x C-f C-a C-k / n . 1 0 . 3 . r h 7 3 : / t m
p / 1 p <backspace> <backspace> p 1 C-a C-k C-y . c
<tab> <tab> <return> <escape> x g d b <return> <backspace>
<backspace> C-y <return> <escape> x r e p o r t - e
m <tab> <return>
Recent messages:
Tramp: Opening connection for n.10.3.rh73 using scp...
Tramp: Waiting 60s for local shell to come up...
Tramp: Sending command `ssh n.10.3.rh73 -q -e none && exit || exit'
Tramp: Waiting for prompts from remote shell
Tramp: Found remote shell prompt on `n.10.3.rh73'
Tramp: Opening connection for n.10.3.rh73 using scp...
Tramp: Waiting 60s for local shell to come up...
Tramp: Sending command `ssh n.10.3.rh73 -q -e none && exit || exit'
Tramp: Waiting for prompts from remote shell
Tramp: Found remote shell prompt on `n.10.3.rh73'
shell-quote-argument: Wrong type argument: stringp, nil
Load-path shadows:
None found.
^ permalink raw reply [flat|nested] 3+ messages in thread
* bug#4604: 23.1.50; tramp + remote debugging works no longer
2009-09-30 16:27 bug#4604: 23.1.50; tramp + remote debugging works no longer Michal
@ 2009-10-01 3:14 ` Nick Roberts
[not found] ` <mailman.7818.1254367639.2239.bug-gnu-emacs@gnu.org>
1 sibling, 0 replies; 3+ messages in thread
From: Nick Roberts @ 2009-10-01 3:14 UTC (permalink / raw)
To: Michal, 4604; +Cc: emacs-pretest-bug
Remote debugging generally means that the program and the debugger run on
different machines (see the Emacs or GDB manual). Tramp just allows you debug
programs on remote hosts
> I just upgraded from emacs 23.1 (version from web site, not from cvs) to 23.1.50.1.
> Then tried to debug some simple program:
> M-x gdb: gdb -i=mi /n.10.3.rh73:/tmp/p1
>
> failed as You can see.
>
> Additionaly I just invoked it again, this time with "debug-on-error". This is result:
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
> string-match("[^-0-9a-zA-Z_./]" nil 0)
> shell-quote-argument(nil)
> tramp-shell-quote-argument(nil)
> mapconcat(tramp-shell-quote-argument (nil) " ")
> tramp-handle-start-file-process("gdb-inferior" #<buffer limbo> nil)
> apply(tramp-handle-start-file-process ("gdb-inferior" #<buffer limbo> nil))
> tramp-sh-file-name-handler(start-file-process "gdb-inferior" #<buffer limbo> nil)
> apply(tramp-sh-file-name-handler start-file-process ("gdb-inferior" #<buffer limbo> nil))
> tramp-file-name-handler(start-file-process "gdb-inferior" #<buffer limbo> nil)
> apply(tramp-file-name-handler start-file-process "gdb-inferior" #<buffer limbo> nil nil)
> start-file-process("gdb-inferior" #<buffer limbo> nil)
> apply(start-file-process "gdb-inferior" #<buffer limbo> nil nil)
> comint-exec-1("gdb-inferior" #<buffer limbo> nil nil)
> comint-exec(#<buffer limbo> "gdb-inferior" nil nil nil)
> make-comint-in-buffer("gdb-inferior" #<buffer limbo> nil)
> gdb-inferior-io-mode()
> gdb-get-buffer-create(gdb-inferior-io)
Yes, it appears to be broken now. Emacs now lets GDB to take control of the
terminal associated with the I/O buffer for it's own child process (the
program being debugged)and always has a separate I/O buffer. In fact, it
looks like previously GDB in Emacs didn't work with tramp when it had a
separate I/O buffer (gdb-use-separate-io-buffer is t).
PROGRAM is nil in make-comint-in-buffer (third arg - also see start-process)
which means just create a pty.
> gdb-init-1()
> gdb-update()
> gdb("gdb -i=mi /n.10.3.rh73:/tmp/p1")
> call-interactively(gdb t nil)
> execute-extended-command(nil)
> call-interactively(execute-extended-command nil nil)
>
> in previous emacs I used to do:
> 1) visit /n.10.3.rh73:/tmp directory
> 2) M-x gdb: gdb --annotate=3 ./p1
>
> for emacs 23.1.50.1 I also tried this command, but no success.
That must have been in emacs 23.1. For now, you're better off using that version
with tramp ... or you can always try to write a patch for 23.1.50. That would be
great!
--
Nick http://users.snap.net.nz/~nickrob
^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <mailman.7818.1254367639.2239.bug-gnu-emacs@gnu.org>]
* bug#4604: 23.1.50; tramp + remote debugging works no longer
[not found] ` <mailman.7818.1254367639.2239.bug-gnu-emacs@gnu.org>
@ 2009-10-02 13:46 ` Michael Albinus
0 siblings, 0 replies; 3+ messages in thread
From: Michael Albinus @ 2009-10-02 13:46 UTC (permalink / raw)
To: Nick Roberts; +Cc: 4604, Michal
nickrob@snap.net.nz (Nick Roberts) writes:
> > start-file-process("gdb-inferior" #<buffer limbo> nil)
> > apply(start-file-process "gdb-inferior" #<buffer limbo> nil nil)
> > comint-exec-1("gdb-inferior" #<buffer limbo> nil nil)
> > comint-exec(#<buffer limbo> "gdb-inferior" nil nil nil)
> > make-comint-in-buffer("gdb-inferior" #<buffer limbo> nil)
> > gdb-inferior-io-mode()
> > gdb-get-buffer-create(gdb-inferior-io)
>
> Yes, it appears to be broken now. Emacs now lets GDB to take control of the
> terminal associated with the I/O buffer for it's own child process (the
> program being debugged)and always has a separate I/O buffer. In fact, it
> looks like previously GDB in Emacs didn't work with tramp when it had a
> separate I/O buffer (gdb-use-separate-io-buffer is t).
>
> PROGRAM is nil in make-comint-in-buffer (third arg - also see start-process)
> which means just create a pty.
Tramp's start-file-process implementation does not support ptys. And I
have no idea how to implement it.
For the time being, I will add a check for PROGRAM, resulting in an
error when it is nil. No solution, of course, but a more precise
indicator.
> That must have been in emacs 23.1. For now, you're better off using that version
> with tramp ... or you can always try to write a patch for 23.1.50. That would be
> great!
I would appreciate any patch for this! Or at least proposals how to implement.
Best regards, Michael.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-10-02 13:46 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-30 16:27 bug#4604: 23.1.50; tramp + remote debugging works no longer Michal
2009-10-01 3:14 ` Nick Roberts
[not found] ` <mailman.7818.1254367639.2239.bug-gnu-emacs@gnu.org>
2009-10-02 13:46 ` Michael Albinus
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.