summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Evans <xdje42@gmail.com>2014-03-22 02:44:39 -0400
committerDoug Evans <xdje42@gmail.com>2014-03-22 02:44:39 -0400
commitfeef67abfaf328082c445b9d25696d44551478d1 (patch)
treea5e609759679711611a336ac269232e5e2b13023
parentecebef6a9acbca2f98e1ed64b986d792c6933ec5 (diff)
downloadbinutils-gdb-feef67abfaf328082c445b9d25696d44551478d1.tar.gz
* extension.c (eval_ext_lang_from_control_command): Avoid dereferencing
NULL pointer. testsuite/ * gdb.python/python.exp (python not supported): Verify multi-line python command issues an error.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/extension.c3
-rw-r--r--gdb/testsuite/ChangeLog5
-rw-r--r--gdb/testsuite/gdb.python/python.exp7
4 files changed, 19 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0aec7b92304..a1e8c34a3f1 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2014-03-21 Daniel Gutson <daniel.gutson@tallertechnologies.com>
+
+ * extension.c (eval_ext_lang_from_control_command): Avoid dereferencing
+ NULL pointer.
+
2014-03-21 Pedro Alves <palves@redhat.com>
* infrun.c (normal_stop): Extend comment.
diff --git a/gdb/extension.c b/gdb/extension.c
index c2f502b8305..1146cc7d03c 100644
--- a/gdb/extension.c
+++ b/gdb/extension.c
@@ -342,7 +342,8 @@ eval_ext_lang_from_control_command (struct command_line *cmd)
{
if (extlang->cli_control_type == cmd->control_type)
{
- if (extlang->ops->eval_from_control_command != NULL)
+ if (extlang->ops != NULL
+ && extlang->ops->eval_from_control_command != NULL)
{
extlang->ops->eval_from_control_command (extlang, cmd);
return;
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index aad07fdb54a..f1f06799e9d 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2014-03-22 Doug Evans <xdje42@gmail.com>
+
+ * gdb.python/python.exp (python not supported): Verify multi-line
+ python command issues an error.
+
2014-03-21 Maciej W. Rozycki <macro@codesourcery.com>
* gdb.threads/thread-specific.exp: Handle the lack of usable
diff --git a/gdb/testsuite/gdb.python/python.exp b/gdb/testsuite/gdb.python/python.exp
index a470427fd80..5b8d34a0ab2 100644
--- a/gdb/testsuite/gdb.python/python.exp
+++ b/gdb/testsuite/gdb.python/python.exp
@@ -41,6 +41,13 @@ gdb_test_multiple "python print (23)" "verify python support" {
gdb_test "source $srcdir/$subdir/source2.py" \
"Error in sourced command file:.*" \
"source source2.py when python disabled"
+
+ # Verify multi-line python commands cause an error.
+ gdb_py_test_multiple "multi-line python command" \
+ "python" "" \
+ "print (23)" "" \
+ "end" "not supported.*"
+
return -1
}
-re "$gdb_prompt $" {}