Changeset 207144 in webkit


Ignore:
Timestamp:
Oct 11, 2016 9:33:30 AM (8 years ago)
Author:
Ryan Haddad
Message:

Unreviewed, rolling out r207067.

This change caused webkitpy test failures.

Reverted changeset:

"[Win] Parallel DRTs are sharing preferences and cache."
https://bugs.webkit.org/show_bug.cgi?id=163013
http://trac.webkit.org/changeset/207067

Location:
trunk
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/win/ChangeLog

    r207067 r207144  
     12016-10-11  Ryan Haddad  <ryanhaddad@apple.com>
     2
     3        Unreviewed, rolling out r207067.
     4
     5        This change caused webkitpy test failures.
     6
     7        Reverted changeset:
     8
     9        "[Win] Parallel DRTs are sharing preferences and cache."
     10        https://bugs.webkit.org/show_bug.cgi?id=163013
     11        http://trac.webkit.org/changeset/207067
     12
    1132016-10-11  Per Arne Vollan  <pvollan@apple.com>
    214
  • trunk/Source/WebKit/win/Interfaces/IWebPreferencesPrivate.idl

    r207067 r207144  
    188188}
    189189
    190 [uuid(F9582D72-6348-45B1-AB09-39E33459B5B9)]
    191 interface IWebPreferencesPrivate4 : IWebPreferencesPrivate3
    192 {
    193     HRESULT setApplicationId([in] BSTR applicationId);
    194 }
  • trunk/Source/WebKit/win/WebApplicationCache.cpp

    r207067 r207144  
    2929#include "CFDictionaryPropertyBag.h"
    3030#include "MarshallingHelpers.h"
    31 #include "WebPreferences.h"
    3231#include "WebSecurityOrigin.h"
    3332#include <wtf/RetainPtr.h>
     
    7069
    7170#if USE(CF)
    72     auto cacheDirectoryPreference = adoptCF(CFPreferencesCopyAppValue(WebKitLocalCacheDefaultsKey, WebPreferences::applicationId()));
     71    auto cacheDirectoryPreference = adoptCF(CFPreferencesCopyAppValue(WebKitLocalCacheDefaultsKey, kCFPreferencesCurrentApplication));
    7372    if (cacheDirectoryPreference && CFStringGetTypeID() == CFGetTypeID(cacheDirectoryPreference.get()))
    7473        path = static_cast<CFStringRef>(cacheDirectoryPreference.get());
  • trunk/Source/WebKit/win/WebCache.cpp

    r207067 r207144  
    3636#if USE(CURL)
    3737#include <WebCore/CurlCacheManager.h>
    38 #elif USE(CFNETWORK)
    39 #include <CFNetwork/CFURLCachePriv.h>
    40 #include <WebKitSystemInterface/WebKitSystemInterface.h>
    41 #endif
    42 
    43 using namespace WebCore;
     38#endif
    4439
    4540// WebCache ---------------------------------------------------------------------------
     
    249244    *location = WebCore::BString(cacheFolder).release();
    250245    return S_OK;
    251 #elif USE(CFNETWORK)
    252     RetainPtr<CFStringRef> cfurlCacheDirectory = adoptCF(wkCopyFoundationCacheDirectory(0));
    253     *location = BString(cfurlCacheDirectory.get()).release();
    254     return S_OK;
     246#else
     247    return E_NOTIMPL;
    255248#endif
    256249}
     
    262255    WebCore::CurlCacheManager::getInstance().setCacheDirectory(cacheFolder);
    263256    return S_OK;
    264 #elif USE(CFNETWORK)
    265     RetainPtr<CFURLCacheRef> cache = adoptCF(CFURLCacheCopySharedURLCache());
    266     CFIndex memoryCapacity = CFURLCacheMemoryCapacity(cache.get());
    267     CFIndex diskCapacity = CFURLCacheDiskCapacity(cache.get());
    268     RetainPtr<CFURLCacheRef> newCache = adoptCF(CFURLCacheCreate(kCFAllocatorDefault, memoryCapacity, diskCapacity, String(location).createCFString().get()));
    269     CFURLCacheSetSharedURLCache(newCache.get());
    270     return S_OK;
    271 #endif
    272 }
     257#else
     258    return E_NOTIMPL;
     259#endif
     260}
  • trunk/Source/WebKit/win/WebDatabaseManager.cpp

    r207067 r207144  
    3434#include "MarshallingHelpers.h"
    3535#include "WebNotificationCenter.h"
    36 #include "WebPreferences.h"
    3736#include "WebSecurityOrigin.h"
    3837
     
    422421{
    423422#if USE(CF)
    424     RetainPtr<CFPropertyListRef> directoryPref = adoptCF(CFPreferencesCopyAppValue(WebDatabaseDirectoryDefaultsKey, WebPreferences::applicationId()));
     423    RetainPtr<CFPropertyListRef> directoryPref = adoptCF(CFPreferencesCopyAppValue(WebDatabaseDirectoryDefaultsKey, kCFPreferencesCurrentApplication));
    425424    if (directoryPref && (CFStringGetTypeID() == CFGetTypeID(directoryPref.get())))
    426425        return static_cast<CFStringRef>(directoryPref.get());
  • trunk/Source/WebKit/win/WebPreferences.cpp

    r207067 r207144  
    102102static CFDictionaryRef defaultSettings;
    103103
    104 RetainPtr<CFStringRef> WebPreferences::m_applicationId = kCFPreferencesCurrentApplication;
    105 
    106104static HashMap<WTF::String, COMPtr<WebPreferences>>& webPreferencesInstances()
    107105{
     
    184182    if (webPreference && webPreference->m_refCount == 1)
    185183        webPreferencesInstances().remove(identifierString);
    186 }
    187 
    188 CFStringRef WebPreferences::applicationId()
    189 {
    190     return m_applicationId.get();
    191184}
    192185
     
    314307        return value;
    315308
    316     value = adoptCF(CFPreferencesCopyAppValue(key, applicationId()));
     309    value = adoptCF(CFPreferencesCopyAppValue(key, kCFPreferencesCurrentApplication));
    317310    if (value)
    318311        return value;
     
    325318    CFDictionarySetValue(m_privatePrefs.get(), key, value);
    326319    if (m_autoSaves) {
    327         CFPreferencesSetAppValue(key, value, applicationId());
     320        CFPreferencesSetAppValue(key, value, kCFPreferencesCurrentApplication);
    328321        save();
    329322    }
     
    456449void WebPreferences::save()
    457450{
    458     CFPreferencesAppSynchronize(applicationId());
     451    CFPreferencesAppSynchronize(kCFPreferencesCurrentApplication);
    459452}
    460453
     
    548541    else if (IsEqualGUID(riid, IID_IWebPreferencesPrivate3))
    549542        *ppvObject = static_cast<IWebPreferencesPrivate3*>(this);
    550     else if (IsEqualGUID(riid, IID_IWebPreferencesPrivate4))
    551         *ppvObject = static_cast<IWebPreferencesPrivate4*>(this);
    552543    else if (IsEqualGUID(riid, CLSID_WebPreferences))
    553544        *ppvObject = this;
     
    20031994    return S_OK;
    20041995}
    2005 
    2006 HRESULT WebPreferences::setApplicationId(BSTR applicationId)
    2007 {
    2008     m_applicationId = String(applicationId).createCFString();
    2009     return S_OK;
    2010 }
  • trunk/Source/WebKit/win/WebPreferences.h

    r207067 r207144  
    2424 */
    2525
    26 #pragma once
     26#ifndef WebPreferences_H
     27#define WebPreferences_H
    2728
    2829#include "WebKit.h"
     
    3132#include <wtf/RetainPtr.h>
    3233
    33 class WebPreferences : public IWebPreferences, public IWebPreferencesPrivate4 {
     34class WebPreferences : public IWebPreferences, public IWebPreferencesPrivate3 {
    3435public:
    3536    static WebPreferences* createInstance();
     
    244245    virtual HRESULT STDMETHODCALLTYPE setModernMediaControlsEnabled(BOOL);
    245246
    246     // IWebPreferencesPrivate4
    247     virtual HRESULT STDMETHODCALLTYPE setApplicationId(BSTR);
    248 
    249247    // WebPreferences
    250248
     
    259257    static void removeReferenceForIdentifier(BSTR identifier);
    260258    static WebPreferences* sharedStandardPreferences();
    261 
    262     static CFStringRef applicationId();
    263259
    264260    // From WebHistory.h
     
    268264    HRESULT setHistoryAgeInDaysLimit(int);
    269265
    270     void willAddToWebView();
    271     void didRemoveFromWebView();
     266     void willAddToWebView();
     267     void didRemoveFromWebView();
    272268
    273269    HRESULT postPreferencesChangesNotification();
     
    302298    bool m_automaticallyDetectsCacheModel { true };
    303299    unsigned m_numWebViews { 0 };
    304     static RetainPtr<CFStringRef> m_applicationId;
    305300};
     301
     302#endif
  • trunk/Source/WebKit/win/WebView.cpp

    r207067 r207144  
    502502    RetainPtr<CFStringRef> cfurlCacheDirectory = adoptCF(wkCopyFoundationCacheDirectory(0));
    503503    if (!cfurlCacheDirectory) {
    504         RetainPtr<CFPropertyListRef> preference = adoptCF(CFPreferencesCopyAppValue(WebKitLocalCacheDefaultsKey, WebPreferences::applicationId()));
     504        RetainPtr<CFPropertyListRef> preference = adoptCF(CFPreferencesCopyAppValue(WebKitLocalCacheDefaultsKey, kCFPreferencesCurrentApplication));
    505505        if (preference && (CFStringGetTypeID() == CFGetTypeID(preference.get())))
    506506            cfurlCacheDirectory = adoptCF(static_cast<CFStringRef>(preference.leakRef()));
  • trunk/Tools/ChangeLog

    r207067 r207144  
     12016-10-11  Ryan Haddad  <ryanhaddad@apple.com>
     2
     3        Unreviewed, rolling out r207067.
     4
     5        This change caused webkitpy test failures.
     6
     7        Reverted changeset:
     8
     9        "[Win] Parallel DRTs are sharing preferences and cache."
     10        https://bugs.webkit.org/show_bug.cgi?id=163013
     11        http://trac.webkit.org/changeset/207067
     12
    1132016-10-11  Per Arne Vollan  <pvollan@apple.com>
    214
  • trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp

    r207067 r207144  
    5050#include <io.h>
    5151#include <math.h>
    52 #include <shlobj.h>
    5352#include <shlwapi.h>
    5453#include <tchar.h>
     
    861860}
    862861
    863 static String applicationId()
    864 {
    865     DWORD processId = ::GetCurrentProcessId();
    866     return String::format("com.apple.DumpRenderTree.%d", processId);
    867 }
    868 
    869 static void setApplicationId()
    870 {
    871     COMPtr<IWebPreferences> preferences;
    872     if (SUCCEEDED(WebKitCreateInstance(CLSID_WebPreferences, 0, IID_IWebPreferences, (void**)&preferences))) {
    873         COMPtr<IWebPreferencesPrivate4> prefsPrivate4(Query, preferences);
    874         ASSERT(prefsPrivate4);
    875         _bstr_t fileName = applicationId().charactersWithNullTermination().data();
    876         prefsPrivate4->setApplicationId(fileName);
    877     }
    878 }
    879 
    880 static void setCacheFolder()
    881 {
    882     String libraryPath = libraryPathForDumpRenderTree();
    883 
    884     COMPtr<IWebCache> webCache;
    885     if (SUCCEEDED(WebKitCreateInstance(CLSID_WebCache, 0, IID_IWebCache, (void**)&webCache))) {
    886         _bstr_t cacheFolder = WebCore::pathByAppendingComponent(libraryPath, "LocalCache").utf8().data();
    887         webCache->setCacheFolder(cacheFolder);
    888     }
    889 }
    890 
    891862// Called once on DumpRenderTree startup.
    892863static void setDefaultsToConsistentValuesForTesting()
    893864{
    894865#if USE(CF)
    895     // Create separate preferences for each DRT instance
    896     setApplicationId();
    897 
    898     RetainPtr<CFStringRef> appId = applicationId().createCFString();
    899 
    900866    String libraryPath = libraryPathForDumpRenderTree();
    901867
    902868    // Set up these values before creating the WebView so that the various initializations will see these preferred values.
    903     CFPreferencesSetAppValue(WebDatabaseDirectoryDefaultsKey, WebCore::pathByAppendingComponent(libraryPath, "Databases").createCFString().get(), appId.get());
    904     CFPreferencesSetAppValue(WebStorageDirectoryDefaultsKey, WebCore::pathByAppendingComponent(libraryPath, "LocalStorage").createCFString().get(), appId.get());
    905     CFPreferencesSetAppValue(WebKitLocalCacheDefaultsKey, WebCore::pathByAppendingComponent(libraryPath, "LocalCache").createCFString().get(), appId.get());
    906 
    907     // Create separate cache for each DRT instance
    908     setCacheFolder();
     869    CFPreferencesSetAppValue(WebDatabaseDirectoryDefaultsKey, WebCore::pathByAppendingComponent(libraryPath, "Databases").createCFString().get(), kCFPreferencesCurrentApplication);
     870    CFPreferencesSetAppValue(WebStorageDirectoryDefaultsKey, WebCore::pathByAppendingComponent(libraryPath, "LocalStorage").createCFString().get(), kCFPreferencesCurrentApplication);
     871    CFPreferencesSetAppValue(WebKitLocalCacheDefaultsKey, WebCore::pathByAppendingComponent(libraryPath, "LocalCache").createCFString().get(), kCFPreferencesCurrentApplication);
    909872#endif
    910873}
  • trunk/Tools/Scripts/webkitpy/port/win.py

    r207067 r207144  
    2929
    3030import atexit
    31 import glob
     31import os
    3232import logging
    33 import os
    3433import re
    3534import sys
     
    353352        self.prevent_error_dialogs()
    354353        self.delete_sem_locks()
    355 
    356         preferences_files = self._filesystem.join(os.environ['APPDATA'], "Apple Computer/Preferences", "com.apple.DumpRenderTree*")
    357         filelist = glob.glob(preferences_files)
    358         for file in filelist:
    359             self._filesystem.remove(file)
    360 
    361354        super(WinPort, self).setup_test_run(device_class)
    362355
Note: See TracChangeset for help on using the changeset viewer.