Fix PR python/20129 - use of non-existing variable
authorTom Tromey <tom@tromey.com>
Mon, 6 Jun 2016 17:21:15 +0000 (11:21 -0600)
committerTom Tromey <tom@tromey.com>
Wed, 29 Jun 2016 16:18:38 +0000 (10:18 -0600)
PR python/20129 concerns the error message one gets from a command
like "disable frame-filter global NoSuchFilter".  Currently this
throws a second, unexpected, exception due to the use of a
non-existing variable named "name".

This patch adds regression tests and fixes a couple of spots to use
the correct variable name.

Built and regtested on x86-64 Fedora 23.

2016-06-29  Tom Tromey  <tom@tromey.com>

PR python/20129:
* python/lib/gdb/command/frame_filters.py (_do_enable_frame_filter)
(SetFrameFilterPriority._set_filter_priority): Use "frame_filter",
not "name".

2016-06-29  Tom Tromey  <tom@tromey.com>

PR python/20129:
* gdb.python/py-framefilter.exp: Add tests for setting priority
and disabling of non-existent frame filter.

gdb/ChangeLog
gdb/python/lib/gdb/command/frame_filters.py
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-framefilter.exp

index 6b65cc486ffb21cec357319a1f8fe65af7420047..d6054f9d16c009eb69afd1820c0fa9136cf738e0 100644 (file)
@@ -1,3 +1,10 @@
+2016-06-29  Tom Tromey  <tom@tromey.com>
+
+       PR python/20129:
+       * python/lib/gdb/command/frame_filters.py (_do_enable_frame_filter)
+       (SetFrameFilterPriority._set_filter_priority): Use "frame_filter",
+       not "name".
+
 2016-06-29  Tom Tromey  <tom@tromey.com>
 
        PR gdb/17210:
index a5fb0a6fd85b519fad2f30cac621fbb3316dab55..8d26000b6231129315b021e20fdae7a49b5adf44 100644 (file)
@@ -142,7 +142,7 @@ def _do_enable_frame_filter(command_tuple, flag):
         try:
             ff = op_list[frame_filter]
         except KeyError:
-            msg = "frame-filter '" + str(name) + "' not found."
+            msg = "frame-filter '" + str(frame_filter) + "' not found."
             raise gdb.GdbError(msg)
 
         gdb.frames.set_enabled(ff, flag)
@@ -339,7 +339,7 @@ class SetFrameFilterPriority(gdb.Command):
         try:
             ff = op_list[frame_filter]
         except KeyError:
-            msg = "frame-filter '" + str(name) + "' not found."
+            msg = "frame-filter '" + str(frame_filter) + "' not found."
             raise gdb.GdbError(msg)
 
         gdb.frames.set_priority(ff, priority)
index 9f8f40cd1f0645faf4821cacd4b4823b4fd58a43..a0aa9bff193123eddfad31307d9d9d8a34bedebe 100644 (file)
@@ -1,3 +1,9 @@
+2016-06-29  Tom Tromey  <tom@tromey.com>
+
+       PR python/20129:
+       * gdb.python/py-framefilter.exp: Add tests for setting priority
+       and disabling of non-existent frame filter.
+
 2016-06-29  Yao Qi  <yao.qi@linaro.org>
 
        * gdb.base/catch-syscall.c [__arm__]: Set unknown_syscall to
index 61afa2f7c4ed30e26c32acbff37de8b84b560a64..7abf3a91c7de50a366627bf7549ff9e8512e3bbb 100644 (file)
@@ -108,6 +108,9 @@ gdb_test "show frame-filter priority global Elider" \
 gdb_test "info frame-filter" \
     ".*1000.*Yes.*Elider.*100.*Yes.*Reverse.*10.*.*No.*Object.*1.*" \
     "info frame filter after setting priority"
+gdb_test "set frame-filter priority global NoSuchFilter 900" \
+    "frame-filter 'NoSuchFilter' not found." \
+    "set priority of a non-existing filter"
 
 # Test enable/disable
 gdb_test "info frame-filter" \
@@ -123,6 +126,9 @@ gdb_test_no_output  "enable frame-filter global Elider" \
 gdb_test "info frame-filter" \
     ".*1000.*Yes.*Elider.*100.*Yes.*Reverse.*10.*.*No.*Object.*1.*" \
     "info frame filter after reenabling frame filter"
+gdb_test "disable frame-filter global NoSuchFilter" \
+    "frame-filter 'NoSuchFilter' not found." \
+    "disable a non-existing filter"
 
 # Test no-filters
 gdb_test "bt no-filters" \