From 1b71f8f81631bb1bf3bfe3c28764b82e60d61252 Mon Sep 17 00:00:00 2001 From: mame Date: Thu, 16 Apr 2009 15:48:25 +0000 Subject: * dir.c (bracket): fix escape handling for range character in bracket of fnmatch pattern. e.g., '[a\-c]' should not match 'b'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ dir.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index acb469bb52..b386de37a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Apr 17 00:45:09 2009 Yusuke Endoh + + * dir.c (bracket): fix escape handling for range character in bracket + of fnmatch pattern. e.g., '[a\-c]' should not match 'b'. + Thu Apr 16 23:09:03 2009 Tanaka Akira * class.c (rb_define_method_id): use rb_define_notimplement_method_id diff --git a/dir.c b/dir.c index be642d38eb..ffe63cf88b 100644 --- a/dir.c +++ b/dir.c @@ -109,7 +109,7 @@ bracket( t1++; if (!*t1) return NULL; - p += (r = rb_enc_mbclen(t1, pend, enc)); + p = t1 + (r = rb_enc_mbclen(t1, pend, enc)); if (p[0] == '-' && p[1] != ']') { const char *t2 = p + 1; int r2; -- cgit v1.2.3