WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
105676
Add a separate class for networking related storage
https://bugs.webkit.org/show_bug.cgi?id=105676
Summary
Add a separate class for networking related storage
Alexey Proskuryakov
Reported
2012-12-21 21:39:43 PST
NetworkingContext combines a reference to storage (cookies and more) and data that's only meaningful when loading. This makes it very ugly to use for cookie manipulation when there is no load (e.g. for document.cookie).
Attachments
patch for EWS
(168.36 KB, patch)
2012-12-21 21:42 PST
,
Alexey Proskuryakov
webkit-ews
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(169.25 KB, patch)
2012-12-21 22:22 PST
,
Alexey Proskuryakov
webkit-ews
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(169.71 KB, patch)
2012-12-21 22:39 PST
,
Alexey Proskuryakov
gtk-ews
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(113.00 KB, patch)
2012-12-21 22:55 PST
,
Alexey Proskuryakov
no flags
Details
Formatted Diff
Diff
why was it small?
(170.62 KB, patch)
2012-12-21 22:57 PST
,
Alexey Proskuryakov
gtk-ews
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(170.62 KB, patch)
2012-12-21 23:13 PST
,
Alexey Proskuryakov
eflews.bot
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(171.32 KB, patch)
2012-12-21 23:42 PST
,
Alexey Proskuryakov
webkit-ews
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(171.94 KB, patch)
2012-12-22 00:02 PST
,
Alexey Proskuryakov
webkit-ews
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(173.56 KB, patch)
2012-12-22 01:03 PST
,
Alexey Proskuryakov
eflews.bot
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(175.07 KB, patch)
2012-12-22 01:33 PST
,
Alexey Proskuryakov
eflews.bot
: commit-queue-
Details
Formatted Diff
Diff
patch for EWS
(176.79 KB, patch)
2012-12-22 14:04 PST
,
Alexey Proskuryakov
buildbot
: commit-queue-
Details
Formatted Diff
Diff
patch for review
(191.70 KB, patch)
2012-12-22 16:10 PST
,
Alexey Proskuryakov
sam
: review+
buildbot
: commit-queue-
Details
Formatted Diff
Diff
Show Obsolete
(11)
View All
Add attachment
proposed patch, testcase, etc.
Alexey Proskuryakov
Comment 1
2012-12-21 21:42:24 PST
Created
attachment 180590
[details]
patch for EWS Will likely take many iterations to make EWS happy...
WebKit Review Bot
Comment 2
2012-12-21 21:48:22 PST
Attachment 180590
[details]
did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/CMakeLists.txt', u'Source/W..." exit_code: 1 Source/WebCore/platform/network/NetworkingContext.h:23: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 67 files If any of these errors are false positives, please file a bug against check-webkit-style.
Early Warning System Bot
Comment 3
2012-12-21 21:50:38 PST
Comment on
attachment 180590
[details]
patch for EWS
Attachment 180590
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15452665
EFL EWS Bot
Comment 4
2012-12-21 21:51:21 PST
Comment on
attachment 180590
[details]
patch for EWS
Attachment 180590
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15456665
Early Warning System Bot
Comment 5
2012-12-21 21:52:35 PST
Comment on
attachment 180590
[details]
patch for EWS
Attachment 180590
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15457641
WebKit Review Bot
Comment 6
2012-12-21 22:08:30 PST
Comment on
attachment 180590
[details]
patch for EWS
Attachment 180590
[details]
did not pass chromium-ews (chromium-xvfb): Output:
http://queues.webkit.org/results/15475227
Alexey Proskuryakov
Comment 7
2012-12-21 22:22:43 PST
Created
attachment 180592
[details]
patch for EWS
WebKit Review Bot
Comment 8
2012-12-21 22:28:28 PST
Attachment 180592
[details]
did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/CMakeLists.txt', u'Source/W..." exit_code: 1 Source/WebCore/platform/network/NetworkingContext.h:23: Alphabetical sorting problem. [build/include_order] [4] Source/WebCore/platform/network/NetworkStorageSession.h:55: The parameter name "context" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 2 in 67 files If any of these errors are false positives, please file a bug against check-webkit-style.
Early Warning System Bot
Comment 9
2012-12-21 22:30:30 PST
Comment on
attachment 180592
[details]
patch for EWS
Attachment 180592
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15457650
Early Warning System Bot
Comment 10
2012-12-21 22:32:37 PST
Comment on
attachment 180592
[details]
patch for EWS
Attachment 180592
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15458624
EFL EWS Bot
Comment 11
2012-12-21 22:32:53 PST
Comment on
attachment 180592
[details]
patch for EWS
Attachment 180592
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15458625
Alexey Proskuryakov
Comment 12
2012-12-21 22:39:04 PST
Created
attachment 180593
[details]
patch for EWS
WebKit Review Bot
Comment 13
2012-12-21 22:45:09 PST
Attachment 180593
[details]
did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/CMakeLists.txt', u'Source/W..." exit_code: 1 Source/WebCore/platform/network/NetworkingContext.h:23: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 68 files If any of these errors are false positives, please file a bug against check-webkit-style.
kov's GTK+ EWS bot
Comment 14
2012-12-21 22:47:49 PST
Comment on
attachment 180593
[details]
patch for EWS
Attachment 180593
[details]
did not pass gtk-ews (gtk): Output:
http://queues.webkit.org/results/15456679
Early Warning System Bot
Comment 15
2012-12-21 22:47:57 PST
Comment on
attachment 180593
[details]
patch for EWS
Attachment 180593
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15458630
EFL EWS Bot
Comment 16
2012-12-21 22:48:27 PST
Comment on
attachment 180593
[details]
patch for EWS
Attachment 180593
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15454666
Early Warning System Bot
Comment 17
2012-12-21 22:49:21 PST
Comment on
attachment 180593
[details]
patch for EWS
Attachment 180593
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15451682
Alexey Proskuryakov
Comment 18
2012-12-21 22:55:36 PST
Created
attachment 180594
[details]
patch for EWS
Alexey Proskuryakov
Comment 19
2012-12-21 22:57:34 PST
Created
attachment 180595
[details]
why was it small?
kov's GTK+ EWS bot
Comment 20
2012-12-21 23:05:19 PST
Comment on
attachment 180595
[details]
why was it small?
Attachment 180595
[details]
did not pass gtk-ews (gtk): Output:
http://queues.webkit.org/results/15458631
WebKit Review Bot
Comment 21
2012-12-21 23:05:41 PST
Attachment 180595
[details]
did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/CMakeLists.txt', u'Source/W..." exit_code: 1 Source/WebCore/platform/network/NetworkingContext.h:23: Alphabetical sorting problem. [build/include_order] [4] Total errors found: 1 in 69 files If any of these errors are false positives, please file a bug against check-webkit-style.
Early Warning System Bot
Comment 22
2012-12-21 23:06:27 PST
Comment on
attachment 180595
[details]
why was it small?
Attachment 180595
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15450681
Alexey Proskuryakov
Comment 23
2012-12-21 23:13:15 PST
Created
attachment 180596
[details]
patch for EWS
EFL EWS Bot
Comment 24
2012-12-21 23:19:37 PST
Comment on
attachment 180596
[details]
patch for EWS
Attachment 180596
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15457664
Early Warning System Bot
Comment 25
2012-12-21 23:20:33 PST
Comment on
attachment 180596
[details]
patch for EWS
Attachment 180596
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15457665
Early Warning System Bot
Comment 26
2012-12-21 23:22:51 PST
Comment on
attachment 180596
[details]
patch for EWS
Attachment 180596
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15458636
WebKit Review Bot
Comment 27
2012-12-21 23:41:25 PST
Comment on
attachment 180596
[details]
patch for EWS
Attachment 180596
[details]
did not pass chromium-ews (chromium-xvfb): Output:
http://queues.webkit.org/results/15462560
Alexey Proskuryakov
Comment 28
2012-12-21 23:42:34 PST
Created
attachment 180597
[details]
patch for EWS
Early Warning System Bot
Comment 29
2012-12-21 23:50:42 PST
Comment on
attachment 180597
[details]
patch for EWS
Attachment 180597
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15462571
Early Warning System Bot
Comment 30
2012-12-21 23:52:44 PST
Comment on
attachment 180597
[details]
patch for EWS
Attachment 180597
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15452695
Alexey Proskuryakov
Comment 31
2012-12-22 00:02:18 PST
Created
attachment 180598
[details]
patch for EWS
Early Warning System Bot
Comment 32
2012-12-22 00:11:40 PST
Comment on
attachment 180598
[details]
patch for EWS
Attachment 180598
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15445781
Early Warning System Bot
Comment 33
2012-12-22 00:12:58 PST
Comment on
attachment 180598
[details]
patch for EWS
Attachment 180598
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15456694
EFL EWS Bot
Comment 34
2012-12-22 00:29:44 PST
Comment on
attachment 180598
[details]
patch for EWS
Attachment 180598
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15456697
Build Bot
Comment 35
2012-12-22 00:36:57 PST
Comment on
attachment 180598
[details]
patch for EWS
Attachment 180598
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/15460605
WebKit Review Bot
Comment 36
2012-12-22 00:45:14 PST
Comment on
attachment 180598
[details]
patch for EWS
Attachment 180598
[details]
did not pass chromium-ews (chromium-xvfb): Output:
http://queues.webkit.org/results/15445784
Alexey Proskuryakov
Comment 37
2012-12-22 01:03:22 PST
Created
attachment 180599
[details]
patch for EWS
EFL EWS Bot
Comment 38
2012-12-22 01:12:52 PST
Comment on
attachment 180599
[details]
patch for EWS
Attachment 180599
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15454702
Early Warning System Bot
Comment 39
2012-12-22 01:13:34 PST
Comment on
attachment 180599
[details]
patch for EWS
Attachment 180599
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/15445794
Early Warning System Bot
Comment 40
2012-12-22 01:14:18 PST
Comment on
attachment 180599
[details]
patch for EWS
Attachment 180599
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/15455692
Alexey Proskuryakov
Comment 41
2012-12-22 01:33:03 PST
Created
attachment 180600
[details]
patch for EWS
EFL EWS Bot
Comment 42
2012-12-22 01:42:05 PST
Comment on
attachment 180600
[details]
patch for EWS
Attachment 180600
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/15446786
Build Bot
Comment 43
2012-12-22 02:13:08 PST
Comment on
attachment 180600
[details]
patch for EWS
Attachment 180600
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/15450729
Alexey Proskuryakov
Comment 44
2012-12-22 14:04:34 PST
Created
attachment 180608
[details]
patch for EWS
Build Bot
Comment 45
2012-12-22 14:33:31 PST
Comment on
attachment 180608
[details]
patch for EWS
Attachment 180608
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/15460780
Alexey Proskuryakov
Comment 46
2012-12-22 16:10:28 PST
Created
attachment 180609
[details]
patch for review
Sam Weinig
Comment 47
2012-12-22 16:27:16 PST
Comment on
attachment 180609
[details]
patch for review View in context:
https://bugs.webkit.org/attachment.cgi?id=180609&action=review
> Source/WebCore/platform/network/NetworkStorageSession.h:41 > +class NetworkStorageSession {
Given how platform dependent this looking, do you think it might make sense to follow the idiom we use in ResourceRequest/ResourceResponse, where we have a base that is platform agnostic and concrete implementations that are platform specific? Another though is I wonder if this really needs to be storage specific? It seems like there might be other facets of a networking session that might be useful to keep.
> Source/WebCore/platform/network/PlatformCookieJar.h:49 > -String cookiesForDOM(NetworkingContext*, const KURL& firstParty, const KURL&); > -void setCookiesFromDOM(NetworkingContext*, const KURL& firstParty, const KURL&, const String&); > -bool cookiesEnabled(NetworkingContext*, const KURL& firstParty, const KURL&); > -String cookieRequestHeaderFieldValue(NetworkingContext*, const KURL& firstParty, const KURL&); > -bool getRawCookies(NetworkingContext*, const KURL& firstParty, const KURL&, Vector<Cookie>&); > -void deleteCookie(NetworkingContext*, const KURL&, const String&); > -void getHostnamesWithCookies(NetworkingContext*, HashSet<String>& hostnames); > -void deleteCookiesForHostname(NetworkingContext*, const String& hostname); > -void deleteAllCookies(NetworkingContext*); > +String cookiesForDOM(const NetworkStorageSession&, const KURL& firstParty, const KURL&); > +void setCookiesFromDOM(const NetworkStorageSession&, const KURL& firstParty, const KURL&, const String&); > +bool cookiesEnabled(const NetworkStorageSession&, const KURL& firstParty, const KURL&); > +String cookieRequestHeaderFieldValue(const NetworkStorageSession&, const KURL& firstParty, const KURL&); > +bool getRawCookies(const NetworkStorageSession&, const KURL& firstParty, const KURL&, Vector<Cookie>&); > +void deleteCookie(const NetworkStorageSession&, const KURL&, const String&); > +void getHostnamesWithCookies(const NetworkStorageSession&, HashSet<String>& hostnames); > +void deleteCookiesForHostname(const NetworkStorageSession&, const String& hostname); > +void deleteAllCookies(const NetworkStorageSession&);
Since you are passing by const reference now, the comment doesn't make as much sense. It also seems like we should eventually move these functions to be member functions on NetworkStorageSession. If so, a FIXME should be added.
Alexey Proskuryakov
Comment 48
2012-12-22 16:40:44 PST
> Given how platform dependent this looking, do you think it might make sense to follow the idiom we use in ResourceRequest/ResourceResponse, where we have a base that is platform agnostic and concrete implementations that are platform specific?
Not sure if there is anything to share here. This is now more like ResourceHandle, which works quite well in practice, arguably better than ResourceResponse (despite a number of ifdefs in the header).
> Another though is I wonder if this really needs to be storage specific? It seems like there might be other facets of a networking session that might be useful to keep.
I think that storage session management is complicated enough that it deserves its own class. Eventually, we'll expand it to provide more control, such as setting location of cache directory, or tracking more sessions.
> It also seems like we should eventually move these functions to be member functions on NetworkStorageSession. If so, a FIXME should be added.
Good idea.
Build Bot
Comment 49
2012-12-22 16:49:19 PST
Comment on
attachment 180609
[details]
patch for review
Attachment 180609
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/15452901
Sam Weinig
Comment 50
2012-12-22 17:05:47 PST
(In reply to
comment #48
)
> > Given how platform dependent this looking, do you think it might make sense to follow the idiom we use in ResourceRequest/ResourceResponse, where we have a base that is platform agnostic and concrete implementations that are platform specific? > > Not sure if there is anything to share here. This is now more like ResourceHandle, which works quite well in practice, arguably better than ResourceResponse (despite a number of ifdefs in the header). >
Ok.
> > Another though is I wonder if this really needs to be storage specific? It seems like there might be other facets of a networking session that might be useful to keep. > > I think that storage session management is complicated enough that it deserves its own class. Eventually, we'll expand it to provide more control, such as setting location of cache directory, or tracking more sessions.
Fair enough.
> > > It also seems like we should eventually move these functions to be member functions on NetworkStorageSession. If so, a FIXME should be added. > > Good idea.
Cool.
Alexey Proskuryakov
Comment 51
2012-12-22 18:17:43 PST
Committed <
http://trac.webkit.org/changeset/138413
>.
Tony Chang
Comment 52
2012-12-23 00:39:18 PST
This doesn't compile on the Chromium Linux clang build. Looks like we're trying to copy a NetworkStorageSession? Alexey, can you take a look?
http://build.chromium.org/p/tryserver.chromium/builders/linux_clang/builds/73126/steps/compile/logs/stdio
FAILED: clang++ -MMD -MF obj/third_party/WebKit/Source/WebCore/loader/webcore_remaining.CookieJar.o.d -D_FILE_OFFSET_BITS=64 -DCHROMIUM_BUILD -DCOMPONENT_BUILD -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_NSS=1 -DENABLE_ONE_CLICK_SIGNIN -DGTK_DISABLE_SINGLE_INCLUDES=1 -DENABLE_REMOTING=1 -DENABLE_WEBRTC=1 -DENABLE_PEPPER_THREADING -DENABLE_CONFIGURATION_POLICY -DENABLE_INPUT_SPEECH -DENABLE_NOTIFICATIONS -DDCHECK_ALWAYS_ON=1 -DENABLE_GPU=1 -DENABLE_EGLIMAGE=1 -DUSE_SKIA=1 -DENABLE_TASK_MANAGER=1 -DENABLE_WEB_INTENTS=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_BACKGROUND=1 -DENABLE_AUTOMATION=1 -DENABLE_GOOGLE_NOW=1 -DENABLE_LANGUAGE_DETECTION=1 -DENABLE_PRINTING=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DGL_GLEXT_PROTOTYPES '-DWEBCORE_NAVIGATOR_VENDOR="Google Inc."' -DWEBKIT_IMPLEMENTATION=1 -DENABLE_3D_PLUGIN=1 -DENABLE_BATTERY_STATUS=0 -DENABLE_BLOB=1 -DENABLE_BLOB_SLICE=1 -DENABLE_CHANNEL_MESSAGING=1 -DENABLE_CSP_NEXT=1 -DENABLE_CSS3_CONDITIONAL_RULES=0 -DENABLE_CSS3_TEXT=0 -DENABLE_CSS_BOX_DECORATION_BREAK=1 -DENABLE_CSS_COMPOSITING=0 -DENABLE_CSS_DEVICE_ADAPTATION=0 -DENABLE_CSS_EXCLUSIONS=1 -DENABLE_CSS_FILTERS=1 -DENABLE_CSS_IMAGE_SET=1 -DENABLE_CSS_IMAGE_RESOLUTION=0 -DENABLE_CSS_REGIONS=1 -DENABLE_CSS_SHADERS=1 -DENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED=1 -DENABLE_CSS_VARIABLES=1 -DENABLE_CSS_STICKY_POSITION=1 -DENABLE_CUSTOM_SCHEME_HANDLER=0 -DENABLE_DASHBOARD_SUPPORT=0 -DENABLE_DATA_TRANSFER_ITEMS=1 -DENABLE_DETAILS_ELEMENT=1 -DENABLE_DEVICE_ORIENTATION=1 -DENABLE_DIALOG_ELEMENT=1 -DENABLE_DIRECTORY_UPLOAD=1 -DENABLE_DOWNLOAD_ATTRIBUTE=1 -DENABLE_DRAGGABLE_REGION=1 -DENABLE_ENCRYPTED_MEDIA=1 -DENABLE_FILE_SYSTEM=1 -DENABLE_FILTERS=1 -DENABLE_FULLSCREEN_API=1 -DENABLE_GAMEPAD=1 -DENABLE_GEOLOCATION=1 -DENABLE_GESTURE_EVENTS=1 -DENABLE_ICONDATABASE=0 -DENABLE_IFRAME_SEAMLESS=1 -DENABLE_INDEXED_DATABASE=1 -DENABLE_INPUT_TYPE_DATE=1 -DENABLE_INPUT_TYPE_DATETIME=1 -DENABLE_INPUT_TYPE_DATETIMELOCAL=1 -DENABLE_INPUT_TYPE_MONTH=1 -DENABLE_INPUT_TYPE_TIME=1 -DENABLE_JAVASCRIPT_DEBUGGER=1 -DENABLE_JAVASCRIPT_I18N_API=1 -DENABLE_LEGACY_CSS_VENDOR_PREFIXES=0 -DENABLE_LEGACY_VIEWPORT_ADAPTION=1 -DENABLE_LEGACY_VENDOR_PREFIXES=0 -DENABLE_LEGACY_WEB_AUDIO=1 -DENABLE_LINK_PREFETCH=1 -DENABLE_LINK_PRERENDER=1 -DENABLE_MATHML=1 -DENABLE_MEDIA_SOURCE=1 -DENABLE_MEDIA_STATISTICS=1 -DENABLE_MEDIA_STREAM=1 -DENABLE_METER_ELEMENT=1 -DENABLE_MHTML=1 -DENABLE_MICRODATA=0 -DENABLE_MOUSE_CURSOR_SCALE=1 -DENABLE_MUTATION_OBSERVERS=1 -DENABLE_NAVIGATOR_CONTENT_UTILS=1 -DENABLE_PAGE_VISIBILITY_API=1 -DENABLE_PERFORMANCE_TIMELINE=1 -DENABLE_POINTER_LOCK=1 -DENABLE_PROGRESS_ELEMENT=1 -DENABLE_PROXIMITY_EVENTS=0 -DENABLE_QUOTA=1 -DENABLE_REQUEST_ANIMATION_FRAME=1 -DENABLE_REQUEST_AUTOCOMPLETE=1 -DENABLE_RESOLUTION_MEDIA_QUERY=0 -DENABLE_RESOURCE_TIMING=1 -DENABLE_RUBY=1 -DENABLE_SANDBOX=1 -DENABLE_SCRIPTED_SPEECH=1 -DENABLE_SHADOW_DOM=1 -DENABLE_SMOOTH_SCROLLING=1 -DENABLE_SQL_DATABASE=1 -DENABLE_STYLE_SCOPED=1 -DENABLE_SVG=1 -DENABLE_SVG_FONTS=1 -DENABLE_TEMPLATE_ELEMENT=1 -DENABLE_TEXT_AUTOSIZING=1 -DENABLE_TOUCH_ADJUSTMENT=1 -DENABLE_TOUCH_EVENTS=1 -DENABLE_TOUCH_ICON_LOADING=0 -DENABLE_TOUCH_EVENT_TRACKING=1 -DENABLE_TOUCH_SLIDER=1 -DENABLE_USER_TIMING=1 -DENABLE_V8_SCRIPT_DEBUG_SERVER=1 -DENABLE_VIDEO=1 -DENABLE_VIDEO_TRACK=1 -DENABLE_VIEWPORT=1 -DENABLE_WEBGL=1 -DENABLE_WEB_SOCKETS=1 -DENABLE_WEB_TIMING=1 -DENABLE_WORKERS=1 -DENABLE_XHR_RESPONSE_BLOB=1 -DENABLE_XHR_TIMEOUT=0 -DENABLE_XSLT=1 -DWTF_USE_LEVELDB=1 -DWTF_USE_BUILTIN_UTF8_CODEC=1 -DWTF_USE_OPENTYPE_SANITIZER=1 -DWTF_USE_RTL_SCROLLBAR=1 -DWTF_USE_SKIA_TEXT=1 -DWTF_USE_WEBP=1 -DWTF_USE_WEBKIT_IMAGE_DECODERS=1 -DENABLE_ACCELERATED_OVERFLOW_SCROLLING=0 -DENABLE_CALENDAR_PICKER=1 -DENABLE_DATALIST_ELEMENT=1 -DENABLE_INPUT_SPEECH=1 -DENABLE_INPUT_TYPE_COLOR=1 -DENABLE_INPUT_TYPE_WEEK=1 -DENABLE_INPUT_MULTIPLE_FIELDS_UI=1 -DENABLE_LEGACY_NOTIFICATIONS=1 -DENABLE_MEDIA_CAPTURE=0 -DENABLE_NOTIFICATIONS=1 -DENABLE_ORIENTATION_EVENTS=0 -DENABLE_PAGE_POPUP=1 -DENABLE_SHARED_WORKERS=1 -DENABLE_WEB_AUDIO=1 -DENABLE_3D_RENDERING=1 -DENABLE_ACCELERATED_2D_CANVAS=1 -DWTF_USE_ACCELERATED_COMPOSITING=1 -DWTF_USE_WEBAUDIO_FFMPEG=1 -DENABLE_OPENTYPE_VERTICAL=1 -DWTF_USE_HARFBUZZ_NG=1 -DENABLE_DEFAULT_RENDER_THEME=1 -DBUILDING_CHROMIUM__=1 -DWTF_USE_PTHREADS=1 -DU_USING_ICU_NAMESPACE=0 -DGURL_DLL -DSK_BUILD_NO_IMAGE_ENCODE -DSK_DEFERRED_CANVAS_USES_GPIPE=1 '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' -DGR_AGGRESSIVE_SHADER_OPTS=1 -DSK_USE_POSIX_THREADS -DGR_DLL -DSKIA_DLL -DCHROME_PNG_WRITE_SUPPORT -DPNG_USER_CONFIG -DLIBXML_STATIC -DLIBXSLT_STATIC -DV8_SHARED -DUSING_V8_SHARED -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -D_DEBUG -I../../third_party/icu/public/common -I../../third_party/icu/public/i18n -I../../third_party/khronos -I../../gpu -I../.. -I../../third_party -I../../third_party/WebKit/Source/Platform/chromium -Iobj/third_party/WebKit/Source/WebCore/WebCore.gyp/webcore_remaining.gen -I../../third_party/WebKit/Source/WebCore -I../../third_party/WebKit/Source -I../../third_party/WebKit/Source/WebCore/Modules/battery -I../../third_party/WebKit/Source/WebCore/Modules/filesystem -I../../third_party/WebKit/Source/WebCore/Modules/filesystem/chromium -I../../third_party/WebKit/Source/WebCore/Modules/gamepad -I../../third_party/WebKit/Source/WebCore/Modules/geolocation -I../../third_party/WebKit/Source/WebCore/Modules/intents -I../../third_party/WebKit/Source/WebCore/Modules/indexeddb -I../../third_party/WebKit/Source/WebCore/Modules/mediasource -I../../third_party/WebKit/Source/WebCore/Modules/mediastream -I../../third_party/WebKit/Source/WebCore/Modules/navigatorcontentutils -I../../third_party/WebKit/Source/WebCore/Modules/notifications -I../../third_party/WebKit/Source/WebCore/Modules/quota -I../../third_party/WebKit/Source/WebCore/Modules/speech -I../../third_party/WebKit/Source/WebCore/Modules/webaudio -I../../third_party/WebKit/Source/WebCore/Modules/webdatabase -I../../third_party/WebKit/Source/WebCore/Modules/webdatabase/chromium -I../../third_party/WebKit/Source/WebCore/Modules/websockets -I../../third_party/WebKit/Source/WebCore/accessibility -I../../third_party/WebKit/Source/WebCore/accessibility/chromium -I../../third_party/WebKit/Source/WebCore/bindings -I../../third_party/WebKit/Source/WebCore/bindings/generic -I../../third_party/WebKit/Source/WebCore/bindings/v8 -I../../third_party/WebKit/Source/WebCore/bindings/v8/custom -I../../third_party/WebKit/Source/WebCore/bridge -I../../third_party/WebKit/Source/WebCore/bridge/jni -I../../third_party/WebKit/Source/WebCore/bridge/jni/v8 -I../../third_party/WebKit/Source/WebCore/css -I../../third_party/WebKit/Source/WebCore/dom -I../../third_party/WebKit/Source/WebCore/dom/default -I../../third_party/WebKit/Source/WebCore/editing -I../../third_party/WebKit/Source/WebCore/fileapi -I../../third_party/WebKit/Source/WebCore/history -I../../third_party/WebKit/Source/WebCore/html -I../../third_party/WebKit/Source/WebCore/html/canvas -I../../third_party/WebKit/Source/WebCore/html/parser -I../../third_party/WebKit/Source/WebCore/html/shadow -I../../third_party/WebKit/Source/WebCore/html/track -I../../third_party/WebKit/Source/WebCore/inspector -I../../third_party/WebKit/Source/WebCore/loader -I../../third_party/WebKit/Source/WebCore/loader/appcache -I../../third_party/WebKit/Source/WebCore/loader/archive -I../../third_party/WebKit/Source/WebCore/loader/archive/cf -I../../third_party/WebKit/Source/WebCore/loader/archive/mhtml -I../../third_party/WebKit/Source/WebCore/loader/cache -I../../third_party/WebKit/Source/WebCore/loader/icon -I../../third_party/WebKit/Source/WebCore/mathml -I../../third_party/WebKit/Source/WebCore/page -I../../third_party/WebKit/Source/WebCore/page/animation -I../../third_party/WebKit/Source/WebCore/page/chromium -I../../third_party/WebKit/Source/WebCore/page/scrolling -I../../third_party/WebKit/Source/WebCore/page/scrolling/chromium -I../../third_party/WebKit/Source/WebCore/platform -I../../third_party/WebKit/Source/WebCore/platform/animation -I../../third_party/WebKit/Source/WebCore/platform/audio -I../../third_party/WebKit/Source/WebCore/platform/audio/chromium -I../../third_party/WebKit/Source/WebCore/platform/chromium -I../../third_party/WebKit/Source/WebCore/platform/chromium/support -I../../third_party/WebKit/Source/WebCore/platform/graphics -I../../third_party/WebKit/Source/WebCore/platform/graphics/chromium -I../../third_party/WebKit/Source/WebCore/platform/graphics/chromium/cc -I../../third_party/WebKit/Source/WebCore/platform/graphics/cpu/arm -I../../third_party/WebKit/Source/WebCore/platform/graphics/cpu/arm/filters -I../../third_party/WebKit/Source/WebCore/platform/graphics/filters -I../../third_party/WebKit/Source/WebCore/platform/graphics/filters/skia -I../../third_party/WebKit/Source/WebCore/platform/graphics/gpu -I../../third_party/WebKit/Source/WebCore/platform/graphics/opentype -I../../third_party/WebKit/Source/WebCore/platform/graphics/skia -I../../third_party/WebKit/Source/WebCore/platform/graphics/transforms -I../../third_party/WebKit/Source/WebCore/platform/image-decoders -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/bmp -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/gif -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/ico -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/jpeg -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/png -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/skia -I../../third_party/WebKit/Source/WebCore/platform/image-decoders/webp -I../../third_party/WebKit/Source/WebCore/platform/image-encoders/skia -I../../third_party/WebKit/Source/WebCore/platform/leveldb -I../../third_party/WebKit/Source/WebCore/platform/mediastream -I../../third_party/WebKit/Source/WebCore/platform/mediastream/chromium -I../../third_party/WebKit/Source/WebCore/platform/mock -I../../third_party/WebKit/Source/WebCore/platform/network -I../../third_party/WebKit/Source/WebCore/platform/network/chromium -I../../third_party/WebKit/Source/WebCore/platform/sql -I../../third_party/WebKit/Source/WebCore/platform/text -I../../third_party/WebKit/Source/WebCore/platform/text/transcoder -I../../third_party/WebKit/Source/WebCore/plugins -I../../third_party/WebKit/Source/WebCore/plugins/chromium -I../../third_party/WebKit/Source/WebCore/rendering -I../../third_party/WebKit/Source/WebCore/rendering/mathml -I../../third_party/WebKit/Source/WebCore/rendering/style -I../../third_party/WebKit/Source/WebCore/rendering/svg -I../../third_party/WebKit/Source/WebCore/storage -I../../third_party/WebKit/Source/WebCore/svg -I../../third_party/WebKit/Source/WebCore/svg/animation -I../../third_party/WebKit/Source/WebCore/svg/graphics -I../../third_party/WebKit/Source/WebCore/svg/graphics/filters -I../../third_party/WebKit/Source/WebCore/svg/properties -I../../third_party/WebKit/Source/ThirdParty/glu -I../../third_party/WebKit/Source/WebCore/workers -I../../third_party/WebKit/Source/WebCore/xml -I../../third_party/WebKit/Source/WebCore/xml/parser -I../../third_party/WebKit/Source/WebCore/platform/graphics/harfbuzz -I../../third_party/WebKit/Source/WebCore/platform/graphics/harfbuzz/ng -I../../third_party/angle/include/GLSLANG -Igen/webkit -Igen/webkit/bindings -I../../third_party/ffmpeg -I../../third_party/WebKit/Source/WTF -I../../third_party/WebKit/Source/JavaScriptCore -I../../skia/config -I../../third_party/skia/src/core -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/gpu/gl -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../skia/ext -I../../third_party/iccjpeg -I../../third_party/libwebp -I../../third_party/libpng -I../../third_party/libxml/linux/include -I../../third_party/libxml/src/include -I../../third_party/libxslt -I../../third_party/npapi -I../../third_party/npapi/bindings -I../../third_party/ots/include -I../../third_party/qcms/src -I../../third_party/sqlite -I../../third_party/zlib -I../../v8/include -I../../third_party/libjpeg_turbo -I../../third_party/leveldatabase/src/include -I../../third_party/leveldatabase/src -Wglobal-constructors -Wunused-parameter -fstack-protector --param=ssp-buffer-size=4 -Werror -pthread -fno-exceptions -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -Wheader-hygiene -Wno-unused-function -Wno-char-subscripts -Wno-unnamed-type-template-args -Wno-c++11-extensions -Wno-covered-switch-default -Xclang -load -Xclang /mnt/scratch0/b_used/build/slave/linux_clang/build/src/tools/clang/scripts/../../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang skip-virtuals-in-implementations -fcolor-diagnostics -fno-strict-aliasing -pthread -D_REENTRANT -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -Wexit-time-destructors -O0 -g -g0 -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -Wsign-compare -c ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp -o obj/third_party/WebKit/Source/WebCore/loader/webcore_remaining.CookieJar.o ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:75:26: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor return cookiesForDOM(SESSION(document), document->firstPartyForCookies(), url); ^~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:67:27: note: expanded from macro 'SESSION' #define SESSION(document) NetworkStorageSession(networkingContext(document)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/platform/network/NetworkStorageSession.h:42:26: note: function has been explicitly marked deleted here WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED; ^ ../../third_party/WebKit/Source/WTF/wtf/Noncopyable.h:29:13: note: expanded from macro 'WTF_MAKE_NONCOPYABLE' ClassName(const ClassName&) = delete; \ ^ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:84:23: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor setCookiesFromDOM(SESSION(document), document->firstPartyForCookies(), url, cookieString); ^~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:67:27: note: expanded from macro 'SESSION' #define SESSION(document) NetworkStorageSession(networkingContext(document)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/platform/network/NetworkStorageSession.h:42:26: note: function has been explicitly marked deleted here WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED; ^ ../../third_party/WebKit/Source/WTF/wtf/Noncopyable.h:29:13: note: expanded from macro 'WTF_MAKE_NONCOPYABLE' ClassName(const ClassName&) = delete; \ ^ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:93:27: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor return cookiesEnabled(SESSION(document), document->firstPartyForCookies(), document->cookieURL()); ^~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:67:27: note: expanded from macro 'SESSION' #define SESSION(document) NetworkStorageSession(networkingContext(document)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/platform/network/NetworkStorageSession.h:42:26: note: function has been explicitly marked deleted here WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED; ^ ../../third_party/WebKit/Source/WTF/wtf/Noncopyable.h:29:13: note: expanded from macro 'WTF_MAKE_NONCOPYABLE' ClassName(const ClassName&) = delete; \ ^ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:102:42: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor return cookieRequestHeaderFieldValue(SESSION(document), document->firstPartyForCookies(), url); ^~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:67:27: note: expanded from macro 'SESSION' #define SESSION(document) NetworkStorageSession(networkingContext(document)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/platform/network/NetworkStorageSession.h:42:26: note: function has been explicitly marked deleted here WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED; ^ ../../third_party/WebKit/Source/WTF/wtf/Noncopyable.h:29:13: note: expanded from macro 'WTF_MAKE_NONCOPYABLE' ClassName(const ClassName&) = delete; \ ^ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:111:26: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor return getRawCookies(SESSION(document), document->firstPartyForCookies(), url, cookies); ^~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:67:27: note: expanded from macro 'SESSION' #define SESSION(document) NetworkStorageSession(networkingContext(document)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/platform/network/NetworkStorageSession.h:42:26: note: function has been explicitly marked deleted here WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED; ^ ../../third_party/WebKit/Source/WTF/wtf/Noncopyable.h:29:13: note: expanded from macro 'WTF_MAKE_NONCOPYABLE' ClassName(const ClassName&) = delete; \ ^ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:120:18: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor deleteCookie(SESSION(document), url, cookieName); ^~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/loader/CookieJar.cpp:67:27: note: expanded from macro 'SESSION' #define SESSION(document) NetworkStorageSession(networkingContext(document)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/WebKit/Source/WebCore/platform/network/NetworkStorageSession.h:42:26: note: function has been explicitly marked deleted here WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED; ^ ../../third_party/WebKit/Source/WTF/wtf/Noncopyable.h:29:13: note: expanded from macro 'WTF_MAKE_NONCOPYABLE' ClassName(const ClassName&) = delete; \ ^ 6 errors generated. ninja: build stopped: subcommand failed.
Alexey Proskuryakov
Comment 53
2012-12-23 01:04:41 PST
Unsure why it complains, there should be no copying when binding a temporary to a const reference. Since EWS isn't saying anything, someone with a chromium build will need to fix. I have three suggestions: - check clang version, perhaps this is a compiler bug that has been fixed; - ifdef out WTF_MAKE_NONCOPYABLE for platforms that just wrap m_context; - or better, implement NetworkStorageSession in a proper way - wrapping m_context is just a hack to keep other platforms building.
Csaba Osztrogonác
Comment 54
2012-12-23 06:22:11 PST
Similar build failure on Qt Mac build, see
https://bugs.webkit.org/show_bug.cgi?id=105686
for details.
Filip Pizlo
Comment 55
2012-12-27 10:50:16 PST
This appears to have set the bots on fire. Before:
http://build.webkit.org/results/Apple%20Lion%20Debug%20WK1%20(Tests)/r138412%20(5567)/results.html
After:
http://build.webkit.org/results/Apple%20Lion%20Debug%20WK1%20(Tests)/r138413%20(5568)/results.html
Locally, I'm getting crashes on each test run. The crash always seems to look like: ASSERTION FAILED: mainThreadPthread /Volumes/Data/fromMiniMe/secondary/OpenSource/Source/WTF/wtf/mac/MainThreadMac.mm(132) : bool WTF::isMainThread() 1 0x100787e18 WTF::isMainThread() 2 0x1034b3f3d _ZN7WebCoreL28defaultNetworkStorageSessionEv 3 0x1034b3ecd WebCore::NetworkStorageSession::switchToNewTestingSession() 4 0x10141b94a +[WebPreferences(WebPrivate) _switchNetworkLoaderToNewTestingSession] 5 0x10001be2e _ZL39setDefaultsToConsistentValuesForTestingv 6 0x10001668f _ZL35prepareConsistentTestingEnvironmentv 7 0x1000161c3 dumpRenderTree(int, char const**) 8 0x1000186c9 main 9 0x1000021c4 start 10 0x2
Filip Pizlo
Comment 56
2012-12-27 11:07:59 PST
(In reply to
comment #55
)
> This appears to have set the bots on fire. > > Before:
http://build.webkit.org/results/Apple%20Lion%20Debug%20WK1%20(Tests)/r138412%20(5567)/results.html
> After:
http://build.webkit.org/results/Apple%20Lion%20Debug%20WK1%20(Tests)/r138413%20(5568)/results.html
> > Locally, I'm getting crashes on each test run. > > The crash always seems to look like: > > > ASSERTION FAILED: mainThreadPthread > /Volumes/Data/fromMiniMe/secondary/OpenSource/Source/WTF/wtf/mac/MainThreadMac.mm(132) : bool WTF::isMainThread() > 1 0x100787e18 WTF::isMainThread() > 2 0x1034b3f3d _ZN7WebCoreL28defaultNetworkStorageSessionEv > 3 0x1034b3ecd WebCore::NetworkStorageSession::switchToNewTestingSession() > 4 0x10141b94a +[WebPreferences(WebPrivate) _switchNetworkLoaderToNewTestingSession] > 5 0x10001be2e _ZL39setDefaultsToConsistentValuesForTestingv > 6 0x10001668f _ZL35prepareConsistentTestingEnvironmentv > 7 0x1000161c3 dumpRenderTree(int, char const**) > 8 0x1000186c9 main > 9 0x1000021c4 start > 10 0x2
Looks like this is fixed by
http://trac.webkit.org/changeset/138510
Roger Fong
Comment 57
2013-01-02 16:58:10 PST
8 tests crashing on Win7 port as a result of this patch. See the http security tests.
http://build.webkit.org/results/Apple%20Win%207%20Release%20(Tests)/r138413%20(31145)/results.html
Roger Fong
Comment 58
2013-01-03 13:41:27 PST
(In reply to
comment #57
)
> 8 tests crashing on Win7 port as a result of this patch. > > See the http security tests. > >
http://build.webkit.org/results/Apple%20Win%207%20Release%20(Tests)/r138413%20(31145)/results.html
https://bugs.webkit.org/show_bug.cgi?id=106032
tracking failures
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug