Robert,

because I still have build artifacts of chromium I had spend some time to
track and fix the issue with crash in developer tools when enable
perofmrance recording.

It was trivial: nobody implemented SystemPowerMonitor on BSD, and it just
crashed on NULL provider.

Tested in ungoogled-chromium, but the same patch propagated for chromium and
iridium and tested as make patch.

Ok?

Index: www/chromium/Makefile
===================================================================
RCS file: /home/cvs/ports/www/chromium/Makefile,v
diff -u -p -r1.930 Makefile
--- www/chromium/Makefile       4 Sep 2026 07:15:08 -0000       1.930
+++ www/chromium/Makefile       8 Sep 2026 21:31:28 -0000
@@ -13,6 +13,7 @@ DPB_PROPERTIES+=      lonesome
 COMMENT=               Chromium browser
 
 V=                     152.0.7977.82
+REVISION=              0
 
 DISTNAME=              chromium-${V}
 
Index: 
www/chromium/patches/patch-components_power_metrics_system_power_monitor_cc
===================================================================
RCS file: 
www/chromium/patches/patch-components_power_metrics_system_power_monitor_cc
diff -N 
www/chromium/patches/patch-components_power_metrics_system_power_monitor_cc
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ www/chromium/patches/patch-components_power_metrics_system_power_monitor_cc 
10 Sep 2026 20:35:29 -0000
@@ -0,0 +1,14 @@
+Index: components/power_metrics/system_power_monitor.cc
+--- components/power_metrics/system_power_monitor.cc.orig
++++ components/power_metrics/system_power_monitor.cc
+@@ -217,6 +217,10 @@ SystemPowerMonitor::SystemPowerMonitor()
+ SystemPowerMonitor::SystemPowerMonitor(
+     std::unique_ptr<EnergyMetricsProvider> provider,
+     std::unique_ptr<SystemPowerMonitorDelegate> delegate) {
++  if (!provider) {
++    return;
++  }
++
+   helper_ = base::SequenceBound<SystemPowerMonitorHelper>(
+       base::ThreadPool::CreateSequencedTaskRunner(
+           {base::MayBlock(), base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN,
Index: www/iridium/Makefile
===================================================================
RCS file: /home/cvs/ports/www/iridium/Makefile,v
diff -u -p -r1.299 Makefile
--- www/iridium/Makefile        21 Aug 2026 15:57:43 -0000      1.299
+++ www/iridium/Makefile        10 Sep 2026 20:35:53 -0000
@@ -12,6 +12,7 @@ DPB_PROPERTIES+=      lonesome
 COMMENT=               Iridium browser
 
 V=                     2026.08.151.3
+REVISION=              0
 
 DISTNAME=              iridium-browser-${V}
 PKGNAME=               iridium-${V}
Index: 
www/iridium/patches/patch-components_power_metrics_system_power_monitor_cc
===================================================================
RCS file: 
www/iridium/patches/patch-components_power_metrics_system_power_monitor_cc
diff -N 
www/iridium/patches/patch-components_power_metrics_system_power_monitor_cc
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ www/iridium/patches/patch-components_power_metrics_system_power_monitor_cc  
10 Sep 2026 20:35:39 -0000
@@ -0,0 +1,14 @@
+Index: components/power_metrics/system_power_monitor.cc
+--- components/power_metrics/system_power_monitor.cc.orig
++++ components/power_metrics/system_power_monitor.cc
+@@ -217,6 +217,10 @@ SystemPowerMonitor::SystemPowerMonitor()
+ SystemPowerMonitor::SystemPowerMonitor(
+     std::unique_ptr<EnergyMetricsProvider> provider,
+     std::unique_ptr<SystemPowerMonitorDelegate> delegate) {
++  if (!provider) {
++    return;
++  }
++
+   helper_ = base::SequenceBound<SystemPowerMonitorHelper>(
+       base::ThreadPool::CreateSequencedTaskRunner(
+           {base::MayBlock(), base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN,
Index: www/ungoogled-chromium/Makefile
===================================================================
RCS file: /home/cvs/ports/www/ungoogled-chromium/Makefile,v
diff -u -p -r1.254 Makefile
--- www/ungoogled-chromium/Makefile     4 Sep 2026 11:25:35 -0000       1.254
+++ www/ungoogled-chromium/Makefile     8 Sep 2026 21:30:59 -0000
@@ -15,6 +15,7 @@ COMMENT=              Chromium browser sans integrat
 
 V=                     152.0.7977.82
 UGV=                   ${V}-1
+REVISION=              0
 
 DISTNAME=              ungoogled-chromium-${V}
 
Index: 
www/ungoogled-chromium/patches/patch-components_power_metrics_system_power_monitor_cc
===================================================================
RCS file: 
www/ungoogled-chromium/patches/patch-components_power_metrics_system_power_monitor_cc
diff -N 
www/ungoogled-chromium/patches/patch-components_power_metrics_system_power_monitor_cc
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ 
www/ungoogled-chromium/patches/patch-components_power_metrics_system_power_monitor_cc
       9 Sep 2026 10:02:25 -0000
@@ -0,0 +1,14 @@
+Index: components/power_metrics/system_power_monitor.cc
+--- components/power_metrics/system_power_monitor.cc.orig
++++ components/power_metrics/system_power_monitor.cc
+@@ -217,6 +217,10 @@ SystemPowerMonitor::SystemPowerMonitor()
+ SystemPowerMonitor::SystemPowerMonitor(
+     std::unique_ptr<EnergyMetricsProvider> provider,
+     std::unique_ptr<SystemPowerMonitorDelegate> delegate) {
++  if (!provider) {
++    return;
++  }
++
+   helper_ = base::SequenceBound<SystemPowerMonitorHelper>(
+       base::ThreadPool::CreateSequencedTaskRunner(
+           {base::MayBlock(), base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN,


-- 
wbr, Kirill

Reply via email to