From bccbefd2aab863e24a122ea686cbd263041b4709 Mon Sep 17 00:00:00 2001
From: Jan Kratochvil <jan.kratochvil@redhat.com>
Date: Tue, 17 Apr 2012 15:54:35 +0000
Subject: gdb/ 	New option "set auto-load safe-path". 	* NEWS: New commands
 "set auto-load safe-path" 	and "show auto-load safe-path". 	*
 auto-load.c: Include gdb_vecs.h, readline/tilde.h and completer.h. 
 (auto_load_safe_path, auto_load_safe_path_vec) 
 (auto_load_safe_path_vec_update, set_auto_load_safe_path) 
 (show_auto_load_safe_path, add_auto_load_safe_path, filename_is_in_dir) 
 (filename_is_in_auto_load_safe_path_vec, file_is_auto_load_safe): New. 
 (source_gdb_script_for_objfile): New variable is_safe.  Call 
 file_is_auto_load_safe.  Return if it is not. 	(struct loaded_script): New
 field loaded. 	(maybe_add_script): Add parameter loaded.  Initialize SLOT
 with it. 	(print_script): Use LOADED indicator instead of FULL_PATH. 
 Change 	output "Missing" to "No". 	(_initialize_auto_load): New
 variable cmd.  Initialize 	auto_load_safe_path.  Register "set auto-load
 safe-path", 	"show auto-load safe-path" and "add-auto-load-safe-path". 
 * auto-load.h (maybe_add_script): Add parameter loaded. 
 (file_is_auto_load_safe): New declaration. 	* config.in: Regenerate. 
 * configure: Regenerate. 	* configure.ac: New parameters
 --with-auto-load-safe-path 	and --without-auto-load-safe-path. 	*
 linux-thread-db.c (try_thread_db_load_from_pdir_1) 
 (try_thread_db_load_from_dir): Check file_is_auto_load_safe first. 	*
 main.c (captured_main): Check file_is_auto_load_safe for 	LOCAL_GDBINIT.
 	* python/py-auto-load.c (gdbpy_load_auto_script_for_objfile): New 
 variable is_safe.  Call file_is_auto_load_safe.  Return if it is not. 
 (source_section_scripts): Call file_is_auto_load_safe.  Return if it is 
 not.

gdb/doc/
	New option "set auto-load safe-path".
	* gdb.texinfo (Auto-loading): Extend the "show auto-load"
	and "info auto-load" examples for safe-path.  Put there also references
	for "set auto-load safe-path" and "show auto-load safe-path".
	New menu item for Auto-loading safe path.
	(Auto-loading safe path): New node.
	(Python Auto-loading): Update the expected output from "Missing"
	to "No".

gdb/testsuite/
	New option "set auto-load safe-path".
	* gdb.python/py-objfile-script.exp (set auto-load safe-path): New.
	* gdb.python/py-section-script.exp (set auto-load safe-path): New.
---
 gdb/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

(limited to 'gdb/main.c')

diff --git a/gdb/main.c b/gdb/main.c
index 30a27006e33..48e522eb618 100644
--- a/gdb/main.c
+++ b/gdb/main.c
@@ -944,7 +944,8 @@ captured_main (void *data)
     {
       auto_load_local_gdbinit_pathname = gdb_realpath (local_gdbinit);
 
-      if (!inhibit_gdbinit && auto_load_local_gdbinit)
+      if (!inhibit_gdbinit && auto_load_local_gdbinit
+	  && file_is_auto_load_safe (local_gdbinit))
 	{
 	  auto_load_local_gdbinit_loaded = 1;
 
-- 
cgit v1.2.1