[PATCH] Fix bug 15293 Ignore-count does not work properly with dprintf
Hui Zhu
teawater@gmail.com
Fri Apr 19 14:31:00 GMT 2013
Hi,
This patch fix http://sourceware.org/bugzilla/show_bug.cgi?id=15293
Also I update dprintf.exp for this bug.
Please help me review it.
Thanks,
Hui
2013-04-19 Hui Zhu <hui@codesourcery.com>
PR gdb/15293
* breakpoint.c (bpstat_what): Add BPSTAT_WHAT_SINGLE to bp_dprintf.
2013-04-19 Hui Zhu <hui@codesourcery.com>
PR gdb/15293
* gdb.base/dprintf.exp: Add ignore command.
-------------- next part --------------
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -5529,7 +5529,10 @@ bpstat_what (bpstat bs_head)
break;
case bp_dprintf:
- this_action = BPSTAT_WHAT_STOP_SILENT;
+ if (bs->stop)
+ this_action = BPSTAT_WHAT_STOP_SILENT;
+ else
+ this_action = BPSTAT_WHAT_SINGLE;
break;
default:
-------------- next part --------------
--- a/gdb/testsuite/gdb.base/dprintf.exp
+++ b/gdb/testsuite/gdb.base/dprintf.exp
@@ -40,6 +40,8 @@ gdb_breakpoint "main"
gdb_test "dprintf foo,\"At foo entry\\n\"" \
"Dprintf .*"
+gdb_test "ignore \$bpnum 1" ".*Will ignore next crossing of breakpoint.*"
+
gdb_test "dprintf $dp_location1,\"arg=%d, g=%d\\n\", arg, g" \
"Dprintf .*"
@@ -61,7 +63,7 @@ gdb_run_cmd
gdb_test "" "Breakpoint"
-gdb_test "continue" "At foo entry.*arg=1234, g=1234.*" "1st dprintf, gdb"
+gdb_test "continue" "arg=1234, g=1234.*" "1st dprintf, gdb"
gdb_test "continue" "At foo entry.*arg=1235, g=2222.*" "2nd dprintf, gdb"
More information about the Gdb-patches
mailing list