@@ -21,10 +21,6 @@ cdef public cpp_bool CookieAccessFilter_CanSendCookie(
2121 cdef py_bool retval
2222 try :
2323 Debug(" CookieAccessFilter_CanSendCookie" )
24- # Issue #455: CefRequestHandler callbacks still executed after
25- # browser was closed.
26- if IsBrowserClosed(cef_browser):
27- return False
2824 # This callback runs on the IO thread, where CefFrame::GetBrowser()
2925 # may return NULL (observed for cross-origin subresource requests). CEF
3026 # also documents browser/frame as optional ("may be NULL for requests
@@ -34,10 +30,15 @@ cdef public cpp_bool CookieAccessFilter_CanSendCookie(
3430 # and allow the cookie by default (CEF's own default is true). The app
3531 # therefore cannot filter these cookies - documented as a limitation in
3632 # api/RequestHandler.md.
37- if not cef_frame.get() or not cef_frame.get().GetBrowser().get():
33+ if not cef_browser.get() or not cef_frame.get() \
34+ or not cef_frame.get().GetBrowser().get():
3835 Debug(" CanSendCookie: no resolvable browser for the request"
3936 " (IO-thread / service-worker request); allowing by default" )
4037 return True
38+ # Issue #455: CefRequestHandler callbacks still executed after
39+ # browser was closed.
40+ if IsBrowserClosed(cef_browser):
41+ return False
4142
4243 browser = GetPyBrowser(cef_browser, " CanSendCookie" )
4344 frame = GetPyFrame(cef_frame)
@@ -73,19 +74,20 @@ cdef public cpp_bool CookieAccessFilter_CanSaveCookie(
7374 cdef object callback
7475 cdef py_bool retval
7576 try :
76- # Issue #455: CefRequestHandler callbacks still executed after
77- # browser was closed.
78- if IsBrowserClosed(cef_browser):
79- return False
8077 # See CanSendCookie above. On the IO thread CefFrame::GetBrowser() may
8178 # be NULL (and CEF documents browser/frame as optional). Without a
8279 # resolvable browser we cannot build a PyFrame, so log and allow the
8380 # cookie by default; the app cannot filter these cookies (see
8481 # api/RequestHandler.md).
85- if not cef_frame.get() or not cef_frame.get().GetBrowser().get():
82+ if not cef_browser.get() or not cef_frame.get() \
83+ or not cef_frame.get().GetBrowser().get():
8684 Debug(" CanSaveCookie: no resolvable browser for the request"
8785 " (IO-thread / service-worker request); allowing by default" )
8886 return True
87+ # Issue #455: CefRequestHandler callbacks still executed after
88+ # browser was closed.
89+ if IsBrowserClosed(cef_browser):
90+ return False
8991
9092 browser = GetPyBrowser(cef_browser, " CanSaveCookie" )
9193 frame = GetPyFrame(cef_frame)
0 commit comments