【症状】
「メディアタグ取得」の命令で取得したID3タグの中に
制御文字「COMM」や「TPE2」のあとにそのあとに続く項目のサイズを指定するバイトコードが混ざることがある。
これを含むハッシュを文字列にキャストし、そこからまたハッシュに変換しようとするとハッシュ変換命令が暴走する。
関数にハッシュを渡す時、ハッシュはどうしても一度文字列型にキャストされているようで、関数を利用する限り回避できない。
【再現方法】
下記のファイルをスクリプトと同じ位置に配置してください
http://drowsepost.com/sample/bugs/bug1.txt
http://drowsepost.com/sample/bugs/bug2.txt
#サンプル====================================
Sとは文字列 = 「bug1.txt」を開く
Hとはハッシュ = Sをハッシュ変換
Hとメモ記入
#サンプル====================================
【要望】
1:制御文字がなでしこの動作に影響しないようにしてください
2:ハッシュ変換のコードがフリーズしないようにしてください
3:ハッシュ型の変数を関数に渡す時、文字列型にキャストしないように(内部的にハッシュ変換が呼ばれないように)してください
【バージョン】1.550
【その他】
ファイルによっては結構危険なのではないかとおもい
優先度を緊急にさせていただきました。
なにとぞよろしくお願い申し上げます。