aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiva Chandra <sivachandra@chromium.org>2014-11-29 09:38:33 -0800
committerSiva Chandra <sivachandra@chromium.org>2014-11-29 15:47:39 -0800
commit18ac6ffc9b119c8d55a1cd0339d47998076faf2b (patch)
tree6bc520d18e5f1a58aa626fc29cc4b31982887b29
parent4072f9208f12fdd60e68c73807fed4624607d290 (diff)
downloadgdb-18ac6ffc9b119c8d55a1cd0339d47998076faf2b.zip
gdb-18ac6ffc9b119c8d55a1cd0339d47998076faf2b.tar.gz
gdb-18ac6ffc9b119c8d55a1cd0339d47998076faf2b.tar.bz2
Check that thread stack temps are not already enabled before enabling them.
This fixes a regression introduced by 6c659fc2c7cd2da6d2b9a3d7c38597ad3821832a. gdb/ChangeLog: * eval.c (evaluate_subexp): Check that thread stack temporaries are not already enabled before enabling them.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/eval.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index c35f0ae..4112438 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2014-11-29 Siva Chandra Reddy <sivachandra@google.com>
+
+ * eval.c (evaluate_subexp): Check that the thread stack temporaries
+ are not already enabled before enabling them.
+
2014-11-29 Yao Qi <yao@codesourcery.com>
* arm-tdep.c (arm_analyze_prologue): Move local variables
diff --git a/gdb/eval.c b/gdb/eval.c
index a13793c..c2ab879 100644
--- a/gdb/eval.c
+++ b/gdb/eval.c
@@ -69,7 +69,8 @@ evaluate_subexp (struct type *expect_type, struct expression *exp,
int cleanup_temps = 0;
if (*pos == 0 && target_has_execution
- && exp->language_defn->la_language == language_cplus)
+ && exp->language_defn->la_language == language_cplus
+ && !thread_stack_temporaries_enabled_p (inferior_ptid))
{
cleanups = enable_thread_stack_temporaries (inferior_ptid);
cleanup_temps = 1;