Test the interaction between GDBHISTSIZE and .gdbinit

The value inside the GDBHISTSIZE environment variable, only if valid,
should override setting the history size through one's .gdbinit file.

gdb/testsuite/ChangeLog:

	* gdb.base/gdbinit-history.exp: Test the interaction between
	setting GDBHISTSIZE and setting the history size via .gdbinit.
This commit is contained in:
Patrick Palka
2015-06-17 15:41:07 -04:00
parent c12d2c9d48
commit 74bd41ce65
2 changed files with 25 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2015-06-18 Patrick Palka <patrick@parcs.ath.cx>
* gdb.base/gdbinit-history.exp: Test the interaction between
setting GDBHISTSIZE and setting the history size via .gdbinit.
2015-06-17 Patrick Palka <patrick@parcs.ath.cx> 2015-06-17 Patrick Palka <patrick@parcs.ath.cx>
PR gdb/16999 PR gdb/16999

View File

@ -19,9 +19,10 @@
# Check that the history size is properly set to SIZE when reading the .gdbinit # Check that the history size is properly set to SIZE when reading the .gdbinit
# file located in HOME. # file located in HOME with the environment variable GDBHISTSIZE optionally
# set to GDBHISTSIZE_VAL.
proc test_gdbinit_history_setting { home size } { proc test_gdbinit_history_setting { home size { gdbhistsize_val "-" } } {
global env global env
global INTERNAL_GDBFLAGS global INTERNAL_GDBFLAGS
global srcdir global srcdir
@ -36,10 +37,19 @@ proc test_gdbinit_history_setting { home size } {
# set. # set.
unset -nocomplain env(GDBHISTSIZE) unset -nocomplain env(GDBHISTSIZE)
if { $gdbhistsize_val != "-" } {
set env(GDBHISTSIZE) $gdbhistsize_val
}
set saved_internal_gdbflags $INTERNAL_GDBFLAGS set saved_internal_gdbflags $INTERNAL_GDBFLAGS
set INTERNAL_GDBFLAGS [string map {"-nx" ""} $INTERNAL_GDBFLAGS] set INTERNAL_GDBFLAGS [string map {"-nx" ""} $INTERNAL_GDBFLAGS]
with_test_prefix "home=$home" { set prefix "home=$home"
if { $gdbhistsize_val != "-" } {
append prefix " gdbhistsize=$gdbhistsize_val"
}
with_test_prefix $prefix {
gdb_exit gdb_exit
gdb_start gdb_start
@ -54,6 +64,7 @@ proc test_gdbinit_history_setting { home size } {
set INTERNAL_GDBFLAGS $saved_internal_gdbflags set INTERNAL_GDBFLAGS $saved_internal_gdbflags
unset -nocomplain env(GDBHISTSIZE)
array set env [array get old_env] array set env [array get old_env]
} }
@ -117,3 +128,9 @@ test_gdbinit_history_setting "gdbinit-history/unlimited" "unlimited"
test_gdbinit_history_setting "gdbinit-history/zero" "0" test_gdbinit_history_setting "gdbinit-history/zero" "0"
test_no_truncation_of_unlimited_history_file test_no_truncation_of_unlimited_history_file
# A valid GDBHISTSIZE value overrides the setting inside the .gdbinit file; an
# invalid GDBHISTSIZE value is ignored, falling back on the setting inside the
# .gdbinit file.
test_gdbinit_history_setting "gdbinit-history/unlimited" "1000" "1000"
test_gdbinit_history_setting "gdbinit-history/unlimited" "unlimited" "foo"