For most ports it is sufficient to encode the ResourceRequestBase, and if needed some additional platform data. We should share the common part.
Created attachment 149963 [details] Patch
Comment on attachment 149963 [details] Patch Attachment 149963 [details] did not pass win-ews (win): Output: http://queues.webkit.org/results/13106194
Created attachment 150120 [details] Patch
Comment on attachment 150120 [details] Patch This is out of date and need to be updated.
Created attachment 167081 [details] Patch
Comment on attachment 167081 [details] Patch Attachment 167081 [details] did not pass win-ews (win): Output: http://queues.webkit.org/results/14136997
Created attachment 167111 [details] Patch
Simon, could you review this? Originally you was the one mentioned that these should be shared across ports. :) After my first patch a patch landed for platforms using soup, but still Qt can also use the same code to serialize the common data.
Landed in http://trac.webkit.org/changeset/131168
Comment on attachment 167111 [details] Patch It broke the ARM build: /mnt/raptor2/slaves/qt5-linux-armv7-release/build/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp:505:45: error: 'const ValueType' has no member named 'first' /mnt/raptor2/slaves/qt5-linux-armv7-release/build/Source/WebKit2/Shared/WebCoreArgumentCoders.cpp:505:56: error: 'const ValueType' has no member named 'second'
This change has broken the EFL builds also: http://build.webkit.org/waterfall?category=EFL
(In reply to comment #11) > This change has broken the EFL builds also: > http://build.webkit.org/waterfall?category=EFL Sorry, hopefully I fixed all the builds in http://trac.webkit.org/changeset/131170.
Another error has now popped up: Linking CXX shared library ../../lib/libewebkit2.so CMakeFiles/ewebkit2.dir/Shared/soup/WebCoreArgumentCodersSoup.cpp.o: In function `CoreIPC::ArgumentCoder<WebCore::ResourceError>::encode(CoreIPC::ArgumentEncoder*, WebCore::ResourceError const&)': WebCoreArgumentCodersSoup.cpp:(.text+0xe4): multiple definition of `CoreIPC::ArgumentCoder<WebCore::ResourceError>::encode(CoreIPC::ArgumentEncoder*, WebCore::ResourceError const&)' CMakeFiles/ewebkit2.dir/Shared/WebCoreArgumentCoders.cpp.o:WebCoreArgumentCoders.cpp:(.text+0x11ca): first defined here CMakeFiles/ewebkit2.dir/Shared/soup/WebCoreArgumentCodersSoup.cpp.o: In function `CoreIPC::ArgumentCoder<WebCore::ResourceError>::decode(CoreIPC::ArgumentDecoder*, WebCore::ResourceError&)': WebCoreArgumentCodersSoup.cpp:(.text+0xe6): multiple definition of `CoreIPC::ArgumentCoder<WebCore::ResourceError>::decode(CoreIPC::ArgumentDecoder*, WebCore::ResourceError&)' CMakeFiles/ewebkit2.dir/Shared/WebCoreArgumentCoders.cpp.o:WebCoreArgumentCoders.cpp:(.text+0x1318): first defined here collect2: ld returned 1 exit status make[2]: *** [lib/libewebkit2.so.0.1.0] Error 1 make[1]: *** [Source/WebKit2/CMakeFiles/ewebkit2.dir/all] Error 2 make: *** [all] Error 2
Sorry, it's not my day. Should be fixed by http://trac.webkit.org/changeset/131174