void startObservingCookieChanges() { ASSERT(isMainThread()); CFRunLoopRef runLoop = cookieStorageObserverRunLoop(); ASSERT(runLoop); RetainPtr<CFHTTPCookieStorageRef> cookieStorage = currentCFHTTPCookieStorage(); ASSERT(cookieStorage); CFHTTPCookieStorageScheduleWithRunLoop(cookieStorage.get(), runLoop, kCFRunLoopCommonModes); CFHTTPCookieStorageAddObserver(cookieStorage.get(), runLoop, kCFRunLoopDefaultMode, notifyCookiesChanged, 0); }
void startObservingCookieChanges(CookieChangeCallbackPtr callback) { ASSERT(isMainThread()); ASSERT(!cookieChangeCallback); cookieChangeCallback = callback; CFRunLoopRef runLoop = cookieStorageObserverRunLoop(); ASSERT(runLoop); RetainPtr<CFHTTPCookieStorageRef> cookieStorage = NetworkStorageSession::defaultStorageSession().cookieStorage(); ASSERT(cookieStorage); CFHTTPCookieStorageScheduleWithRunLoop(cookieStorage.get(), runLoop, kCFRunLoopCommonModes); CFHTTPCookieStorageAddObserver(cookieStorage.get(), runLoop, kCFRunLoopDefaultMode, notifyCookiesChanged, 0); }