summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mysql.com>2009-02-10 19:13:24 +0100
committerSergei Golubchik <serg@mysql.com>2009-02-10 19:13:24 +0100
commit2753891951f605e2b9d08860098aa0f8651087ec (patch)
treeb01dd73c46d0f9cdf698b0f0104f888860a01a92
parentceb9e92ffbdcaa66038bf632f0027505197466aa (diff)
downloadmariadb-git-2753891951f605e2b9d08860098aa0f8651087ec.tar.gz
Bug#42735: dbug treated duplicate keywords (-#d,kw,kw) incorrectly
-rw-r--r--dbug/dbug.c4
-rwxr-xr-xdbug/tests-t.pl11
2 files changed, 14 insertions, 1 deletions
diff --git a/dbug/dbug.c b/dbug/dbug.c
index fc2faf867e4..1e18fb3eab0 100644
--- a/dbug/dbug.c
+++ b/dbug/dbug.c
@@ -1451,7 +1451,9 @@ next:
{
if (!strncmp((*cur)->str, start, len))
{
- if (todo == EXCLUDE)
+ if ((*cur)->flags & todo) /* same action ? */
+ (*cur)->flags|= subdir; /* just merge the SUBDIR flag */
+ else if (todo == EXCLUDE)
{
struct link *delme=*cur;
*cur=(*cur)->next_link;
diff --git a/dbug/tests-t.pl b/dbug/tests-t.pl
index a4227e8aa07..de9ed6f6ab9 100755
--- a/dbug/tests-t.pl
+++ b/dbug/tests-t.pl
@@ -483,3 +483,14 @@ func2: info: s=ko
| | <func3
| <func2
<main
+# repeated keyword
+% ./tests d:-d,info,info
+=> execute
+=> evaluate: ON
+=> evaluate_if: OFF
+main: explain: dbug explained: d:-d,info
+% ./tests d:-d,info/,info
+=> execute
+=> evaluate: ON
+=> evaluate_if: OFF
+main: explain: dbug explained: d:-d,info/