author | Alexis Beingessner <a.beingessner@gmail.com> |
Mon, 08 May 2017 17:24:39 -0400 | |
changeset 359296 | c509185bf7e5f29f4685b4f3d8d4467581b49cfa |
parent 359295 | f9fc89f8b6ff99102523607476d032626edb2ccd |
child 359297 | 9d9046d172d6204b2e7b0c3453ba6c045dd4c9fd |
push id | 31852 |
push user | kwierso@gmail.com |
push date | Fri, 19 May 2017 21:47:27 +0000 |
treeherder | mozilla-central@979f11deabd0 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | jrmuizel |
bugs | 1363201 |
milestone | 55.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/gfx/webrender_bindings/WebRenderTypes.h +++ b/gfx/webrender_bindings/WebRenderTypes.h @@ -419,40 +419,43 @@ static inline WrExternalImage NativeText aHandle, u0, v0, u1, v1, nullptr, 0 }; } struct VecU8 { WrVecU8 inner; VecU8() { - inner.data = nullptr; - inner.capacity = 0; + SetEmpty(); } VecU8(VecU8&) = delete; VecU8(VecU8&& src) { inner = src.inner; - src.inner.data = nullptr; - src.inner.capacity = 0; + src.SetEmpty(); } VecU8& operator=(VecU8&& src) { inner = src.inner; - src.inner.data = nullptr; - src.inner.capacity = 0; + src.SetEmpty(); return *this; } WrVecU8 Extract() { WrVecU8 ret = inner; - inner.data = nullptr; + SetEmpty(); + return ret; + } + + void + SetEmpty() { + inner.data = (uint8_t*)1; inner.capacity = 0; - return ret; + inner.length = 0; } ~VecU8() { if (inner.data) { wr_vec_u8_free(inner); } } };