General

Profile

rna (Ryosuke Nanba)

  • Login: rna
  • Registered on: 09/01/2018
  • Last sign in: 09/01/2018

Issues

open closed Total
Assigned issues 0 0 0
Reported issues 0 2 2

Activity

09/04/2018

07:08 AM Ruby Bug #15057: REXML::Text#value returns a double unescaped string in non-raw mode
>> This ignores the 'raw' attribute setting
> ...
なるほど。`REXML::Element#text` も同様のコメントがあってセマンティクスを変えられないと。残念ですが仕方がないですかね… メジャーバージョンアップの際は再検討していただけると幸いです。
> 互換性は壊したくないので、現状ではatomutilでは次のように使ってもらいたいです。
了解しました。atomutil の方にはこちらから報告し...
rna (Ryosuke Nanba)

09/03/2018

05:40 AM Ruby Bug #15057: REXML::Text#value returns a double unescaped string in non-raw mode
> atomutilでそうなるケースを試してみたいので再現するAtomとサンプルコードを提供してもらえませんか?
これでどうでしょう?
~~~
require 'atomutil'
entry = Atom::Entry.new
entry.content = "<br>"
puts entry.to_s
~~~
entry.to_s は実際に投稿する場合 HTTP の request body になります(参照: Atom::C...
rna (Ryosuke Nanba)

09/02/2018

05:29 PM Ruby Bug #15057: REXML::Text#value returns a double unescaped string in non-raw mode
> DOMでもnodeValueの値は実体参照を解決した値になるので今の挙動で問題ないように思うんですが、
JavaScript の DOM でも `Text` のコンストラクタ引数で渡した文字列はパースの対象にならずにそのままテキストノードが表す文字列になります。
~~~
<p id="p"></p>
<script>
t = new Text("&lt; <");
console.log(t.nodeValue); // コンソールに「&lt; ...
rna (Ryosuke Nanba)
09:22 AM Ruby Bug #15057 (Rejected): REXML::Text#value returns a double unescaped string in non-raw mode
`REXML::Text` オブジェクトが非rawモードの場合、`REXML::Text#value` がエスケープ済みのテキストを二重にエスケープ解除された文字列を返します。
例:
~~~
require 'rexml/document'
t = REXML::Text.new("&lt; <", false, nil, false)
t.to_s # => "&amp;lt; &lt;"
t.value # => "< <" (expected...
rna (Ryosuke Nanba)
09:25 AM Ruby Bug #15058 (Closed): REXML::Text#clone returns a text node with a double escaped Sting
`REXML::Text#clone` で生成したオブジェクトが元のオブジェクトと異なる値を持ったテキストノードになります。clone されたテキストノードの `to_s` の値は、元のテキストノードが表現する文字列を二重にエスケープしたものになります。
例:
~~~
require 'rexml/document'
t = REXML::Text.new("&lt; <", false, nil, false)
t2 = t.clone
t.to_s ...
rna (Ryosuke Nanba)

Also available in: Atom