OSDN Git Service

ミュートタブの名前を変更するとエラーが発生する不具合を修正
authorKimura Youichi <kim.upsilon@bucyou.net>
Sun, 20 Nov 2016 07:55:37 +0000 (16:55 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Sun, 20 Nov 2016 07:58:18 +0000 (16:58 +0900)
https://osdn.net/ticket/browse.php?group_id=6526&tid=36805

Fixes: 8538894c ("タブ名の変更時にlistView{Scroll,Selection}のキーも合わせて変更する")

OpenTween/Resources/ChangeLog.txt
OpenTween/Tween.cs

index d06a070..79141a7 100644 (file)
@@ -13,6 +13,7 @@
   - 同現象に対して v1.3.5 で適切に修正できていなかった不具合です
  * FIX: Favoritesタブの「前のデータを取得」が通常の更新と同じ挙動になる不具合を修正 (thx @kakk0u!)
  * FIX: 地図サムネイル表示時のエラーが適切に処理されない不具合を修正 (thx @sobachanko!)
+ * FIX: ミュートタブの名前を変更しようとするとエラーが発生する不具合を修正
 
 ==== Ver 1.3.5(2016/10/01)
  * NEW: 140文字を越えるツイートの表示に対応しました
index 454e5ce..ae569a7 100644 (file)
@@ -7468,24 +7468,28 @@ namespace OpenTween
                 }
 
                 var tabPage = this.ListTab.TabPages.Cast<TabPage>()
-                    .First(x => x.Text == origTabName);
+                    .FirstOrDefault(x => x.Text == origTabName);
 
-                ListViewScroll scrollInfo;
-                if (this.listViewScroll.TryGetValue(origTabName, out scrollInfo))
+                if (tabPage != null)
                 {
-                    this.listViewScroll.Remove(origTabName);
-                    this.listViewScroll[newTabName] = scrollInfo;
-                }
+                    ListViewScroll scrollInfo;
+                    if (this.listViewScroll.TryGetValue(origTabName, out scrollInfo))
+                    {
+                        this.listViewScroll.Remove(origTabName);
+                        this.listViewScroll[newTabName] = scrollInfo;
+                    }
 
-                ListViewSelection selectionInfo;
-                if (this.listViewSelection.TryGetValue(origTabName, out selectionInfo))
-                {
-                    this.listViewSelection.Remove(origTabName);
-                    this.listViewSelection[newTabName] = selectionInfo;
+                    ListViewSelection selectionInfo;
+                    if (this.listViewSelection.TryGetValue(origTabName, out selectionInfo))
+                    {
+                        this.listViewSelection.Remove(origTabName);
+                        this.listViewSelection[newTabName] = selectionInfo;
+                    }
+
+                    //タブ名を変更
+                    tabPage.Text = newTabName;
                 }
 
-                //タブ名を変更
-                tabPage.Text = newTabName;
                 _statuses.RenameTab(origTabName, newTabName);
 
                 SaveConfigsCommon();