最近頻繁にリリースしているような気がする。
とりあえず変更点は以下。
・ためしに作ってみたら良い感じに動いたブラウザ指定の機能を追加(IE,Firefox,Opera,GoogleChromeで確認)
・GUI上でサーバリストを弄る機能を追加(要再起動)
・上記に関連して設定ウィンドウを新設、通信間隔をそちらに移動
・報告のあったログ出力時の排他エラーの対処(らいつべバルーンlog.txt’ にアクセスできません。)
そろそろバグ関連は安定してくれると良いのだけれど。
サーバリストはチェックが甘いのでまた空文字関連のバグがありそうだ……
が、機能優先でとりあえずリリース。
あぁ、恥ずかしい。
前のエントリで再現しないなんて書いた挙句がこれだよ。
再度同じ方に細かく指摘してもらって欠陥に気がつくとは……
100%再現します、バグです。不良品です。ダメダメです。
使い方のミスなんてとんでもない、これはそういう入力を許容するプログラムが悪いのです。
長さ0の文字列でリストを更新した場合に番組表が長さ0(Null)を想定してないのでエラー吐きます。
長さ0の文字列で配信者名やらキーワードの比較をするのでなんでもかんでも一致してバルーンでまくりになります。
ちなみに配信者リスト・キーワードリスト・NGリスト全てで同じ不具合がありました。
項目の入力で0サイズにした場合、リストの行と内部データの行を削除する処理を追加して対処。
長さ0の文字列さえ入らなければよいのでこれで大丈夫なはず。
ショックでかな~り自信がない、他にもバグ潜んでそうだなぁ……
お手数ですが、バルーン鳴りまくり状態の方は、新ファイルに入れ替えた後、データの再設定をお願いします。
きっかけは、Blogのコメントから。
「バグ確認しました。キーワードを全て削除し、番組表更新や、ソフト起動すると、エラー吐きます」
おっかしいなぁ……と思いつつ1.33を展開し再現テストを試みる。
が、再現せず。
番組表更新とソフト起動で走る処理には直接関連がないので、どの辺りの処理なのかけん等がつかない。
通知キーワードがない状態での番組表更新は参照処理は随分前から変わってないしなぁ……
裏でデフラグ動かしていた事もあって動作がすこぶる重く、マウスクリックを連打したところ、なにやらエラーメッセージ様が光臨\(^o^)/
というわけで、バグを潰した1.34のリリースと相成りました。
変更点は以下。
・データの持ち方変更(リスト修正をすぐ通知・番組表に反映)
・番組表に右クリックメニューを追加
・初回起動時にindex.live.xmlを取得しないうちに番組表を起動するとエラーを吐く事象の対処
・番組表オブジェクトの初期化前にアイコンをダブルクリックするとエラーを吐く事象の対処
上二つが機能改良で、下二つが今回対処したバグ。
3点目はワリとありえる事象なのだけれど、初回起動時以降は古いXMLファイルが存在するので、結果として発見されなかったと言うところか。
4点目は、正直デフラグ中で動作が重くなければ見つからなかった気がする。
ちゅうかコンストラクタの処理が終わる前にアイコン出るとは思わんよ。普通。
後、要望として下の2つ上がったのだけれど、ちと難しい気がする。
1、ブラウザを選べるようにして欲しい
2、バルーンチップ出現中に右クリックしてもメニューより先にバルーンをクリックした事になるのをやめて欲しい。
以下理由。
1、配信URLをパラメータに起動するOSにお任せ方式が使えなくなる。
ブラウザの起動パラメータの一番目にURL指定すりゃいけんのかなぁ……
あと、どれだけのブラウザで試せば良いんだろ?
IE、Firefox、Opera、GoogleChrome、safari、amaya、Slaipnir、Lunascape、Donut 果てしないなぁ……
というかこんなにブラウザ入れたくない。
そして何より、対応したとしてそれを入れる画面がない。
GUIデザインしなおしするのか……(‘A`)
2、イベントを.Net側で検知できん。無理。
そんなわけで、要望が色々溜まってるらいつべバルーンのダウンロードはこちら
というわけで、6/8にアップデートしたらいつべバルーンの変更点。
Ver1.33
・番組表で通知配信者もしくはキーワードを含む配信には色をつける(暫定対応)
・NGリストを×ボタンで閉じた後、再度NGリストを開くとエラーが出る事象の対処
・番組表とNGリストで終了イベントを上書きしていた問題の対処。
前の1.32もそうなのだけれど、不具合対応がメイン。
要望がある機能はあるのだけれど、今ひとつモチベーションが……
暫定版で、1.34は作ったもののテストすら億劫になっている(´・ω・`)
まぁ、なんかのきっかけで出すこともあるかも知らん。
とりあえず、現状の問題の整理ともらった要望を忘れないうちにメモ。
1、「index.live.xml.tmp2′ へのアクセスが拒否されました」エラーの修正
2、同一配信者が2つ以上見つかった時の対処
3、Windows2000でOS未サポートのクリックイベントをどうするか。
4、×ボタンと最小化ボタンの動作変更の要望の扱い
5、通知配信者毎に異なるwavを再生させる要望の扱い
6、番組表の表示で通知配信者は色付けする要望の扱い
7、番組表の項目でソートの要望の扱い
8、ATOM取得サーバ変更時の通知URL判定方式の変更
9、タグ情報云々の要望の扱い
10、Firefox3.0.10で番組が開けない(規定のブラウザの変更で直った?)
まず、2と8は最優先。
こないだ見た配信で通知が止まない事象を目の当たりにしたけど、アレはダメだ。
動作を知ってる自分には大した事ないが、あれだとツールを使う一般ユーザーが戸惑う。
1は一応修正したが、元が再発頻度の低い(ハズ)のものだけにもう少し様子見。
3は、OSがサポートしていない機能である以上、自前で作りこむしか解決は出来ないのだけれど、Windows2000のためだけに画面からイベントから全部作りこむのは正直しんどい。
Windows2000は一部機能使えませんって事で勘弁して欲しいなぁ……
4、は特に変更しない事にしよう。MSNメッセンジャーやATIのCCCなんかはこのタイプの動作だし。
5、6、7は実装しようにも、いままで機能優先で場当たり的な拡張を繰り返したおかげで流石にソースの方が限界。
やるなら一旦仕切りなおしをして、まずソース全体の大改修をするのが必須。
新しいバグを作りこむような気もするが……
9は、LivetubeのATOMから取れないので現状は対応無しで。
10は原因のゲの字も判らん。ソースの方だとプロセス起動のパラメータにURL突っ込んでるだけだからなぁ……
どのプロセス起動するかは完全にOS任せだし、GPL違反で配布されたToHeart2のソースで覚えた手法だから実績もあると思うんだが。
当面は1、2、8の対応版を早めに出して、そこから時間をとって勉強がてらゆっくり機能追加かなぁ
しかし、当初は2chの本スレ住民用にひっそり公開するだけだったハズなんだが、予想外に広まったなぁ……
Livetubeの負荷に悪影響及ぼしてないと良いんだが。