summaryrefslogtreecommitdiff
path: root/gdb/eval.c
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 /gdb/eval.c
parent4072f9208f12fdd60e68c73807fed4624607d290 (diff)
downloadbinutils-gdb-18ac6ffc9b119c8d55a1cd0339d47998076faf2b.tar.gz
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.
Diffstat (limited to 'gdb/eval.c')
-rw-r--r--gdb/eval.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gdb/eval.c b/gdb/eval.c
index a13793ca728..c2ab87986bc 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;