summaryrefslogtreecommitdiff
path: root/chromium-120-emplace.patch
diff options
context:
space:
mode:
Diffstat (limited to 'chromium-120-emplace.patch')
-rw-r--r--chromium-120-emplace.patch463
1 files changed, 463 insertions, 0 deletions
diff --git a/chromium-120-emplace.patch b/chromium-120-emplace.patch
new file mode 100644
index 0000000..f12d325
--- /dev/null
+++ b/chromium-120-emplace.patch
@@ -0,0 +1,463 @@
+Index: chromium-123.0.6312.46/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
++++ chromium-123.0.6312.46/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
+@@ -549,7 +549,7 @@ absl::optional<LossBasedBweV2::Config> L
+ if (!enabled.Get()) {
+ return config;
+ }
+- config.emplace();
++ config.emplace(Config());
+ config->bandwidth_rampup_upper_bound_factor =
+ bandwidth_rampup_upper_bound_factor.Get();
+ config->bandwidth_rampup_upper_bound_factor_in_hold =
+Index: chromium-123.0.6312.46/ui/gfx/x/generated_protos/randr.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/ui/gfx/x/generated_protos/randr.cc
++++ chromium-123.0.6312.46/ui/gfx/x/generated_protos/randr.cc
+@@ -305,7 +305,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ // data
+ auto data_expr = subCode;
+ if (CaseEq(data_expr, RandR::Notify::CrtcChange)) {
+- data.cc.emplace();
++ data.cc.emplace(RandR::NotifyEvent::Cc());
+ auto& timestamp = (*data.cc).timestamp;
+ auto& window = (*data.cc).window;
+ auto& crtc = (*data.cc).crtc;
+@@ -349,7 +349,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ Read(&height, &buf);
+ }
+ if (CaseEq(data_expr, RandR::Notify::OutputChange)) {
+- data.oc.emplace();
++ data.oc.emplace(RandR::NotifyEvent::Oc());
+ auto& timestamp = (*data.oc).timestamp;
+ auto& config_timestamp = (*data.oc).config_timestamp;
+ auto& window = (*data.oc).window;
+@@ -394,7 +394,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ subpixel_order = static_cast<Render::SubPixel>(tmp6);
+ }
+ if (CaseEq(data_expr, RandR::Notify::OutputProperty)) {
+- data.op.emplace();
++ data.op.emplace(RandR::NotifyEvent::Op());
+ auto& window = (*data.op).window;
+ auto& output = (*data.op).output;
+ auto& atom = (*data.op).atom;
+@@ -422,7 +422,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ Pad(&buf, 11);
+ }
+ if (CaseEq(data_expr, RandR::Notify::ProviderChange)) {
+- data.pc.emplace();
++ data.pc.emplace(RandR::NotifyEvent::Pc());
+ auto& timestamp = (*data.pc).timestamp;
+ auto& window = (*data.pc).window;
+ auto& provider = (*data.pc).provider;
+@@ -440,7 +440,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ Pad(&buf, 16);
+ }
+ if (CaseEq(data_expr, RandR::Notify::ProviderProperty)) {
+- data.pp.emplace();
++ data.pp.emplace(RandR::NotifyEvent::Pp());
+ auto& window = (*data.pp).window;
+ auto& provider = (*data.pp).provider;
+ auto& atom = (*data.pp).atom;
+@@ -466,7 +466,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ Pad(&buf, 11);
+ }
+ if (CaseEq(data_expr, RandR::Notify::ResourceChange)) {
+- data.rc.emplace();
++ data.rc.emplace(RandR::NotifyEvent::Rc());
+ auto& timestamp = (*data.rc).timestamp;
+ auto& window = (*data.rc).window;
+
+@@ -480,7 +480,7 @@ void ReadEvent<RandR::NotifyEvent>(RandR
+ Pad(&buf, 20);
+ }
+ if (CaseEq(data_expr, RandR::Notify::Lease)) {
+- data.lc.emplace();
++ data.lc.emplace(RandR::NotifyEvent::Lc());
+ auto& timestamp = (*data.lc).timestamp;
+ auto& window = (*data.lc).window;
+ auto& lease = (*data.lc).lease;
+Index: chromium-123.0.6312.46/ui/gfx/x/generated_protos/xkb.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/ui/gfx/x/generated_protos/xkb.cc
++++ chromium-123.0.6312.46/ui/gfx/x/generated_protos/xkb.cc
+@@ -5276,7 +5276,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
+ if (CaseAnd(replies_expr, Xkb::GBNDetail::Types) ||
+ CaseAnd(replies_expr, Xkb::GBNDetail::ClientSymbols) ||
+ CaseAnd(replies_expr, Xkb::GBNDetail::ServerSymbols)) {
+- replies.types.emplace();
++ replies.types.emplace(Xkb::GetKbdByNameReply::Types());
+ auto& getmap_type = (*replies.types).getmap_type;
+ auto& typeDeviceID = (*replies.types).typeDeviceID;
+ auto& getmap_sequence = (*replies.types).getmap_sequence;
+@@ -5708,7 +5708,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
+ }
+ }
+ if (CaseAnd(replies_expr, Xkb::GBNDetail::CompatMap)) {
+- replies.compat_map.emplace();
++ replies.compat_map.emplace(Xkb::GetKbdByNameReply::CompatMap());
+ auto& compatmap_type = (*replies.compat_map).compatmap_type;
+ auto& compatDeviceID = (*replies.compat_map).compatDeviceID;
+ auto& compatmap_sequence = (*replies.compat_map).compatmap_sequence;
+@@ -5832,7 +5832,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
+ }
+ }
+ if (CaseAnd(replies_expr, Xkb::GBNDetail::IndicatorMaps)) {
+- replies.indicator_maps.emplace();
++ replies.indicator_maps.emplace(Xkb::GetKbdByNameReply::IndicatorMaps());
+ auto& indicatormap_type = (*replies.indicator_maps).indicatormap_type;
+ auto& indicatorDeviceID = (*replies.indicator_maps).indicatorDeviceID;
+ auto& indicatormap_sequence =
+@@ -5926,7 +5926,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
+ }
+ if (CaseAnd(replies_expr, Xkb::GBNDetail::KeyNames) ||
+ CaseAnd(replies_expr, Xkb::GBNDetail::OtherNames)) {
+- replies.key_names.emplace();
++ replies.key_names.emplace(Xkb::GetKbdByNameReply::KeyNames());
+ auto& keyname_type = (*replies.key_names).keyname_type;
+ auto& keyDeviceID = (*replies.key_names).keyDeviceID;
+ auto& keyname_sequence = (*replies.key_names).keyname_sequence;
+@@ -6185,7 +6185,7 @@ std::unique_ptr<Xkb::GetKbdByNameReply>
+ }
+ }
+ if (CaseAnd(replies_expr, Xkb::GBNDetail::Geometry)) {
+- replies.geometry.emplace();
++ replies.geometry.emplace(Xkb::GetKbdByNameReply::Geometry());
+ auto& geometry_type = (*replies.geometry).geometry_type;
+ auto& geometryDeviceID = (*replies.geometry).geometryDeviceID;
+ auto& geometry_sequence = (*replies.geometry).geometry_sequence;
+Index: chromium-123.0.6312.46/mojo/public/cpp/bindings/lib/multiplex_router.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/mojo/public/cpp/bindings/lib/multiplex_router.cc
++++ chromium-123.0.6312.46/mojo/public/cpp/bindings/lib/multiplex_router.cc
+@@ -870,7 +870,7 @@ bool MultiplexRouter::ExclusiveSyncWaitF
+ DCHECK(!exclusive_sync_wait_);
+
+ scoped_refptr<MultiplexRouter> keep_alive(this);
+- exclusive_sync_wait_.emplace();
++ exclusive_sync_wait_.emplace(MultiplexRouter::ExclusiveSyncWaitInfo());
+ exclusive_sync_wait_->interface_id = interface_id;
+ exclusive_sync_wait_->request_id = request_id;
+ while (!exclusive_sync_wait_->finished) {
+Index: chromium-123.0.6312.46/ui/gfx/x/generated_protos/xinput.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/ui/gfx/x/generated_protos/xinput.cc
++++ chromium-123.0.6312.46/ui/gfx/x/generated_protos/xinput.cc
+@@ -567,7 +567,7 @@ void ReadEvent<Input::DeviceChangedEvent
+ // data
+ auto data_expr = type;
+ if (CaseEq(data_expr, Input::DeviceClassType::Key)) {
+- data.key.emplace();
++ data.key.emplace(Input::DeviceClass::Key());
+ uint16_t num_keys{};
+ auto& keys = (*data.key).keys;
+ size_t keys_len = keys.size();
+@@ -583,7 +583,7 @@ void ReadEvent<Input::DeviceChangedEvent
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Button)) {
+- data.button.emplace();
++ data.button.emplace(Input::DeviceClass::Button());
+ uint16_t num_buttons{};
+ auto& state = (*data.button).state;
+ size_t state_len = state.size();
+@@ -608,7 +608,7 @@ void ReadEvent<Input::DeviceChangedEvent
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Valuator)) {
+- data.valuator.emplace();
++ data.valuator.emplace(Input::DeviceClass::Valuator());
+ auto& number = (*data.valuator).number;
+ auto& label = (*data.valuator).label;
+ auto& min = (*data.valuator).min;
+@@ -671,7 +671,7 @@ void ReadEvent<Input::DeviceChangedEvent
+ Pad(&buf, 3);
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Scroll)) {
+- data.scroll.emplace();
++ data.scroll.emplace(Input::DeviceClass::Scroll());
+ auto& number = (*data.scroll).number;
+ auto& scroll_type = (*data.scroll).scroll_type;
+ auto& flags = (*data.scroll).flags;
+@@ -706,7 +706,7 @@ void ReadEvent<Input::DeviceChangedEvent
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Touch)) {
+- data.touch.emplace();
++ data.touch.emplace(Input::DeviceClass::Touch());
+ auto& mode = (*data.touch).mode;
+ auto& num_touches = (*data.touch).num_touches;
+
+@@ -719,7 +719,7 @@ void ReadEvent<Input::DeviceChangedEvent
+ Read(&num_touches, &buf);
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Gesture)) {
+- data.gesture.emplace();
++ data.gesture.emplace(Input::DeviceClass::Gesture());
+ auto& num_touches = (*data.gesture).num_touches;
+
+ // num_touches
+@@ -2206,7 +2206,7 @@ std::unique_ptr<Input::ListInputDevicesR
+ // info
+ auto info_expr = class_id;
+ if (CaseEq(info_expr, Input::InputClass::Key)) {
+- info.key.emplace();
++ info.key.emplace(Input::InputInfo::Key());
+ auto& min_keycode = (*info.key).min_keycode;
+ auto& max_keycode = (*info.key).max_keycode;
+ auto& num_keys = (*info.key).num_keys;
+@@ -2224,14 +2224,14 @@ std::unique_ptr<Input::ListInputDevicesR
+ Pad(&buf, 2);
+ }
+ if (CaseEq(info_expr, Input::InputClass::Button)) {
+- info.button.emplace();
++ info.button.emplace(Input::InputInfo::Button());
+ auto& num_buttons = (*info.button).num_buttons;
+
+ // num_buttons
+ Read(&num_buttons, &buf);
+ }
+ if (CaseEq(info_expr, Input::InputClass::Valuator)) {
+- info.valuator.emplace();
++ info.valuator.emplace(Input::InputInfo::Valuator());
+ uint8_t axes_len{};
+ auto& mode = (*info.valuator).mode;
+ auto& motion_size = (*info.valuator).motion_size;
+@@ -3844,7 +3844,7 @@ std::unique_ptr<Input::GetFeedbackContro
+ // data
+ auto data_expr = class_id;
+ if (CaseEq(data_expr, Input::FeedbackClass::Keyboard)) {
+- data.keyboard.emplace();
++ data.keyboard.emplace(Input::FeedbackState::Keyboard());
+ auto& pitch = (*data.keyboard).pitch;
+ auto& duration = (*data.keyboard).duration;
+ auto& led_mask = (*data.keyboard).led_mask;
+@@ -3886,7 +3886,7 @@ std::unique_ptr<Input::GetFeedbackContro
+ }
+ }
+ if (CaseEq(data_expr, Input::FeedbackClass::Pointer)) {
+- data.pointer.emplace();
++ data.pointer.emplace(Input::FeedbackState::Pointer());
+ auto& accel_num = (*data.pointer).accel_num;
+ auto& accel_denom = (*data.pointer).accel_denom;
+ auto& threshold = (*data.pointer).threshold;
+@@ -3904,7 +3904,7 @@ std::unique_ptr<Input::GetFeedbackContro
+ Read(&threshold, &buf);
+ }
+ if (CaseEq(data_expr, Input::FeedbackClass::String)) {
+- data.string.emplace();
++ data.string.emplace(Input::FeedbackState::String());
+ auto& max_symbols = (*data.string).max_symbols;
+ uint16_t num_keysyms{};
+ auto& keysyms = (*data.string).keysyms;
+@@ -3924,7 +3924,7 @@ std::unique_ptr<Input::GetFeedbackContro
+ }
+ }
+ if (CaseEq(data_expr, Input::FeedbackClass::Integer)) {
+- data.integer.emplace();
++ data.integer.emplace(Input::FeedbackState::Integer());
+ auto& resolution = (*data.integer).resolution;
+ auto& min_value = (*data.integer).min_value;
+ auto& max_value = (*data.integer).max_value;
+@@ -3939,7 +3939,7 @@ std::unique_ptr<Input::GetFeedbackContro
+ Read(&max_value, &buf);
+ }
+ if (CaseEq(data_expr, Input::FeedbackClass::Led)) {
+- data.led.emplace();
++ data.led.emplace(Input::FeedbackState::Led());
+ auto& led_mask = (*data.led).led_mask;
+ auto& led_values = (*data.led).led_values;
+
+@@ -3950,7 +3950,7 @@ std::unique_ptr<Input::GetFeedbackContro
+ Read(&led_values, &buf);
+ }
+ if (CaseEq(data_expr, Input::FeedbackClass::Bell)) {
+- data.bell.emplace();
++ data.bell.emplace(Input::FeedbackState::Bell());
+ auto& percent = (*data.bell).percent;
+ auto& pitch = (*data.bell).pitch;
+ auto& duration = (*data.bell).duration;
+@@ -4768,7 +4768,7 @@ std::unique_ptr<Input::QueryDeviceStateR
+ // data
+ auto data_expr = class_id;
+ if (CaseEq(data_expr, Input::InputClass::Key)) {
+- data.key.emplace();
++ data.key.emplace(Input::InputState::Key());
+ auto& num_keys = (*data.key).num_keys;
+ auto& keys = (*data.key).keys;
+ size_t keys_len = keys.size();
+@@ -4786,7 +4786,7 @@ std::unique_ptr<Input::QueryDeviceStateR
+ }
+ }
+ if (CaseEq(data_expr, Input::InputClass::Button)) {
+- data.button.emplace();
++ data.button.emplace(Input::InputState::Button());
+ auto& num_buttons = (*data.button).num_buttons;
+ auto& buttons = (*data.button).buttons;
+ size_t buttons_len = buttons.size();
+@@ -4804,7 +4804,7 @@ std::unique_ptr<Input::QueryDeviceStateR
+ }
+ }
+ if (CaseEq(data_expr, Input::InputClass::Valuator)) {
+- data.valuator.emplace();
++ data.valuator.emplace(Input::InputState::Valuator());
+ uint8_t num_valuators{};
+ auto& mode = (*data.valuator).mode;
+ auto& valuators = (*data.valuator).valuators;
+@@ -5075,7 +5075,7 @@ std::unique_ptr<Input::GetDeviceControlR
+ // data
+ auto data_expr = control_id;
+ if (CaseEq(data_expr, Input::DeviceControl::resolution)) {
+- data.resolution.emplace();
++ data.resolution.emplace(Input::DeviceState::Resolution());
+ uint32_t num_valuators{};
+ auto& resolution_values = (*data.resolution).resolution_values;
+ size_t resolution_values_len = resolution_values.size();
+@@ -5109,7 +5109,7 @@ std::unique_ptr<Input::GetDeviceControlR
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceControl::abs_calib)) {
+- data.abs_calib.emplace();
++ data.abs_calib.emplace(Input::DeviceState::AbsCalib());
+ auto& min_x = (*data.abs_calib).min_x;
+ auto& max_x = (*data.abs_calib).max_x;
+ auto& min_y = (*data.abs_calib).min_y;
+@@ -5144,7 +5144,7 @@ std::unique_ptr<Input::GetDeviceControlR
+ Read(&button_threshold, &buf);
+ }
+ if (CaseEq(data_expr, Input::DeviceControl::core)) {
+- data.core.emplace();
++ data.core.emplace(Input::DeviceState::Core());
+ auto& status = (*data.core).status;
+ auto& iscore = (*data.core).iscore;
+
+@@ -5158,7 +5158,7 @@ std::unique_ptr<Input::GetDeviceControlR
+ Pad(&buf, 2);
+ }
+ if (CaseEq(data_expr, Input::DeviceControl::enable)) {
+- data.enable.emplace();
++ data.enable.emplace(Input::DeviceState::Enable());
+ auto& enable = (*data.enable).enable;
+
+ // enable
+@@ -5168,7 +5168,7 @@ std::unique_ptr<Input::GetDeviceControlR
+ Pad(&buf, 3);
+ }
+ if (CaseEq(data_expr, Input::DeviceControl::abs_area)) {
+- data.abs_area.emplace();
++ data.abs_area.emplace(Input::DeviceState::AbsArea());
+ auto& offset_x = (*data.abs_area).offset_x;
+ auto& offset_y = (*data.abs_area).offset_y;
+ auto& width = (*data.abs_area).width;
+@@ -6659,7 +6659,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
+ // data
+ auto data_expr = type;
+ if (CaseEq(data_expr, Input::DeviceClassType::Key)) {
+- data.key.emplace();
++ data.key.emplace(Input::DeviceClass::Key());
+ uint16_t num_keys{};
+ auto& keys = (*data.key).keys;
+ size_t keys_len = keys.size();
+@@ -6675,7 +6675,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Button)) {
+- data.button.emplace();
++ data.button.emplace(Input::DeviceClass::Button());
+ uint16_t num_buttons{};
+ auto& state = (*data.button).state;
+ size_t state_len = state.size();
+@@ -6700,7 +6700,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Valuator)) {
+- data.valuator.emplace();
++ data.valuator.emplace(Input::DeviceClass::Valuator());
+ auto& number = (*data.valuator).number;
+ auto& label = (*data.valuator).label;
+ auto& min = (*data.valuator).min;
+@@ -6763,7 +6763,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
+ Pad(&buf, 3);
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Scroll)) {
+- data.scroll.emplace();
++ data.scroll.emplace(Input::DeviceClass::Scroll());
+ auto& number = (*data.scroll).number;
+ auto& scroll_type = (*data.scroll).scroll_type;
+ auto& flags = (*data.scroll).flags;
+@@ -6798,7 +6798,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
+ }
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Touch)) {
+- data.touch.emplace();
++ data.touch.emplace(Input::DeviceClass::Touch());
+ auto& mode = (*data.touch).mode;
+ auto& num_touches = (*data.touch).num_touches;
+
+@@ -6811,7 +6811,7 @@ std::unique_ptr<Input::XIQueryDeviceRepl
+ Read(&num_touches, &buf);
+ }
+ if (CaseEq(data_expr, Input::DeviceClassType::Gesture)) {
+- data.gesture.emplace();
++ data.gesture.emplace(Input::DeviceClass::Gesture());
+ auto& num_touches = (*data.gesture).num_touches;
+
+ // num_touches
+Index: chromium-123.0.6312.46/components/viz/service/display/surface_aggregator.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/components/viz/service/display/surface_aggregator.cc
++++ chromium-123.0.6312.46/components/viz/service/display/surface_aggregator.cc
+@@ -2236,7 +2236,7 @@ AggregatedFrame SurfaceAggregator::Aggre
+ root_surface_id_ = surface_id;
+
+ // Start recording new stats for this aggregation.
+- stats_.emplace();
++ stats_.emplace(SurfaceAggregator::AggregateStatistics());
+
+ base::ElapsedTimer prewalk_timer;
+ ResolvedFrameData* resolved_frame = GetResolvedFrame(surface_id);
+Index: chromium-123.0.6312.46/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc
++++ chromium-123.0.6312.46/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc
+@@ -101,7 +101,7 @@ void MediaControlTimelineElement::Update
+ void MediaControlTimelineElement::SetPosition(double current_time,
+ bool suppress_aria) {
+ if (is_live_ && !live_anchor_time_ && current_time != 0) {
+- live_anchor_time_.emplace();
++ live_anchor_time_.emplace(MediaControlTimelineElement::LiveAnchorTime());
+ live_anchor_time_->clock_time_ = base::TimeTicks::Now();
+ live_anchor_time_->media_time_ = MediaElement().currentTime();
+ }
+Index: chromium-123.0.6312.46/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc
++++ chromium-123.0.6312.46/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc
+@@ -70,7 +70,7 @@ void GeometryMapperTransformCache::Updat
+ to_2d_translation_root_ += translation;
+
+ if (parent.plane_root_transform_) {
+- plane_root_transform_.emplace();
++ plane_root_transform_.emplace(GeometryMapperTransformCache::PlaneRootTransform());
+ plane_root_transform_->plane_root = parent.plane_root();
+ plane_root_transform_->to_plane_root = parent.to_plane_root();
+ plane_root_transform_->to_plane_root.Translate(translation.x(),
+@@ -98,7 +98,7 @@ void GeometryMapperTransformCache::Updat
+ // as the 2d translation root.
+ plane_root_transform_ = std::nullopt;
+ } else {
+- plane_root_transform_.emplace();
++ plane_root_transform_.emplace(GeometryMapperTransformCache::PlaneRootTransform());
+ plane_root_transform_->plane_root = parent.plane_root();
+ plane_root_transform_->to_plane_root.MakeIdentity();
+ parent.ApplyToPlaneRoot(plane_root_transform_->to_plane_root);
+@@ -140,7 +140,7 @@ void GeometryMapperTransformCache::Updat
+ parent_node->UpdateScreenTransform();
+ const auto& parent = parent_node->GetTransformCache();
+
+- screen_transform_.emplace();
++ screen_transform_.emplace(GeometryMapperTransformCache::ScreenTransform());
+ parent.ApplyToScreen(screen_transform_->to_screen);
+ if (node.FlattensInheritedTransform())
+ screen_transform_->to_screen.Flatten();