Last-Modified: Mon Nov 27 06:16:58 2006
相変わらず役立たず……。
というわけで、 論文一覧とか lin6を家のマシンで片っ端から入れたりとか、 そんな感じで丸1日サイクル起きつづけてしまいました。
終バス・終電ぎりぎりで帰宅。
lin6の Windwos版を入れてみようとするも、 WFP で肝心のtcpip.sys の置換に失敗してうぐぅ。 とりあえず仕事ふってきたので4放置。
ActivePerl 上のお話。
仮にこんなコードがあったとする。
sub writearticle
{
my $maxnum = 0;
open(FILE, "+<$datafile") or die;
flock( FILE, 2 );
while(<FILE>) {
chomp;
my ($num) = splitcsv($_);
$maxnum = $num if( $maxnum < $num );
}
$line = joincsv( $maxnum+1, $name, $mail, $url, $title,
"$date$time", "<FONT color=$color>$messageamp;gt;" );
# seek( FILE, 2, 0 ); # set pointer to eof
print FILE $line, "\n";
close(FILE);
}
FreeBSD 上ではうまく動いているんだけど、 実は Windows の ActivePerl 上だと動いてくれません。 最後の print で書き込まれず、そのまま書き込みなしで閉じてしまいます。
とりあえず、回避としては、以下のように一度閉じてから追記で開いてやると大丈夫。 これだと、maxnum が重複する可能性があるけど、手抜きをしてるんだからしかたない。 open >$file してるわけじゃないから内容が消えるわけではないし。
sub writearticle
{
my $maxnum = 0;
open(FILE, "+<$datafile") or die;
flock( FILE, 1 );
while(<FILE>) {
chomp;
my ($num) = splitcsv($_);
$maxnum = $num if( $maxnum < $num );
}
$line = joincsv( $maxnum+1, $name, $mail, $url, $title,
"$date$time", "<FONT color=$color>$messageamp;gt;" );
# seek( FILE, 2, 0 ); # set pointer to eof
print FILE $line, "\n";
close(FILE);
}
Desktop On-Call 越しでこれ以上追いたくないので、 とりあえずこういう症状があるということは覚えとこう……。
なんか www.sfc.wide.ad.jp の php が変。
どう変かといえば、 EUC-JP で書かれた csv を fgetcsv すると、 前後から余分に削ってくれて文字化けする。
というわけで、早速 php-4.1.1/ext/standard/file.c で定義されてる fgetcsv を追ってみる。
他のOSなホストでは発生しないところや、
""でくるむと大丈夫なところからすると、
文字列を前後から削るときに使っている isspace(2) が駄目っぽい気がするんだけど、
どう直せばいいのかわからない。
別に小さなプログ
ラムを組んで試験してみないと駄目そう。
とりあえず、後日 ml とかで聞いてみる予定。
で。
となっていたのを全て
isspace((int)*bptr)
とする。
これでうまくいってるぽい。
どうやら、8bit より上位に数字が残っていると、
余計な処理をしてしまうぽい。LANG 変えると挙動変わるし。
というわけで、この修正を ultra30 に入れて rg に報告入れたところで今日はおしまい。isspace((unsigned char)*bptr)
本家に報告するかはもうすこし調べてから。 既出かもしれないし。
とかいいながら php-users に投げてしまった:)
……いいかげん寝よう(^^;;
うーん、いつ教習所行けばいいんだろう……。
というわけで、2分遅刻で行ってきたんですよ、吉野家。
そしたらなんか新宿靖国通り店の前に人がいっぱいいて、中に入れないんですよ。
よくみたら携帯で2ch.netとか見てる奴がいて、なんか2/22は2ちゃんねるの日とか言ってるんですよ。
なんか馴れ合ってる奴ばかりだし、みんなで仲良く同時多発オーダーかおめでてーな。
イパーン人カプールが『中居がいるらしいよ』とか言ってるの、もうみてられない。
もうね、アホかとバカかと。2/22だよ、2/22!
おまえら、殺伐と大盛り葱だく玉注文してやるからその席あけろと。
吉野家ってのはもっと殺伐としてるべきなんだよ。
(以下略)
馴れ合った奴は反省しる。
あくまで殺伐と、が第一原則だ。
あと、後ろから押したバカは二度と吉野家来るな。
傷害沙汰になったらどうするんだ。逝ってよし!
という感じで、駄目駄目でした。
個人的には、おあいそキボンヌが言えたのでよしとする。
まぁ、『お前らどいてください』とか『よーしパパ(略』とか神も居たのでそれが救いか。
今回足りなくなったのは領収書。というわけでおみやげは無し。無念。
次参加するとしたら新宿以外だなぁ……。
今回は軽い頭痛、鼻水、咳、腰。
朝。
とりあえず体温測ってみる。
34.8度。……。
見なかったことにしてもう一度。
35.3度。と、とりあえずそんなもんか。
ちなみに今(18:33)測りなおして見たら 36.7度。 まぁ、ちょっと高めかな。
真タイラーは行きの電車で読み終えたので、 引き続き庄司先生お薦めらしいスターダストイレギュラーズ。
どっかで見た絵だと思ったら、 一条先生のHOPEの絵だった。
というわけで、次のマシンの名前は adam ということで。 増える予定はあんまりないけど。
(06:45)次、イリヤの空。
(07:00)いいかげん飽きてきたので CANDY☆。
(07:53)わははははは。
『ルート』ってやっぱり某 Charlie Root さんかなぁ。
というかあっさり RSA 解かないでください(笑)
(08:28)引き続いてその2。
(09:18)朝飯。
(09:30)復帰。
(10:07)読み終わりー。
仕事行ってきます。