やること: チケット
https://dev.mikutter.hachune.net/
https://dev.mikutter.hachune.net/favicon.ico?1619448608
2014-05-09T02:52:42Z
やること
Redmine
mikutter - バグ #669 (終了): 特定の手順で操作するとPostboxが消える
https://dev.mikutter.hachune.net/issues/669
2014-05-09T02:52:42Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>投稿に失敗した後,特定の手順で操作するとPostboxが再生成されず,UIから消える.<br />以前からこの現象はあったが,チケットに登録されていないようだったので.</p>
<ul>
<li>再現方法<br />1. 適当な文字列ツイートをする<br />2. 同じ文字列をツイートしようとする(投稿に失敗してpostboxが残る)<br />3. 空のpostboxにフォーカスを移動する<br />4. 1文字以上入力し,すべて消す<br />5. 左側の×ボタンがクリック可能になるので,クリックしてpostboxを削除する<br />6. 残ったpostboxで別の内容でツイートするか,内容を消して×ボタンを押す</li>
</ul>
mikutter - バグ #664 (終了): 前のアカウントへの切り替え方向が逆
https://dev.mikutter.hachune.net/issues/664
2014-05-06T18:13:18Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>previous_accountコマンドで前のアカウントに切り替えようとすると次のアカウントに切り替わっている</p>
mikutter - バグ #622 (終了): ネットワーク接続が切断された際にCPU使用率が100%になる
https://dev.mikutter.hachune.net/issues/622
2013-10-22T19:12:32Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>ストリームが切断された場合, core/lib/mikutwitter/streaming_failed_actions.rb でエラーを確認し,再接続を試みるが,<br />ネットワークが切断された際はエラー内容(変数)が Exception ではなく Thread(dead) であるため,<br />待ち時間なしに再接続を繰り返し,CPU使用率が100%になる.</p>
<p>以下の変更を加えたところ,症状は再現しなくなった.<br />0.2.2.1373で確認したが,以前のバージョンでも同様の症状が見られる.</p>
<pre>
diff --git a/core/lib/mikutwitter/streaming_failed_actions.rb b/core/lib/mikutwitter/streaming_failed_actions.rb
index 23cbadd..c521b35 100644
--- a/core/lib/mikutwitter/streaming_failed_actions.rb
+++ b/core/lib/mikutwitter/streaming_failed_actions.rb
@@ -42,6 +42,8 @@ class MikuTwitter::StreamingFailedActions
@last_code = e.code
elsif e.is_a? Exception
tcperror
+ elsif e.is_a? Thread
+ networkerror unless e.alive?
end
end
@@ -105,6 +107,7 @@ class MikuTwitter::StreamingFailedActions
@wait_time += 0.25
if @wait_time > 16
@wait_time = 16 end end end
+ alias networkerror tcperror
def httperror
@fail_count += 1
</pre>
mikutter - 致命的 #580 (終了): 抽出タブで「Twitterクライアント」「含む」を選択しているとクラッシュし,その後起動しなくなる
https://dev.mikutter.hachune.net/issues/580
2013-03-27T16:28:55Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>issue <a class="issue tracker-5 status-5 priority-4 priority-default closed" title="致命的: 抽出タブの作成/削除の際にmikutterがクラッシュする (終了)" href="https://dev.mikutter.hachune.net/issues/579">#579</a> のパッチを当てた状態でテスト.<br />抽出タブの作成の際に「いずれかにマッチする」「Twitterクライアント」「含む」を条件とした場合に,mikutterがクラッシュする.<br />また, ~/.mikutter/p_class_values.db には変更が保存されているため,<br />その後も起動時に同様のエラーが出力され,mikutterが起動しなくなる.</p>
<p>Ruby: 2.0.0p0<br />RubyGnome2: 1.2.3</p>
<pre>
warning: {MIKUTTER_DIR}/core/miku/miku.rb:23:in `rescue in miku': [MIKU Bug]
fatal error on code [:if, [:include?, :source, "mikutter"], :true, nil]
warning: {MIKUTTER_DIR}/core/miku/miku.rb:23:in `rescue in miku': [MIKU Bug]
fatal error on code [:or, [:include?, :source, "mikutter"]]
error: {MIKUTTER_DIR}/core/plugin/gtk/delayer.rb:28:in `rescue in block (2 levels) in on_regist': wrong number of arguments (2 for 1)
from {MIKUTTER_DIR}/core/miku/list.rb:150:in `include?'
from {MIKUTTER_DIR}/core/miku/list.rb:150:in `call'
from {MIKUTTER_DIR}/core/miku/list.rb:150:in `call_rubyfunc'
from {MIKUTTER_DIR}/core/miku/list.rb:122:in `miku_eval'
from {MIKUTTER_DIR}/core/miku/node.rb:8:in `miku_eval_another'
from {MIKUTTER_DIR}/core/miku/primitive.rb:69:in `eval'
from {MIKUTTER_DIR}/core/miku/primitive.rb:76:in `if'
from {MIKUTTER_DIR}/core/miku/primitive.rb:15:in `call'
from {MIKUTTER_DIR}/core/miku/list.rb:116:in `miku_eval'
from {MIKUTTER_DIR}/core/miku/miku.rb:19:in `miku'
from {MIKUTTER_DIR}/core/miku/list.rb:118:in `miku_eval'
from {MIKUTTER_DIR}/core/miku/miku.rb:19:in `miku'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:82:in `block (2 levels) in append_message'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:81:in `each'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:81:in `block in append_message'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:74:in `each'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:74:in `append_message'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:51:in `block (2 levels) in <top (required)>'
from {MIKUTTER_DIR}/core/event_listener.rb:25:in `call'
from {MIKUTTER_DIR}/core/event_listener.rb:25:in `update'
from /home/penguin/local/lib/ruby/2.0.0/observer.rb:195:in `block in notify_observers'
from /home/penguin/local/lib/ruby/2.0.0/observer.rb:194:in `each'
from /home/penguin/local/lib/ruby/2.0.0/observer.rb:194:in `notify_observers'
from {MIKUTTER_DIR}/core/event.rb:40:in `block (2 levels) in call'
from {MIKUTTER_DIR}/core/event.rb:40:in `catch'
from {MIKUTTER_DIR}/core/event.rb:40:in `block in call'
from {MIKUTTER_DIR}/core/event.rb:37:in `new'
from {MIKUTTER_DIR}/core/event.rb:37:in `call'
from {MIKUTTER_DIR}/core/plugin.rb:45:in `call'
from {MIKUTTER_DIR}/core/message.rb:19:in `block in <class:Message>'
from {MIKUTTER_DIR}/core/lib/timelimitedqueue/timelimitedqueue.rb:73:in `call'
from {MIKUTTER_DIR}/core/lib/timelimitedqueue/timelimitedqueue.rb:73:in `callback'
from {MIKUTTER_DIR}/core/lib/timelimitedqueue/timelimitedqueue.rb:66:in `block in waiting_proc'
from {MIKUTTER_DIR}/core/lib/timelimitedqueue/timelimitedqueue.rb:57:in `loop'
from {MIKUTTER_DIR}/core/lib/timelimitedqueue/timelimitedqueue.rb:57:in `waiting_proc'
from {MIKUTTER_DIR}/core/lib/deferred/deferred.rb:71:in `call'
from {MIKUTTER_DIR}/core/lib/deferred/deferred.rb:71:in `block in initialize'
</pre>
mikutter - 致命的 #579 (終了): 抽出タブの作成/削除の際にmikutterがクラッシュする
https://dev.mikutter.hachune.net/issues/579
2013-03-27T16:14:44Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>抽出タブを作成する際にmikutterがクラッシュする.<br />Ruby: 2.0.0p0<br />RubyGnome2: 1.2.3<br />出力されるエラーは以下の通り.</p>
<pre>
error: {MIKUTTER_DIR}/core/mui/gtk_extension.rb:45:in `rescue in block in __track': undefined method `model' for #<Gtk::ListStore:0x7fc4a00c0fc8 ptr=0x7fc4fd2635a0>
from {MIKUTTER_DIR}/core/mui/gtk_crud.rb:132:in `force_record_create'
from {MIKUTTER_DIR}/core/mui/gtk_crud.rb:160:in `record_create'
from {MIKUTTER_DIR}/core/mui/gtk_crud.rb:30:in `block in create_button'
from {MIKUTTER_DIR}/core/mui/gtk_extension.rb:22:in `call'
from {MIKUTTER_DIR}/core/mui/gtk_extension.rb:22:in `block in safety_signal_connect'
from {MIKUTTER_DIR}/core/mui/gtk_crud.rb:29:in `create_button'
from {MIKUTTER_DIR}/core/mui/gtk_crud.rb:24:in `buttons'
from {MIKUTTER_DIR}/core/plugin/extract/extract.rb:27:in `block (2 levels) in <top (required)>'
from {MIKUTTER_DIR}/core/plugin/settings/settings.rb:35:in `instance_eval'
from {MIKUTTER_DIR}/core/plugin/settings/settings.rb:35:in `block in setting_window'
from {MIKUTTER_DIR}/core/plugin/settings/settings.rb:30:in `each'
from {MIKUTTER_DIR}/core/plugin/settings/settings.rb:30:in `setting_window'
from {MIKUTTER_DIR}/core/plugin/settings/settings.rb:18:in `block (2 levels) in <top (required)>'
from {MIKUTTER_DIR}/core/event_listener.rb:25:in `call'
from {MIKUTTER_DIR}/core/event_listener.rb:25:in `update'
from /home/penguin/local/lib/ruby/2.0.0/observer.rb:195:in `block in notify_observers'
from /home/penguin/local/lib/ruby/2.0.0/observer.rb:194:in `each'
from /home/penguin/local/lib/ruby/2.0.0/observer.rb:194:in `notify_observers'
from {MIKUTTER_DIR}/core/event.rb:40:in `block (2 levels) in call'
from {MIKUTTER_DIR}/core/event.rb:40:in `catch'
from {MIKUTTER_DIR}/core/event.rb:40:in `block in call'
from {MIKUTTER_DIR}/core/delayer.rb:115:in `call'
from {MIKUTTER_DIR}/core/delayer.rb:115:in `run'
from {MIKUTTER_DIR}/core/delayer.rb:52:in `block (2 levels) in run'
from {MIKUTTER_DIR}/core/delayer.rb:48:in `each'
from {MIKUTTER_DIR}/core/delayer.rb:48:in `block in run'
from {MIKUTTER_DIR}/core/delayer.rb:44:in `times'
from {MIKUTTER_DIR}/core/delayer.rb:44:in `run'
from {MIKUTTER_DIR}/core/plugin/gtk/delayer.rb:26:in `block (2 levels) in on_regist'
from {MIKUTTER_DIR}/core/plugin/gtk/mainloop.rb:10:in `call'
from {MIKUTTER_DIR}/core/plugin/gtk/mainloop.rb:10:in `main'
from {MIKUTTER_DIR}/core/plugin/gtk/mainloop.rb:10:in `mainloop'
from {MIKUTTER_DIR}/mikutter.rb:58:in `boot!'
from {MIKUTTER_DIR}/mikutter.rb:76:in `<top (required)>'
from /home/penguin/local/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
from /home/penguin/local/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
from {MIKUTTER_DIR}/mikutter_alt.rb:19:in `<main>'
</pre>
<p>model.model.appendとなっているが,modelだけでGtk::ListStoreが取得される.<br />Gtk::ListStoreにはmodelメソッドが定義されていないので,<br />その前にクラスチェックを入れるとクラッシュしなくなった.<br />model.model となっていた部分が2箇所あったので,両方にチェックを挟んだ.</p>
<pre>
--- a/core/mui/gtk_crud.rb
+++ b/core/mui/gtk_crud.rb
@@ -124,7 +124,11 @@ class Gtk::CRUD < Gtk::TreeView
memoize :column_schemer
def force_record_create(record)
- iter = model.model.append
+ if model.class == Gtk::ListStore
+ iter = model.append
+ else
+ iter = model.model.append
+ end
record.each_with_index{ |item, index|
iter[index] = item }
on_created(iter) end
@@ -140,7 +144,11 @@ class Gtk::CRUD < Gtk::TreeView
if defined? model.convert_iter_to_child_iter(iter)
iter = model.convert_iter_to_child_iter iter end
on_deleted(iter)
- model.model.remove(iter)
+ if model.class == Gtk::ListStore
+ model.remove(iter)
+ else
+ model.model.remove(iter)
+ end
end
def record_create(optional, widget)
</pre>
mikutter - バグ #530 (終了): 会話スレッドを表示したあとにスレッドを表示すると空のTLが表示される
https://dev.mikutter.hachune.net/issues/530
2012-10-25T06:37:19Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>「会話スレッドを表示」機能をどこかのキーに割り当て,<br />適当なツイートを選択して会話スレッドを表示させ,<br />その状態で同じキーをタイプすると空のTLが表示され,<br />その状態でさらに同じキーをタイプすると空のTLが表示される.(以下同じ)</p>
mikutter - バグ #523 (終了): タイムラインのスクロールによるメモリ使用率の上昇
https://dev.mikutter.hachune.net/issues/523
2012-10-03T22:08:52Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>タイムラインのスクロールバーをマウスでつかんで<br />何度も上下させているとメモリ使用率が急激に上昇する.<br />Messageオブジェクトは再生成されてないと思うので,<br />Gtk::VBoxか何かがキャッシュしてるんでしょうか…</p>
mikutter - バグ #522 (却下): プロフィール画面のfollowersがfavsになっている
https://dev.mikutter.hachune.net/issues/522
2012-10-02T03:16:05Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>0.2で,ユーザのプロフィール画面のfollowers表記がfavsになっている</p>
mikutter - 機能 #497 (却下): ツイートが下から上へ流れる機能の追加
https://dev.mikutter.hachune.net/issues/497
2012-09-07T20:58:28Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>OSC東京にてこの機能が欲しいとおっしゃっている方がいました.<br />IRCのような感じらしいです</p>
mikutter - バグ #474 (終了): DMタブで内容を表示する際に右端が切れる
https://dev.mikutter.hachune.net/issues/474
2012-06-13T13:33:28Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>特定のユーザのタブを表示してDMタブを表示すると,<br />メッセージの右端がスクロールバーに隠れて見えない</p>
mikutter - バグ #437 (終了): Gtk::PostBoxの閉じるボタンがキーボード操作だと反応しない
https://dev.mikutter.hachune.net/issues/437
2012-03-04T02:00:23Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>投稿ボックスの左側の閉じるボタンがクリックじゃないと反応しない<br />1行修正しました</p>
<p>--- core/mui/gtk_postbox.rb.org 2012-02-29 11:33:51.421695468 <ins>0900<br /></ins>++ core/mui/gtk_postbox.rb.new 2012-03-04 10:53:28.729735995 <ins>0900<br /><code>@ -104,7 +104,7 </code>@<br /> @tool.ssc('event'){<br /> @tool.sensitive = destructible? || posting?<br /> false }<br />- @tool.ssc('button_release_event'){<br /></ins> @tool.ssc('clicked'){<br /> if posting?<br /> @posting.cancel<br /> @tool.sensitive = destructible? || posting?</p>
mikutter - バグ #436 (終了): ふぁぼに失敗してもツイートにふぁぼマークが付いたままになっている
https://dev.mikutter.hachune.net/issues/436
2012-03-04T01:44:24Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<p>ふぁぼ規制中にツイートをふぁぼってもふぁぼったマークが付いたままになっている(実際には失敗している)</p>
<p>たぶんDeferredが導入されてから?<br />それ以前はふぁぼマークはつかなかったような気がします</p>
mikutter - 致命的 #370 (終了): リストのチェックをすべて外すと落ちる
https://dev.mikutter.hachune.net/issues/370
2011-11-17T03:52:51Z
Takuma Nakajima
penguin.trance.2716@gmail.com
<ul>
<li>概要<br />シングルペインの状態で,設定のリストタブにあるチェックボックスが<br />・1つ以上ONの状態から<br />・すべてOFFにすると<br />タブが削除され,メインのTLが一瞬描画された後mikutterが落ちる.<br />タブが保存された状態で起動した場合は1回目は再現しない?<br />再現しなかった場合でも同じことを数回やると落ちる.</li>
</ul>
<ul>
<li>トレース<br /><pre>
warning: /usr/lib64/ruby/1.9.1/rbconfig/obsolete.rb:4:in `<top (required)>': (eval):1: Use RbConfig instead of obsolete and deprecated Config.
/home/penguin/work/mikutter-main/core/mui/cairo_cell_renderer_message.rb:93:in `block in tree=': undefined method `-' for nil:NilClass
from /home/penguin/work/mikutter-main/core/mui/gtk_extension.rb:20:in `call'
from /home/penguin/work/mikutter-main/core/mui/gtk_extension.rb:20:in `block in safety_signal_connect'
from ./mikutter.rb:157:in `call'
from ./mikutter.rb:157:in `main'
from ./mikutter.rb:157:in `main'
from ./mikutter.rb:82:in `boot'
from ./mikutter.rb:195:in `<main>'
</pre></li>
</ul>
<ul>
<li>再現バージョン<br />0.0.4.583<br />0.0.4.456<br />0.0.3.580<br />0.0.3.456<br />どのバージョンでも同じトレースが出力されます</li>
</ul>
<ul>
<li>環境<br />Gentoo/Linux 3.0.6 x86_64<br />ruby 1.9.3dev (2011-09-23 revision 33323) [x86_64-linux]<br />ruby-gtk2-1.0.3<br />rcairo-1.10.1</li>
</ul>