[Tween-svn] [1563] Invokeで例外発生する場合があったので修正

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2011年 6月 27日 (月) 15:45:59 JST


Revision: 1563
          http://sourceforge.jp/projects/tween/svn/view?view=rev&revision=1563
Author:   kiri_feather
Date:     2011-06-27 15:45:59 +0900 (Mon, 27 Jun 2011)

Log Message:
-----------
Invokeで例外発生する場合があったので修正

Modified Paths:
--------------
    trunk/Tween/Tween.vb


-------------- next part --------------
Modified: trunk/Tween/Tween.vb
===================================================================
--- trunk/Tween/Tween.vb	2011-06-24 08:30:35 UTC (rev 1562)
+++ trunk/Tween/Tween.vb	2011-06-27 06:45:59 UTC (rev 1563)
@@ -7496,11 +7496,17 @@
     Delegate Sub SetStatusLabelApiDelegate()
 
     Private Sub SetStatusLabelApiHandler(ByVal sender As Object, ByVal e As ApiInformationChangedEventArgs)
-        If InvokeRequired AndAlso Not IsDisposed Then
-            Invoke(New SetStatusLabelApiDelegate(AddressOf SetStatusLabelApi))
-        Else
-            SetStatusLabelApi()
-        End If
+        Try
+            If InvokeRequired AndAlso Not IsDisposed Then
+                Invoke(New SetStatusLabelApiDelegate(AddressOf SetStatusLabelApi))
+            Else
+                SetStatusLabelApi()
+            End If
+        Catch ex As ObjectDisposedException
+            Exit Sub
+        Catch ex As InvalidOperationException
+            Exit Sub
+        End Try
     End Sub
 
     Private Sub SetStatusLabelApi()
@@ -10037,6 +10043,8 @@
             End If
         Catch ex As ObjectDisposedException
             Exit Sub
+        Catch ex As InvalidOperationException
+            Exit Sub
         End Try
     End Sub
 
@@ -10080,16 +10088,23 @@
             End If
         Catch ex As ObjectDisposedException
             Exit Sub
+        Catch ex As InvalidOperationException
+            Exit Sub
         End Try
     End Sub
 
     Private Sub tw_UserStreamStarted()
         Me._isActiveUserstream = True
-        If InvokeRequired AndAlso Not IsDisposed Then
-            Invoke(New MethodInvoker(AddressOf tw_UserStreamStarted))
+        Try
+            If InvokeRequired AndAlso Not IsDisposed Then
+                Invoke(New MethodInvoker(AddressOf tw_UserStreamStarted))
+                Exit Sub
+            End If
+        Catch ex As ObjectDisposedException
             Exit Sub
-        End If
-
+        Catch ex As InvalidOperationException
+            Exit Sub
+        End Try
         MenuItemUserStream.Text = "&UserStream ▶"
         MenuItemUserStream.Enabled = True
         StopToolStripMenuItem.Text = "&Stop"
@@ -10100,11 +10115,16 @@
 
     Private Sub tw_UserStreamStopped()
         Me._isActiveUserstream = False
-        If InvokeRequired AndAlso Not IsDisposed Then
-            Invoke(New MethodInvoker(AddressOf tw_UserStreamStopped))
+        Try
+            If InvokeRequired AndAlso Not IsDisposed Then
+                Invoke(New MethodInvoker(AddressOf tw_UserStreamStopped))
+                Exit Sub
+            End If
+        Catch ex As ObjectDisposedException
             Exit Sub
-        End If
-
+        Catch ex As InvalidOperationException
+            Exit Sub
+        End Try
         MenuItemUserStream.Text = "&UserStream ■"
         MenuItemUserStream.Enabled = True
         StopToolStripMenuItem.Text = "&Start"
@@ -10114,10 +10134,16 @@
     End Sub
 
     Private Sub tw_UserStreamEventArrived(ByVal ev As Twitter.FormattedEvent)
-        If InvokeRequired AndAlso Not IsDisposed Then
-            Invoke(New Action(Of Twitter.FormattedEvent)(AddressOf tw_UserStreamEventArrived), ev)
+        Try
+            If InvokeRequired AndAlso Not IsDisposed Then
+                Invoke(New Action(Of Twitter.FormattedEvent)(AddressOf tw_UserStreamEventArrived), ev)
+                Exit Sub
+            End If
+        Catch ex As ObjectDisposedException
             Exit Sub
-        End If
+        Catch ex As InvalidOperationException
+            Exit Sub
+        End Try
         StatusLabel.Text = "Event: " + ev.Event
         'If ev.Event = "favorite" Then
         '    NotifyFavorite(ev)



Tween-svn メーリングリストの案内
Back to archive index