aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2expr.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2011-07-08 16:02:59 +0000
committerTom Tromey <tromey@redhat.com>2011-07-08 16:02:59 +0000
commite0e9434c89d87e12220d5efd8d56ac83bdd26dfa (patch)
treef2a87951b9bef10392df7ee8f6c57c3a5b5b2797 /gdb/dwarf2expr.c
parentae9cd41118fbb6452b2bcb361dcff34db8933e2e (diff)
* dwarf2expr.c (execute_stack_op): Add QUIT.
Diffstat (limited to 'gdb/dwarf2expr.c')
-rw-r--r--gdb/dwarf2expr.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c
index c5ea85da80..4522eb8b0f 100644
--- a/gdb/dwarf2expr.c
+++ b/gdb/dwarf2expr.c
@@ -521,6 +521,10 @@ execute_stack_op (struct dwarf_expr_context *ctx,
LONGEST offset;
struct value *result_val = NULL;
+ /* The DWARF expression might have a bug causing an infinite
+ loop. In that case, quitting is the only way out. */
+ QUIT;
+
switch (op)
{
case DW_OP_lit0: