Author: rolf
Date: 2008-02-19 19:23:01 -0500 (Tue, 19 Feb 2008)
New Revision: 96214
Modified:
trunk/moon/src/ChangeLog
trunk/moon/src/media.cpp
Log:
* media.cpp: MediaElement/Image: Remove event handlers when we abort
the downloader, otherwise the handlers might be called after we're
destroyed.
Modified: trunk/moon/src/ChangeLog
===================================================================
--- trunk/moon/src/ChangeLog 2008-02-20 00:21:18 UTC (rev 96213)
+++ trunk/moon/src/ChangeLog 2008-02-20 00:23:01 UTC (rev 96214)
@@ -1,3 +1,9 @@
+2008-02-20 Rolf Bjarne Kvinge <[EMAIL PROTECTED]>
+
+ * media.cpp: MediaElement/Image: Remove event handlers when we abort the
+ downloader, otherwise the handlers might be called after we're
+ destroyed.
+
2008-02-19 Jeffrey Stedfast <[EMAIL PROTECTED]>
* uri.cpp (Uri::ToString): Now takes a 'flags' argument to let us
Modified: trunk/moon/src/media.cpp
===================================================================
--- trunk/moon/src/media.cpp 2008-02-20 00:21:18 UTC (rev 96213)
+++ trunk/moon/src/media.cpp 2008-02-20 00:23:01 UTC (rev 96214)
@@ -555,6 +555,7 @@
MediaElement::DownloaderAbort ()
{
if (downloader) {
+ downloader->RemoveHandler (downloader->CompletedEvent,
downloader_complete, this);
downloader_abort (downloader);
downloader->unref ();
downloader = NULL;
@@ -1582,6 +1583,8 @@
Image::DownloaderAbort ()
{
if (downloader){
+ downloader->RemoveHandler (Downloader::CompletedEvent,
downloader_complete, this);
+ downloader->RemoveHandler (Downloader::DownloadFailedEvent,
downloader_failed, this);
downloader_abort (downloader);
downloader->unref ();
downloader = NULL;
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches