Title: [228143] trunk/Source/WebCore
Revision
228143
Author
[email protected]
Date
2018-02-05 16:49:22 -0800 (Mon, 05 Feb 2018)

Log Message

[Win] Release assert failed under NetworkStateNotifier::singleton.
https://bugs.webkit.org/show_bug.cgi?id=182516

Reviewed by Brent Fulgham.

The callback NetworkStateNotifier::addressChangeCallback will always be called on a
worker thread on Windows. Since the method NetworkStateNotifier::singleton() is
called by NetworkStateNotifier::addressChangeCallback, but has to be called on the
on the main thread, the call has to be moved there.

No new tests. I have not been able to reproduce the crash.

* platform/network/win/NetworkStateNotifierWin.cpp:
(WebCore::NetworkStateNotifier::addressChangeCallback):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (228142 => 228143)


--- trunk/Source/WebCore/ChangeLog	2018-02-06 00:32:54 UTC (rev 228142)
+++ trunk/Source/WebCore/ChangeLog	2018-02-06 00:49:22 UTC (rev 228143)
@@ -1,3 +1,20 @@
+2018-02-05  Per Arne Vollan  <[email protected]>
+
+        [Win] Release assert failed under NetworkStateNotifier::singleton.
+        https://bugs.webkit.org/show_bug.cgi?id=182516
+
+        Reviewed by Brent Fulgham.
+
+        The callback NetworkStateNotifier::addressChangeCallback will always be called on a
+        worker thread on Windows. Since the method NetworkStateNotifier::singleton() is
+        called by NetworkStateNotifier::addressChangeCallback, but has to be called on the
+        on the main thread, the call has to be moved there.
+
+        No new tests. I have not been able to reproduce the crash.
+
+        * platform/network/win/NetworkStateNotifierWin.cpp:
+        (WebCore::NetworkStateNotifier::addressChangeCallback):
+
 2018-02-05  Don Olmstead  <[email protected]>
 
         Abstract heap generator should include _javascript_Core headers directly

Modified: trunk/Source/WebCore/platform/network/win/NetworkStateNotifierWin.cpp (228142 => 228143)


--- trunk/Source/WebCore/platform/network/win/NetworkStateNotifierWin.cpp	2018-02-06 00:32:54 UTC (rev 228142)
+++ trunk/Source/WebCore/platform/network/win/NetworkStateNotifierWin.cpp	2018-02-06 00:49:22 UTC (rev 228143)
@@ -58,11 +58,11 @@
 
 void CALLBACK NetworkStateNotifier::addressChangeCallback(void*, BOOLEAN timedOut)
 {
-    // NotifyAddrChange only notifies us of a single address change. Now that we've been notified,
-    // we need to call it again so we'll get notified the *next* time.
-    singleton().registerForAddressChange();
+    callOnMainThread([] {
+        // NotifyAddrChange only notifies us of a single address change. Now that we've been notified,
+        // we need to call it again so we'll get notified the *next* time.
+        singleton().registerForAddressChange();
 
-    callOnMainThread([] {
         singleton().updateStateSoon();
     });
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to