REGRESSION(r231622) [Win] Crashes for null dereference of prefsPrivate in WebView...
authorHironori.Fujii@sony.com <Hironori.Fujii@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 May 2018 07:15:42 +0000 (07:15 +0000)
committerHironori.Fujii@sony.com <Hironori.Fujii@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 May 2018 07:15:42 +0000 (07:15 +0000)
https://bugs.webkit.org/show_bug.cgi?id=185505

Unreviewed serious crash fix

Windows port crashes soon since Bug 184996.

* WebPreferences.cpp:
(WebPreferences::QueryInterface): Added IID_IWebPreferencesPrivate7.
* WebPreferences.h: Inherit IWebPreferencesPrivate7 instead of IWebPreferencesPrivate6.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@231635 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKitLegacy/win/ChangeLog
Source/WebKitLegacy/win/WebPreferences.cpp
Source/WebKitLegacy/win/WebPreferences.h

index f2cce84..78144c5 100644 (file)
@@ -1,3 +1,16 @@
+2018-05-10  Fujii Hironori  <Hironori.Fujii@sony.com>
+
+        REGRESSION(r231622) [Win] Crashes for null dereference of prefsPrivate in WebView::notifyPreferencesChanged
+        https://bugs.webkit.org/show_bug.cgi?id=185505
+
+        Unreviewed serious crash fix
+
+        Windows port crashes soon since Bug 184996.
+
+        * WebPreferences.cpp:
+        (WebPreferences::QueryInterface): Added IID_IWebPreferencesPrivate7.
+        * WebPreferences.h: Inherit IWebPreferencesPrivate7 instead of IWebPreferencesPrivate6.
+
 2018-05-07  Daniel Bates  <dabates@apple.com>
 
         Substitute CrossOriginPreflightResultCache::clear() for CrossOriginPreflightResultCache::empty()
index b78c37a..a2f05c7 100644 (file)
@@ -576,6 +576,8 @@ HRESULT WebPreferences::QueryInterface(_In_ REFIID riid, _COM_Outptr_ void** ppv
         *ppvObject = static_cast<IWebPreferencesPrivate5*>(this);
     else if (IsEqualGUID(riid, IID_IWebPreferencesPrivate6))
         *ppvObject = static_cast<IWebPreferencesPrivate6*>(this);
+    else if (IsEqualGUID(riid, IID_IWebPreferencesPrivate7))
+        *ppvObject = static_cast<IWebPreferencesPrivate7*>(this);
     else if (IsEqualGUID(riid, CLSID_WebPreferences))
         *ppvObject = this;
     else
index fc3782a..9d93ff2 100644 (file)
@@ -30,7 +30,7 @@
 #include <WebCore/BString.h>
 #include <wtf/RetainPtr.h>
 
-class WebPreferences : public IWebPreferences, public IWebPreferencesPrivate6 {
+class WebPreferences : public IWebPreferences, public IWebPreferencesPrivate7 {
 public:
     static WebPreferences* createInstance();
 protected: