ime.nuを無効化するスレ

このエントリーをはてなブックマークに追加
1981@ime ◆.Nu/iMAc
>>179を訂正。

read.cgiで表示したときのみ、ime.nuが挿入されたりされなかったりする現象が発生しています。
(2002/5/30現在、kabaサーバのread.cgi ver6.01pで確認済み。)
ツール経由や板トップ表示(/index.html)では無関係。
テスト結果から予測されるime.nu挿入判定ルーチンの概要は以下のとおり…

1. read.cgiが呼び出された当初はmaxLENGTH=0。
2. 表示対象のdatファイルを走査し、リンク対象のURLを拾う。その長さをtmpLENGTHにセット。
3. tmpLENGTH<=maxLENGTHなら5.へ。
4. そのURL中で最後に現れた「.2ch.net/」以降をカットした部分の長さをmaxLENGTHにセット。
  (「.2ch.net/」が無ければmaxLENGTH=0に。)
5. maxLENGTH>0なら7.へ。
6. リンクにime.nuを挿入。
7. 2.へ。以下走査が終わるまで繰り返し。

いわゆる「ime.nu無効化現象」は、maxLENGTH>0のままでリセットされずに
3.→5.→7.→2.→…と進むために生じる。
また「ime.nu復活現象」は、3.→4.と進み4.でmaxLENGTH=0に変更され、
5.→6.へと進んでいくために生じる。

なんでこんなややこしいことになっているのかは不明…
(特に3.ではカットする前の長さで判定しているのに、
4.で長さを再セットする時はカットした後の長さになっているのか?)

いずれにしろ原因に付いては、ime.nuを除外するかどうかの
判定フラグを、ひとつひとつのURLを処理するごとに
しっかりリセットしていないからだと思われる。
1991@ime ◆.Nu/iMAc :02/05/30 22:13 ID:GuMbaRTj
例:

http://www.hoge.hoge/foo/bar/.2ch.net/
(maxLENGTH=29に)
http://www.yahoo.co.jp/
(tmpLENGTH=23なのでime.nu無効)
http://www.hoge.hogee/.2ch.net/
(tmpLENGTH=31でmaxLENGTHを超えた。
.2ch.net/をカットした部分の長さがmaxLENGTH=22に。)
http://www.yahoo.co.jp/
(tmpLENGTH=23でmaxLENGTHを超えた。
.2ch.net/が無いのでmaxLENGTH=0に。ime.nu復活)

例をチェックするには↓のURLなどでブラウザからチェックしてください。
http://kaba.2ch.net/test/read.cgi/accuse/1017200665/n198-199