Livetubeが落ちた。
最近よく落ちるなぁ……
と思いつつ、以前配信したときに記憶に残っていたCPU使用率が跳ね上がる件の挙動を追ってみた。

更新ボタンを押したときには、前段のスレッドが終わるのを待ち合わせていて、その間たまったウィンドウメッセージを処理するためにDoEventメソッドを呼んでいたのだけれど、そこにCPU負荷低減用のスリープを入れていなかったのが拙かった。
しかも、余分なDoEventまで発生させていたというおまけつき。
というわけで、さっくり直しました。

ちょろっと見た感じCPU使用率は落ち着いている感じ。
だけれど、Livetubeの鯖落ち時間の関係上たいしたテストができていないのはいつもどおり。
それでも、リリースしてしまうのだけれど。

ダウンロード

続、Livetubeで配信中に報告のあったバグ対処。

今回の変更点は以下。

・同一キーワードで複数配信が見つかった場合、何度も通知バルーンを出していた事象の修正。
今まで気がつかなかったのは登録しているキーワードが少なかったからのような感じ。
Livetubeをよく見ている人ほどこのバグの被害者は多いのだろうと思う。
こんな時間まで付き合ってくれたLivetube住民に感謝。

ダウンロード

Livetube配信で配信してその際に見つかったバグの対処をしました。
一日持たずに1.48のリリースです。

変更点は以下。
・コンフィグ画面のサーバリスト設定をカラにして「適用」もしくは「OK」を押した場合、サーバリストがおかしくなってしまう事象の対策。

やっぱり配信すると生の声が聞けるのでその点は大きな収穫。
ただ、こちらで把握してないバグ報告もちらほら。

簡単にわかるものであればすぐ対応できるのですが……

というわけで、ダウンロードはこちら

1.46をリリースしたとたんにバグ直ってない報告をもらったのでいい加減こちらで再現して欲しいのだけれど……

仕方がないので逃げのリリース
変更点は以下。

・プログラム開始時にフォームの位置情報がデスクトップ解像度の範囲外の時は、値を初期値にクリアするように変更。

こちらでは再現しないものの再現するところでは毎度毎度-32000の値で位置情報が保存されているらしいので、開始時に設定値をみて現在の画面解像度をオーバーしている場合。
フォームの位置をデフォルト(100,100)の座標にするように変更。

とりあえず、異常な設定値で走らせてみたのでコンフィグを消す羽目にはならないはず。
こういう後ろ向きな対処はできればやりたくないのだけれど……

やっぱタイミングなのかなぁ……
フォームクローズ時に位置を保存するという発想自体に間違いはないはずなのだけれど。

はたと思いついて1.46のリリースです。

今回の変更点は以下。
・プログラムの終了のXMLの保存時、フォームの位置情報がデスクトップ解像度を超えた場合は値を保存しない様子に修正。
・番組表で同じ配信者名が複数回登場した場合2つ目以降は無視するように修正

1つ目は、時折報告される、番組表ウィンドウが表示されなくなる不具合。
実際には画面外に表示されているわけなので、XMLの保存時に画面範囲を超えた場合は保存しなければよいのだ。
結局、どのタイミングでどういった理由で値が変になるかは謎のままだけれど、多分これで常用には問題がなくなるはず。

2点目は、気がついていていつか直そうと思ってタイミングがつかめずに後回しにしていた問題。
同じ配信者の名前が2つ以上出てくるときは最新の一つが本物で後は残骸なので表示する必要はない。

たぶん、今回のリリースの後はよっぽどのことがない限りアップデートはないだろうなぁ。

ダウンロードはここから。