opentween / OpenTween

TwitterクライアントのTweenからフォークしたオープンなプロジェクト
https://www.opentween.org/
Other
276 stars 77 forks source link

発言の削除中にタブを切り替えるとArgumentOutOfRangeExceptionが発生する #320

Closed upsilon closed 2 months ago

upsilon commented 2 months ago
動作環境:
   オペレーティング システム: Microsoft Windows NT 10.0.19045.0
   共通言語ランタイム: 4.0.30319.42000
   OpenTween.exeのバージョン: 3.13.0.0
例外 System.ArgumentOutOfRangeException: '0' の InvalidArgument=Value は 'itemIndex' に対して有効ではありません。
パラメーター名:itemIndex
   場所 System.Windows.Forms.ListView.SelectedIndexCollection.Add(Int32 itemIndex)
   場所 OpenTween.TweenMain.<DoStatusDelete>d__141.MoveNext()
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   場所 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   場所 OpenTween.TweenMain.<DeleteStripMenuItem_Click>d__142.MoveNext()
--- 直前に例外がスローされた場所からのスタック トレースの終わり ---
   場所 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

DM でのエラー報告機能による情報提供(@Tan90909090 より)

upsilon commented 2 months ago

エラー発生箇所: https://github.com/opentween/OpenTween/blob/b954c0fc809775a82cb755d9f056ac636953b580/OpenTween/Tween.cs#L2360

発言削除時の await より後の処理のため、非同期処理中にタブが切り替わると currentListView の ListView インスタンスが現在開いているタブの ListView と一致しなくなる