aboutsummaryrefslogtreecommitdiff
path: root/common/str.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'common/str.cpp')
-rw-r--r--common/str.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/common/str.cpp b/common/str.cpp
index b2c9a7cdbf..a415e376c9 100644
--- a/common/str.cpp
+++ b/common/str.cpp
@@ -605,13 +605,18 @@ bool matchString(const char *str, const char *pat) {
for (;;) {
switch (*pat) {
case '*':
+ // Record pattern / string possition for backtracking
p = ++pat;
q = str;
+ // If pattern ended with * -> match
+ if (!*pat)
+ return true;
break;
default:
if (*pat != *str) {
if (p) {
+ // No match, oops -> try to backtrack
pat = p;
str = ++q;
if (!*str)