Project

General

Profile

Backport(バックポート) #1452

壊れたopタグの後ろに改行が含まれると意図しないタグが作成される

Added by Shinichi Urabe about 11 years ago. Updated about 11 years ago.

Status:
Fixed(完了)
Priority:
Normal(通常)
Target version:
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&lt;br">
<span class="op_u">てててて<span class="op_u&lt;br">

<span class="op_s">てててて<span class="op_s&lt;br">
<span class="op_i">てててて<span class="op_i&lt;br">
<span class="op_font" style="font-size:large">てててて&lt;<span class="op_font&lt;br">
<span class="op_font" style="font-size:xx-small">てててて&lt;/oont&gt;<br />
<span class="op_font" style="color:#FF0000;">ててててp:font&gt;<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

Related to OpenPNE 3 - Bug(バグ) #1451: 壊れたopタグの後ろに改行が含まれると意図しないタグが作成される Fixed(完了) 2010-07-29
Related to OpenPNE 3 - Backport(バックポート) #1439: #975の修正で正規表現のマッチングが不十分である Fixed(完了) 2010-07-27

Associated revisions

Revision b5f95163 (diff)
Added by Shinichi Urabe about 11 years ago

ignore html tag in toHtml() replace method (fixes #1452, BP from ##1451)

Revision 4eecc88f (diff)
Added by Shinichi Urabe about 11 years ago

Fixed regular expression to exclude a string containing the configuration of the tag (fixes #1452, BP from #1451)

Revision ee682d4c (diff)
Added by Shinichi Urabe about 11 years ago

Fixed regular expression (fixes #1452, BP from #1451)

Revision bf92c6ae (diff)
Added by Shinichi Urabe about 11 years ago

add unit test for opWidgetFormRichTextareaOpenPNETest::toHtml() (fixes #1452, BP from #1451)

Revision 18ef45f2 (diff)
Added by Shinichi Urabe about 11 years ago

Remove unnecessary Meta-character (fixes #1452, BP from #1451)

History

#1 Updated by Shinichi Urabe about 11 years ago

  • Assignee set to Shinichi Urabe

#2 Updated by Shinichi Urabe about 11 years ago

  • Status changed from New(新規) to Pending Review(レビュー待ち)
  • % Done changed from 0 to 50

更新履歴 b5f951632d2e9712b22d749695fbebc9a4a4ea8a で適用されました。

#3 Updated by Rimpei Ogawa about 11 years ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
<op:i<op:i>
  ↓
<span class="op_i&lt;op_i"></span>
となってしまいます。

#4 Updated by Shinichi Urabe about 11 years ago

  • Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)

更新履歴 4eecc88f5999e6fdac689b86381f32e32987ac49 で適用されました。

#5 Updated by Rimpei Ogawa about 11 years ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

[^(?:<.?>)][^] 内の文字を除外しているだけです。 : が含まれているので op:i に引っかからずたまたま上手くいっているだけです。

修正前が上手くいっていないのは $string&lt;op:i&lt;op:i&gt; だからです。

#6 Updated by Shinichi Urabe about 11 years ago

  • Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)

更新履歴 ee682d4c93c6d627bb32b52c00fcadfc16f7dc73 で適用されました。

#7 Updated by Shinichi Urabe about 11 years ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

ユニットテストがない

#8 Updated by Shinichi Urabe about 11 years ago

  • Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)

更新履歴 bf92c6aecade2a797b9cb16e25ef2816d8d2022a で適用されました。

#9 Updated by Rimpei Ogawa about 11 years ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

以下の部分が不要ではないかと思います。

  • op:\w+??
  • (op:\w+?)? の最後の ?
  • (?:(?!&lt;|<).)*? の最後の ?

#10 Updated by Shinichi Urabe about 11 years ago

  • Status changed from Rejected(差し戻し) to Pending Review(レビュー待ち)

更新履歴 18ef45f2f8400f689a7c352e27adca9efd710e6c で適用されました。

#11 Updated by Rimpei Ogawa about 11 years ago

  • Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

#12 Updated by Mutsumi Imamura about 11 years ago

確認しました。テストOKです。

#13 Updated by Mutsumi Imamura about 11 years ago

  • Status changed from Pending Testing(テスト待ち) to Fixed(完了)
  • % Done changed from 70 to 100

Also available in: Atom PDF