From: kiri_feather Date: Tue, 10 May 2011 04:28:17 +0000 (+0900) Subject: DM削除時に(DELETED)で残ってしまうバグ修正 X-Git-Tag: Tween_v1.0.2.0~34 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=c828ac8d03894e4d2186f4a4e897af2f48bf8e48;p=opentween%2Fopen-tween.git DM削除時に(DELETED)で残ってしまうバグ修正 --- diff --git a/Tween/StatusDictionary.vb b/Tween/StatusDictionary.vb index e20e3b19..f7bdbb50 100644 --- a/Tween/StatusDictionary.vb +++ b/Tween/StatusDictionary.vb @@ -687,32 +687,32 @@ Public NotInheritable Class TabInformations Public Sub RemovePost(ByVal Id As Long) SyncLock LockObj Dim post As PostClass = Nothing - If _statuses.ContainsKey(Id) Then - post = _statuses(Id) - '各タブから該当ID削除 - For Each key As String In _tabs.Keys - Dim tab As TabClass = _tabs(key) - If tab.Contains(Id) Then - If Not tab.IsInnerStorageTabType Then - If tab.UnreadManage AndAlso Not post.IsRead Then '未読管理 - SyncLock LockUnread - tab.UnreadCount -= 1 - Me.SetNextUnreadId(Id, tab) - End SyncLock - End If - Else '未読数がずれる可能性があるためtab.Postsの未読も確認する - If tab.UnreadManage AndAlso Not tab.Posts(Id).IsRead Then '未読管理 - SyncLock LockUnread - tab.UnreadCount -= 1 - Me.SetNextUnreadId(Id, tab) - End SyncLock - End If + 'If _statuses.ContainsKey(Id) Then + '各タブから該当ID削除 + For Each key As String In _tabs.Keys + Dim tab As TabClass = _tabs(key) + If tab.Contains(Id) Then + If Not tab.IsInnerStorageTabType Then + post = _statuses(Id) + If tab.UnreadManage AndAlso Not post.IsRead Then '未読管理 + SyncLock LockUnread + tab.UnreadCount -= 1 + Me.SetNextUnreadId(Id, tab) + End SyncLock + End If + Else '未読数がずれる可能性があるためtab.Postsの未読も確認する + If tab.UnreadManage AndAlso Not tab.Posts(Id).IsRead Then '未読管理 + SyncLock LockUnread + tab.UnreadCount -= 1 + Me.SetNextUnreadId(Id, tab) + End SyncLock End If - tab.Remove(Id) End If - Next - _statuses.Remove(Id) - End If + tab.Remove(Id) + End If + Next + If _statuses.ContainsKey(Id) Then _statuses.Remove(Id) + 'End If End SyncLock End Sub