Sophie

Sophie

distrib > Mageia > 9 > aarch64 > media > tainted-updates-src > by-pkgid > 53e82d52de6621aa4524e6ebb5d8f226 > files > 40

chromium-browser-stable-124.0.6367.60-1.mga9.tainted.src.rpm

Index: chromium-121.0.6167.85/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
===================================================================
--- chromium-121.0.6167.85.orig/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
+++ chromium-121.0.6167.85/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.cc
@@ -546,7 +546,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-121.0.6167.85/ui/gfx/x/generated_protos/randr.cc
===================================================================
--- chromium-121.0.6167.85.orig/ui/gfx/x/generated_protos/randr.cc
+++ chromium-121.0.6167.85/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-121.0.6167.85/ui/gfx/x/generated_protos/xkb.cc
===================================================================
--- chromium-121.0.6167.85.orig/ui/gfx/x/generated_protos/xkb.cc
+++ chromium-121.0.6167.85/ui/gfx/x/generated_protos/xkb.cc
@@ -5285,7 +5285,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;
@@ -5717,7 +5717,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;
@@ -5841,7 +5841,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 =
@@ -5935,7 +5935,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;
@@ -6194,7 +6194,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-121.0.6167.85/mojo/public/cpp/bindings/lib/multiplex_router.cc
===================================================================
--- chromium-121.0.6167.85.orig/mojo/public/cpp/bindings/lib/multiplex_router.cc
+++ chromium-121.0.6167.85/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-121.0.6167.85/ui/gfx/x/generated_protos/xinput.cc
===================================================================
--- chromium-121.0.6167.85.orig/ui/gfx/x/generated_protos/xinput.cc
+++ chromium-121.0.6167.85/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;
@@ -4770,7 +4770,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();
@@ -4788,7 +4788,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();
@@ -4806,7 +4806,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;
@@ -5077,7 +5077,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();
@@ -5111,7 +5111,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;
@@ -5146,7 +5146,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;
 
@@ -5160,7 +5160,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
@@ -5170,7 +5170,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;
@@ -6662,7 +6662,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();
@@ -6678,7 +6678,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();
@@ -6703,7 +6703,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;
@@ -6766,7 +6766,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;
@@ -6801,7 +6801,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;
 
@@ -6814,7 +6814,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-121.0.6167.85/components/viz/service/display/surface_aggregator.cc
===================================================================
--- chromium-121.0.6167.85.orig/components/viz/service/display/surface_aggregator.cc
+++ chromium-121.0.6167.85/components/viz/service/display/surface_aggregator.cc
@@ -2228,7 +2228,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-121.0.6167.85/chrome/browser/ui/web_applications/diagnostics/web_app_icon_diagnostic.cc
--- patch123/chrome/browser/ui/web_applications/diagnostics/web_app_icon_diagnostic.cc	2024-03-13 20:35:40.505663000 +0100
+++ patch123/chrome/browser/ui/web_applications/diagnostics/web_app_icon_diagnostic.cc.emplace	2024-03-22 12:16:19.793709556 +0100
@@ -38,7 +38,7 @@ void WebAppIconDiagnostic::Run(
   if (!downloaded_icon_sizes.empty())
     icon_size_ = *downloaded_icon_sizes.begin();

-  result_.emplace();
+  result_.emplace(WebAppIconDiagnostic::Result());
   result_->has_empty_downloaded_icon_sizes = downloaded_icon_sizes.empty();
   result_->has_generated_icon_flag = web_app->is_generated_icon();

===================================================================
--- chromium-121.0.6167.85.orig/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.cc
+++ chromium-121.0.6167.85/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();
   }
--- patch123/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc	2024-03-13 20:35:57.198869500 +0100
+++ patch123/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.cc.emplace	2024-03-22 12:21:53.120200847 +0100
@@ -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();