トップ «前の日記(Wed Jan 14 2004) 最新 次の日記(Sat Jan 17 2004)» 編集

よこいまさる日記



Thu Jan 15 2004 [長年日記]

ホリデーパスでいく、東京近郊やられ旅

 yar-3 の hiki より。 ガハハハッ、いきなり熊谷っすか。

GPSの位置情報に異常、船舶で誤差最大600キロ

 日本経済新聞の記事より。 衛星の故障だそうで。 一瞬、ニセモノ GPS 信号で電波ハイジャックされたんじゃないかって思ったんだけど。 ニセモノ GPS 衛星として、GPS衛星の電波送出装置をドコゾの山の上 (例えば箱根とか) に置いて、本物の GPS 衛星が送出する電波を被せられる程度の電波をニセモノから送出すると、それなりに威力ある攻撃になるんじゃないかって思うことがあるんだけど、どうなんだろう。 au の cdmaOne/cdma2000 とかで同期とれなくなったり、千葉と茨城を間違えたりするんだろうな、きっと。

Linux 版 Flash Player でクサる理由

 Linux 版 Flash Player でクサる理由の真髄が、なんとなく見えてきたんだよな。 libX11 の IM 周りで printf() debug したり、gdb でその辺に break point を設定したりして気づいたんだけど、妙に同一プロセス同一ウィンドウ内の複数のスレッドで、やたらと XOpenIM() しまくっている。 他のアプリというか toolkit の実装を見ていると、一つのウィンドウでは XOpenIM() は一度だけ実行するようになっていて、そのあとに起こされるスレッドは、先の XOpenIM() で得た XIM のコネクションをそのまま利用している。

 ここで思いついたのが、同一ウィンドウ内に複数の swf が存在する場合だとこの問題がよく発生するっていうこと。 おのおのの swf を実行するたびに FlashPlayer のスレッドが立ち上げられるんだけど、おのおののスレッドの起動時に XOpenIM() を実行しているとしたら。 同一プロセス同一ウィンドウ内で複数の XOpenIM() が実行されているっていうことの説明がつく。 ひとつのウィンドウにつき XOpenIM() は一度だけ実施するように、FlashPlayer を変更してみるっていうのも手かもしれないな。

 解決策としては... libflashplayer.so で global scope な変数を準備して、Window ID がキーで XOpenIM() の結果が value なハッシュテーブル作ってやって... っていうのは可能なのかなぁ。


2000|10|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|