This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gdbserver with reversed arguments goes into an infinite loop


On Wed, Dec 13, 2006 at 10:58:14AM +0100, Denis PILAT wrote:
> I've found that if you revert the argument of gdbserver, means writing 
> the program's name before the COMM argument, it goes into an infinite 
> loop, and as the CTRL+C does not work, you have to kill the process from 
> an other shell.
> 
> In gdbserver/server.c, the loop in question does the remote_open on the 
> wrong passed argument (argv[1]) which unfortunately is the binary file 
> you'd expect to open so remote_open does not exit on error.
> 
> I think either we could check that we pass correct argument before using 
> start_inferior(), this is executing before the loop. The bellow patch is 
> in that sense.
> 
> Or we find a way to exit the loop by adding a test in it. May be by 
> adding something in remote_open to let it fail.

I doubt it's in an infinite loop.  It's probably sleeping, "waiting"
for a connection.  We ought to allow C-c when no debugger is
connected yet.  It'd be nice if remote_open wouldn't open ordinary
files, too.

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]