[groonga-dev,00156] grn_pat_scan()でGRN_STR_NORMALIZEが抜けている?

Back to archive index

Kouhei Sutou kou****@clear*****
2009年 8月 11日 (火) 23:26:32 JST


須藤です。

よくわかっていないのですが、grn_pat_scan()の中で
grn_str_open()しているところは、GRN_STR_NORMALIZEも指定した
方がよいのではないでしょうか?
そうしないと、望んだものがマッチしないような気がします。

-- 
須藤 功平 <kou****@clear*****>
株式会社クリアコード (http://www.clear-code.com/)

diff --git a/lib/pat.c b/lib/pat.c
index 3c11f22..50f4f99 100644
--- a/lib/pat.c
+++ b/lib/pat.c
@@ -1343,7 +1343,8 @@ grn_pat_scan(grn_ctx *ctx, grn_pat *pat, const char *str, unsigned int str_len,
   int n = 0;
   grn_id tid;
   if (pat->obj.header.flags & GRN_OBJ_KEY_NORMALIZE) {
-    grn_str *nstr = grn_str_open(ctx, str, str_len, GRN_STR_WITH_CHECKS);
+    grn_str *nstr = grn_str_open(ctx, str, str_len,
+                                 GRN_STR_NORMALIZE | GRN_STR_WITH_CHECKS);
     if (nstr) {
       int16_t *cp = nstr->checks;
       unsigned int offset = 0, offset0 = 0;




groonga-dev メーリングリストの案内
Back to archive index