[groonga-dev,00247] grn_snip_open()のflagの値によっては不適切にtagが挿入される

Back to archive index

Ryo Onodera onode****@clear*****
2009年 10月 26日 (月) 14:11:39 JST


小野寺です。

grn_snip_open()に渡すflagsの値によって、不適切な場所にtagが挿入されてし
まうバグを発見しました。cutterの出力の抜粋になりますが、具体的には出力が
次の様になってしまいます。

expected: <Groonga is an [[embeddable]] fulltext 
  actual: <Groonga is an[[ embeddable]] fulltext

詳しく調べるために、grn_snip_open()に渡せる3つのflagの組み合わせ8通り全
てを試すテストを書いたところ、GRN_SNIP_NORMALIZEが他のフラグと組み合わさ
れた時の挙動が怪しいです。GRN_SNIP_NORMALIZEが有効でない残り4通りの挙動
は全て同じで上のexpected:と同じになります。

GRN_SNIP_NORMALIZE単体あるいはGRN_SNIP_NORMALIZEとGRN_SNIP_COPY_TAGの時
に、このバグは発生します。

しかしGRN_SNIP_NORMALIZEの他にGRN_SNIP_SKIP_LEADING_SPACESが組み合わされ
た時は、このバグは発生しません。

なぜこうなるかの原因は特定できていません。そして、これがテストを追加する
コミットです。

add test_proper_tag_insertion()
http://github.com/ryoqun/groonga/commit/6eca72392c307cc4e3af825db35c14700c51384c

-- 
小野寺 諒 <onode****@clear*****>
株式会社クリアコード (http://www.clear-code.com/)




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