Backport(バックポート) #1452
壊れたopタグの後ろに改行が含まれると意図しないタグが作成される
Start date:
2010-07-29
Due date:
% Done:
100%
Description
現象¶
<op:b>てててて<op:b <op:u>てててて<op:u <op:s>てててて<op:s <op:i>てててて<op:i <op:font size="5">てててて<<op:font <op:font size="1">てててて</oont> <op:font color="#FF0000">ててててp:font> てててて
↓ HTML タグに置換後
<span class="op_b">てててて<span class="op_b<br"> <span class="op_u">てててて<span class="op_u<br"> <span class="op_s">てててて<span class="op_s<br"> <span class="op_i">てててて<span class="op_i<br"> <span class="op_font" style="font-size:large">てててて<<span class="op_font<br"> <span class="op_font" style="font-size:xx-small">てててて</oont><br /> <span class="op_font" style="color:#FF0000;">ててててp:font><br /> てててて</span></span></span></span></span></span></span></span></span></span></span></span>
原因¶
バグが発生した原因を記入
修正内容¶
正規表現を op: の後を 文字数字ハイフンとし 属性の中は 開始タグ以外の文字列とマッチするように修正
正しい結果:パターン <op:[改行] → そのまま表示される <op:i color="[改行]#333333"> → そのまま表示される <op:<op>aa> → そのまま表示される <op:i<op:i> → <op:i のみ表示される <op:font color="<op:s>"> → <op:font color=""> 最後の "> に打ち消し線
Related issues
History
#1
Updated by Shinichi Urabe over 12 years ago
- Assignee set to Shinichi Urabe
#2
Updated by Shinichi Urabe over 12 years ago
- Status changed from New(新規) to Pending Review(レビュー待ち)
- % Done changed from 0 to 50
更新履歴 b5f951632d2e9712b22d749695fbebc9a4a4ea8a で適用されました。
#3
Updated by Rimpei Ogawa over 12 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
<op:i<op:i>↓
<span class="op_i<op_i"></span>となってしまいます。
#4
Updated by Shinichi Urabe over 12 years ago
- Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)
更新履歴 4eecc88f5999e6fdac689b86381f32e32987ac49 で適用されました。
#5
Updated by Rimpei Ogawa over 12 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
[^(?:<.?>)]
は [^]
内の文字を除外しているだけです。 :
が含まれているので op:i に引っかからずたまたま上手くいっているだけです。
修正前が上手くいっていないのは $string
が <op:i<op:i>
だからです。
#6
Updated by Shinichi Urabe over 12 years ago
- Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)
更新履歴 ee682d4c93c6d627bb32b52c00fcadfc16f7dc73 で適用されました。
#7
Updated by Shinichi Urabe over 12 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
ユニットテストがない
#8
Updated by Shinichi Urabe over 12 years ago
- Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)
更新履歴 bf92c6aecade2a797b9cb16e25ef2816d8d2022a で適用されました。
#9
Updated by Rimpei Ogawa over 12 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
以下の部分が不要ではないかと思います。
op:\w+?
の?
(op:\w+?)?
の最後の?
(?:(?!<|<).)*?
の最後の?
#10
Updated by Shinichi Urabe over 12 years ago
- Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)
更新履歴 18ef45f2f8400f689a7c352e27adca9efd710e6c で適用されました。
#11
Updated by Rimpei Ogawa over 12 years ago
- Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
- % Done changed from 50 to 70
#12
Updated by Mutsumi Imamura over 12 years ago
確認しました。テストOKです。
#13
Updated by Mutsumi Imamura over 12 years ago
- Status changed from Pending Testing(テスト待ち) to Fixed(完了)
- % Done changed from 70 to 100