This is the mail archive of the gdb-cvs@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]

src/gdb ChangeLog utils.c utils.h cli/cli-cmds ...


CVSROOT:	/cvs/src
Module name:	src
Changes by:	brobecke@sourceware.org	2013-10-11 08:23:11

Modified files:
	gdb            : ChangeLog utils.c utils.h 
	gdb/cli        : cli-cmds.c 
	gdb/testsuite  : ChangeLog 
	gdb/testsuite/gdb.base: source.exp 
Added files:
	gdb/testsuite/gdb.base: source-nofile.gdb 

Log message:
	warn if "source" fails to open the file when from_tty == 0
	
	Consider the following example:
	
	% gdb -q -batch -ex 'source nonexistant-file'
	[nothing]
	
	One would have at least expected the debugger to warn about
	not finding the file, similar to the error shown when using
	a more interactive mode. Eg:
	
	(gdb) source nonexistant-file
	nonexistant-file: No such file or directory.
	
	Not raising an error appears to be intentional, presumably in order
	to prevent this situation from stoping the execution of a GDB script.
	But the lack of at least a warning makes it harder for a user to
	diagnose any issue, if the file was expected to be there and readable.
	
	This patch adds a warning in that case:
	
	% gdb -q -batch -ex 'source nonexistant-file'
	warning: nonexistant-file: No such file or directory.
	
	gdb/ChangeLog:
	
	* utils.h (perror_warning_with_name): Add declaration.
	* utils.c (perror_warning_with_name): New function.
	* cli/cli-cmds.c (source_script_with_search): Add call to
	perror_warning_with_name if from_tty is nul.
	
	gdb/testsuite/ChangeLog:
	
	* gdb.base/source-nofile.gdb: New file.
	* gdb.base/source.exp: Add two tests verifying the behavior when
	the "source" command is given a non-existant filename.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/ChangeLog.diff?cvsroot=src&r1=1.16093&r2=1.16094
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/utils.c.diff?cvsroot=src&r1=1.308&r2=1.309
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/utils.h.diff?cvsroot=src&r1=1.12&r2=1.13
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/cli/cli-cmds.c.diff?cvsroot=src&r1=1.162&r2=1.163
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/ChangeLog.diff?cvsroot=src&r1=1.3832&r2=1.3833
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/gdb.base/source-nofile.gdb.diff?cvsroot=src&r1=NONE&r2=1.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/testsuite/gdb.base/source.exp.diff?cvsroot=src&r1=1.20&r2=1.21


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