Maybe create a testing-only WebIDL interface or magic object that passes structured clone serialization but fails deserialization in order to test "messageerror" events

RESOLVED FIXED in Firefox 64

Status

()

enhancement
P3
normal
RESOLVED FIXED
10 months ago
3 months ago

People

(Reporter: asuth, Assigned: perry)

Tracking

unspecified
mozilla64
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox64 fixed)

Details

Attachments

(1 attachment)

It's hard to test "messageerror" implementations because it requires that structured cloning serialization passed on the sender's side, but that deserialization fails at the target/recipient.  The only case we seemed to be able to successfully test this was by sending a SharedArrayBuffer to a ServiceWorker where the interface was disabled, tripping step 3.3.2 of https://html.spec.whatwg.org/multipage/structured-data.html#structureddeserializewithtransfer.

Since SharedArrayBuffers are now totally disabled, this makes it basically impossible to test.  But what if we created a special "doomed" interface/object enabled by preference so that we could reliably test "messageerror" events?  It's also possible I'm missing an obvious way to induce this failure with existing mechanisms.

needinfo-ing :baku for structured clone expertise, :annevk for spec expertise here, and :smaug for general expertise and high probability of getting the review...
Flags: needinfo?(bugs)
Flags: needinfo?(annevk)
Flags: needinfo?(amarchesini)
> Since SharedArrayBuffers are now totally disabled, this makes it basically
> impossible to test.  But what if we created a special "doomed"
> interface/object enabled by preference so that we could reliably test
> "messageerror" events?  It's also possible I'm missing an obvious way to
> induce this failure with existing mechanisms.

We have several webidl interfaces exposed only for testing.
What you are proposing is a good idea. I suggest something like this:

[Constructor(boolean failWhenSerialized, bool failWhenDeserialize),
 Exposed=(Window,Worker),
 Prefs="dom.test.something"]
interface StructuredCloneTester {
}

It should not too hard to write such interface and the corresponding tests.
Flags: needinfo?(amarchesini)

Comment 2

10 months ago
Thought: if we have a mechanism to test OOM for a particular global/agent, you could message a large ArrayBuffer to such an OOM global/agent (that still has enough memory for the event listener).

(SharedArrayBuffer can also be tested across origin boundaries, from windows to shared workers, and between shared workers and service workers. I don't think the API should be disabled in service workers though, service workers just cannot share memory with windows or shared workers, only with nested dedicated workers (though I'm not sure if we support that yet).)
Flags: needinfo?(annevk)
Yeah, I was thinking about the OOM case too, but the reality is that I think we really only are able to handle "no, content code, you're asking for way too much memory and I'll stop you right there" when they do something like `new Array(1e12)`.  I think we'd need a very targeted failure injection system that hooked the binary at a gdb-like level or something like that to use it for this case.  (Especially if we're trying to avoid having a very slow test that doesn't run into other issues like maximum IPC message size, etc.)
Assignee: nobody → perry
Status: NEW → ASSIGNED

Comment 4

10 months ago
So the new object would be cloneable or transferable or both somehow to test possible issue in both cases? Either way, sounds reasonable for testing.
Flags: needinfo?(bugs)
Priority: -- → P3
Assignee

Comment 5

10 months ago
StructuredCloneTester objects can configured to be serializable (or not) and
deserializable (or not) by the structured clone algorithm. They can be used to
test, for example, onmessageerror event handlers, where the messageerror event
is fired when a message fails to be deserialized (but was successfully serialized).
The class is pref'ed with "dom.testing.structuredclonetester.enabled".
Assignee

Comment 6

10 months ago
Testing this testing class depends on bug 1399446 (which in turn depends on this testing class), so the applicable tests are submitted with bug 1399446.
Comment on attachment 9007071 [details]
Bug 1487463 - implement StructuredCloneTester to be used in testing r?smaug

Andrea Marchesini [:baku] has approved the revision.
Attachment #9007071 - Flags: review+
Assignee

Updated

9 months ago
Keywords: checkin-needed

Comment 8

9 months ago
Pushed by aiakab@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8152c0b1017c
implement StructuredCloneTester to be used in testing r=baku
Keywords: checkin-needed
Backed out changeset 8152c0b1017c (bug 1487463) for bustages at dom/bindings/StructuredCloneTesterBinding.cpp on a CLOSED TREE

Backout link: https://hg.mozilla.org/integration/autoland/rev/91525a6d91c66fd7fcfffd5fec217104f2355dd7

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed,busted,exception&revision=8152c0b1017c1d77dc1d1e7ef9f5dce850e2c492

Log link: https://treeherder.mozilla.org/logviewer.html#?job_id=202328485&repo=autoland&lineNumber=24854

Log snippet: 

[task 2018-09-29T00:44:37.986Z] 00:44:37     INFO -  dom/media/fake-cdm/libfake.so
[task 2018-09-29T00:44:37.986Z] 00:44:37     INFO -  rm -f libfake.so
[task 2018-09-29T00:44:37.986Z] 00:44:37     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.082Z] 00:44:38     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.083Z] 00:44:38     INFO -  /builds/worker/workspace/build/src/sccache2/sccache /builds/worker/workspace/build/src/clang/bin/clang++ --target=i686-linux-gnu -Qunused-arguments -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Qunused-arguments -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++1z-compat -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Werror=non-literal-null-conversion -Wstring-conversion -Wtautological-overlap-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-unknown-warning-option -Wno-return-type-c-linkage -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -march=pentium-m -msse -msse2 -mfpmath=sse -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/build/src/obj-firefox/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -Os -fno-omit-frame-pointer -funwind-tables -Werror  -fPIC -shared -Wl,-z,defs -Wl,--gc-sections -Wl,-h,libfake.so -o libfake.so /builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm/libfake_so.list   -lpthread -Wl,-z,noexecstack -Wl,-z,text -Wl,-z,relro -Wl,-z,nocopyreloc -Wl,--build-id=sha1 -Wl,-rpath-link,/builds/worker/workspace/build/src/obj-firefox/dist/bin -Wl,-rpath-link,/usr/local/lib        -ldl  -Wl,--version-script,/builds/worker/workspace/build/src/build/unix/stdc++compat/hide_std.ld
[task 2018-09-29T00:44:38.083Z] 00:44:38     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.221Z] 00:44:38     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.221Z] 00:44:38     INFO -  /builds/worker/workspace/build/src/obj-firefox/_virtualenvs/init/bin/python -m mozbuild.action.check_binary --target libfake.so
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  TEST-PASS | check_stdcxx | libfake.so
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  TEST-PASS | check_libgcc | libfake.so
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  TEST-PASS | check_glibc | libfake.so
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  TEST-PASS | check_textrel | libfake.so
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  chmod +x libfake.so
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  ../../../config/nsinstall -R -m 644 'libfake.so' '../../../dist/bin/gmp-fake/1.0'
[task 2018-09-29T00:44:38.222Z] 00:44:38     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media/fake-cdm'
[task 2018-09-29T00:44:38.243Z] 00:44:38     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:38.245Z] 00:44:38     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:38.246Z] 00:44:38     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:38.247Z] 00:44:38     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:41.362Z] 00:44:41     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:41.366Z] 00:44:41     INFO -  /builds/worker/workspace/build/src/sccache2/sccache /builds/worker/workspace/build/src/clang/bin/clang++ --target=i686-linux-gnu -o Unified_cpp_dom_media10.o -c  -I/builds/worker/workspace/build/src/obj-firefox/dist/stl_wrappers -I/builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DHAVE_UINT64_T -DWEBRTC_POSIX -DWEBRTC_BUILD_LIBEVENT -DWEBRTC_LINUX -DMOZILLA_INTERNAL_API -DTRACING -DOS_POSIX=1 -DOS_LINUX=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/builds/worker/workspace/build/src/dom/media -I/builds/worker/workspace/build/src/obj-firefox/dom/media -I/builds/worker/workspace/build/src/caps -I/builds/worker/workspace/build/src/docshell/base -I/builds/worker/workspace/build/src/dom/base -I/builds/worker/workspace/build/src/layout/generic -I/builds/worker/workspace/build/src/layout/xul -I/builds/worker/workspace/build/src/media/libyuv/libyuv/include -I/builds/worker/workspace/build/src/netwerk/base -I/builds/worker/workspace/build/src/media/webrtc/signaling/src/common -I/builds/worker/workspace/build/src/media/webrtc/trunk -I/builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders -I/builds/worker/workspace/build/src/ipc/chromium/src -I/builds/worker/workspace/build/src/ipc/glue -I/builds/worker/workspace/build/src/obj-firefox/dist/include -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nspr -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-firefox/mozilla-config.h -Qunused-arguments -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Qunused-arguments -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++1z-compat -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Werror=non-literal-null-conversion -Wstring-conversion -Wtautological-overlap-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-unknown-warning-option -Wno-return-type-c-linkage -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -march=pentium-m -msse -msse2 -mfpmath=sse -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/build/src/obj-firefox/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -Os -fno-omit-frame-pointer -funwind-tables -Werror -Wno-error=shadow -Wno-error=attributes -Wno-error=shadow  -MD -MP -MF .deps/Unified_cpp_dom_media10.o.pp   /builds/worker/workspace/build/src/obj-firefox/dom/media/Unified_cpp_dom_media10.cpp
[task 2018-09-29T00:44:41.366Z] 00:44:41     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:41.368Z] 00:44:41     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:41.368Z] 00:44:41     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:41.368Z] 00:44:41     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:41.368Z] 00:44:41     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  /builds/worker/workspace/build/src/sccache2/sccache /builds/worker/workspace/build/src/clang/bin/clang++ --target=i686-linux-gnu -o Unified_cpp_dom_media11.o -c  -I/builds/worker/workspace/build/src/obj-firefox/dist/stl_wrappers -I/builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DHAVE_UINT64_T -DWEBRTC_POSIX -DWEBRTC_BUILD_LIBEVENT -DWEBRTC_LINUX -DMOZILLA_INTERNAL_API -DTRACING -DOS_POSIX=1 -DOS_LINUX=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/builds/worker/workspace/build/src/dom/media -I/builds/worker/workspace/build/src/obj-firefox/dom/media -I/builds/worker/workspace/build/src/caps -I/builds/worker/workspace/build/src/docshell/base -I/builds/worker/workspace/build/src/dom/base -I/builds/worker/workspace/build/src/layout/generic -I/builds/worker/workspace/build/src/layout/xul -I/builds/worker/workspace/build/src/media/libyuv/libyuv/include -I/builds/worker/workspace/build/src/netwerk/base -I/builds/worker/workspace/build/src/media/webrtc/signaling/src/common -I/builds/worker/workspace/build/src/media/webrtc/trunk -I/builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders -I/builds/worker/workspace/build/src/ipc/chromium/src -I/builds/worker/workspace/build/src/ipc/glue -I/builds/worker/workspace/build/src/obj-firefox/dist/include -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nspr -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-firefox/mozilla-config.h -Qunused-arguments -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Qunused-arguments -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++1z-compat -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Werror=non-literal-null-conversion -Wstring-conversion -Wtautological-overlap-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-unknown-warning-option -Wno-return-type-c-linkage -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -march=pentium-m -msse -msse2 -mfpmath=sse -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/build/src/obj-firefox/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -Os -fno-omit-frame-pointer -funwind-tables -Werror -Wno-error=shadow -Wno-error=attributes -Wno-error=shadow  -MD -MP -MF .deps/Unified_cpp_dom_media11.o.pp   /builds/worker/workspace/build/src/obj-firefox/dom/media/Unified_cpp_dom_media11.cpp
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:43.619Z] 00:44:43     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/bindings'
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  /builds/worker/workspace/build/src/sccache2/sccache /builds/worker/workspace/build/src/clang/bin/clang++ --target=i686-linux-gnu -o UnifiedBindings20.o -c  -I/builds/worker/workspace/build/src/obj-firefox/dist/stl_wrappers -I/builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers -include /builds/worker/workspace/build/src/config/gcc_hidden.h -DDEBUG=1 -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DOS_POSIX=1 -DOS_LINUX=1 -DHAVE_SIDEBAR -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/builds/worker/workspace/build/src/dom/bindings -I/builds/worker/workspace/build/src/obj-firefox/dom/bindings -I/builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom -I/builds/worker/workspace/build/src/dom/base -I/builds/worker/workspace/build/src/dom/battery -I/builds/worker/workspace/build/src/dom/canvas -I/builds/worker/workspace/build/src/dom/geolocation -I/builds/worker/workspace/build/src/dom/html -I/builds/worker/workspace/build/src/dom/indexedDB -I/builds/worker/workspace/build/src/dom/media/webaudio -I/builds/worker/workspace/build/src/dom/media/webspeech/recognition -I/builds/worker/workspace/build/src/dom/svg -I/builds/worker/workspace/build/src/dom/xbl -I/builds/worker/workspace/build/src/dom/xml -I/builds/worker/workspace/build/src/dom/xslt/base -I/builds/worker/workspace/build/src/dom/xslt/xpath -I/builds/worker/workspace/build/src/dom/xul -I/builds/worker/workspace/build/src/js/xpconnect/src -I/builds/worker/workspace/build/src/js/xpconnect/wrappers -I/builds/worker/workspace/build/src/layout/generic -I/builds/worker/workspace/build/src/layout/style -I/builds/worker/workspace/build/src/layout/xul/tree -I/builds/worker/workspace/build/src/media/mtransport -I/builds/worker/workspace/build/src/media/webrtc -I/builds/worker/workspace/build/src/media/webrtc/signaling/src/common/time_profiling -I/builds/worker/workspace/build/src/media/webrtc/signaling/src/peerconnection -I/builds/worker/workspace/build/src/media/webrtc/trunk -I/builds/worker/workspace/build/src/third_party/msgpack/include -I/builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders -I/builds/worker/workspace/build/src/ipc/chromium/src -I/builds/worker/workspace/build/src/ipc/glue -I/builds/worker/workspace/build/src/obj-firefox/dist/include -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nspr -I/builds/worker/workspace/build/src/obj-firefox/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/build/src/obj-firefox/mozilla-config.h -Qunused-arguments -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Qunused-arguments -Wall -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++1z-compat -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Werror=non-literal-null-conversion -Wstring-conversion -Wtautological-overlap-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-unknown-warning-option -Wno-return-type-c-linkage -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -march=pentium-m -msse -msse2 -mfpmath=sse -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/build/src/obj-firefox/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -Os -fno-omit-frame-pointer -funwind-tables -Werror -Wno-error=shadow -Wno-maybe-uninitialized  -MD -MP -MF .deps/UnifiedBindings20.o.pp   /builds/worker/workspace/build/src/obj-firefox/dom/bindings/UnifiedBindings20.cpp
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  In file included from /builds/worker/workspace/build/src/obj-firefox/dom/bindings/UnifiedBindings20.cpp:182:
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  /builds/worker/workspace/build/src/obj-firefox/dom/bindings/StructuredCloneTesterBinding.cpp:276:34: error: no member named 'dom_structuredclonetester_enabled' in 'mozilla::dom::DOMPrefs'; did you mean 'dom_testing_structuredclonetester_enabled'?
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -    return mozilla::dom::DOMPrefs::dom_structuredclonetester_enabled(aCx, aObj);
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -           ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -                                   dom_testing_structuredclonetester_enabled
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom/DOMPrefsInternal.h:23:17: note: 'dom_testing_structuredclonetester_enabled' declared here
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  DOM_WEBIDL_PREF(dom_testing_structuredclonetester_enabled)
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -                  ^
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  1 error generated.
[task 2018-09-29T00:44:49.657Z] 00:44:49     INFO -  /builds/worker/workspace/build/src/config/rules.mk:1129: recipe for target 'UnifiedBindings20.o' failed
[task 2018-09-29T00:44:49.658Z] 00:44:49     INFO -  make[4]: *** [UnifiedBindings20.o] Error 1
[task 2018-09-29T00:44:49.658Z] 00:44:49     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/bindings'
[task 2018-09-29T00:44:49.659Z] 00:44:49     INFO -  make[4]: *** Waiting for unfinished jobs....
[task 2018-09-29T00:44:49.660Z] 00:44:49     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:49.661Z] 00:44:49     INFO -  make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
[task 2018-09-29T00:44:49.682Z] 00:44:49     INFO -  make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/dom/media'
Flags: needinfo?(perry)
Assignee

Comment 10

9 months ago
(In reply to Raul Gurzau (:RaulGurzau) from comment #9)
> Backed out changeset 8152c0b1017c (bug 1487463) for bustages at
> dom/bindings/StructuredCloneTesterBinding.cpp on a CLOSED TREE
> 

Oops, not sure how that got through...fixed now (on phabricator) and all green: https://treeherder.mozilla.org/#/jobs?repo=try&revision=b8ca5cd736d4155937a896dd12bf6c9a5c98525f
Flags: needinfo?(perry)
Assignee

Updated

9 months ago
Keywords: checkin-needed

Comment 11

9 months ago
Pushed by dluca@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f2737c4b2abe
implement StructuredCloneTester to be used in testing r=baku
Keywords: checkin-needed

Comment 12

9 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/f2737c4b2abe
Status: ASSIGNED → RESOLVED
Closed: 9 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Depends on: 1499177
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.