summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-05-17 01:40:34 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-05-17 01:40:34 +0000
commitf88481740a8f633ea02067baa00eaf94a29421fb (patch)
tree3d5f383e7a3155e1993448423384c151f45958ed
parent47f4eee420d3aaa4d3ff028dad6e0c249b255467 (diff)
dir.c: set PLAIN for non-magical
* dir.c (glob_make_pattern): set PLAIN for non-magical path to skip parts which not need to glob. [ruby-core:61552] [Bug #9648] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--dir.c2
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 3fac0f90a1..360b5a1419 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,8 @@
-Sat May 17 10:05:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
+Sat May 17 10:40:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * dir.c (glob_make_pattern): set PLAIN for non-magical path to
+ skip parts which not need to glob.
+ [ruby-core:61552] [Bug #9648]
* dir.c (has_magic): return ALPHA at alphabetical name regardless
FNM_CASEFOLD flag.
diff --git a/dir.c b/dir.c
index 0184b1863a..064609c8d8 100644
--- a/dir.c
+++ b/dir.c
@@ -1229,7 +1229,7 @@ glob_make_pattern(const char *p, const char *e, int flags, rb_encoding *enc)
}
memcpy(buf, p, m-p);
buf[m-p] = '\0';
- tmp->type = magic > MAGICAL ? MAGICAL : magic;
+ tmp->type = magic > MAGICAL ? MAGICAL : magic > non_magic ? magic : PLAIN;
tmp->str = buf;
if (*m) {
dirsep = 1;