Index | Thread | Search

From:
Kirill A. Korinsky <kirill@korins.ky>
Subject:
fix crash in dev tools on record performance in chromiums
To:
Robert Nagy <robert@openbsd.org>
Cc:
OpenBSD ports <ports@openbsd.org>
Date:
Thu, 10 Sep 2026 23:53:14 +0200

Download raw body.

Thread
  • Kirill A. Korinsky:

    fix crash in dev tools on record performance in chromiums

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