diff options
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | PKGBUILD | 45 | ||||
-rw-r--r-- | chromium-widevine.patch | 13 | ||||
-rw-r--r-- | rebuild-Linux-frame-button-cache-when-activation.patch | 62 | ||||
-rw-r--r-- | rename-Relayout-in-DesktopWindowTreeHostPlatform.patch | 64 | ||||
-rw-r--r-- | v8-remove-soon-to-be-removed-getAllFieldPositions.patch (renamed from icu67.patch) | 81 |
6 files changed, 62 insertions, 224 deletions
@@ -1,6 +1,6 @@ pkgbase = chromium-ozone pkgdesc = Chromium built with patches for wayland support via Ozone - pkgver = 81.0.4044.138 + pkgver = 83.0.4103.61 pkgrel = 1 url = https://www.chromium.org/Home install = chromium.install @@ -19,6 +19,7 @@ pkgbase = chromium-ozone makedepends = lld makedepends = gn makedepends = java-runtime-headless + makedepends = python2-setuptools depends = gtk3 depends = nss depends = alsa-lib @@ -39,8 +40,8 @@ pkgbase = chromium-ozone depends = fontconfig depends = harfbuzz depends = libvpx + depends = libjpeg depends = snappy - depends = ffmpeg depends = flac depends = libwebp depends = minizip @@ -54,21 +55,13 @@ pkgbase = chromium-ozone optdepends = kwallet: for storing passwords in KWallet on KDE desktops provides = chromium conflicts = chromium - options = debug - options = !strip - source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-81.0.4044.138.tar.xz + source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-83.0.4103.61.tar.xz source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz - source = rename-Relayout-in-DesktopWindowTreeHostPlatform.patch - source = rebuild-Linux-frame-button-cache-when-activation.patch - source = icu67.patch - source = chromium-widevine.patch + source = v8-remove-soon-to-be-removed-getAllFieldPositions.patch source = chromium-skia-harmony.patch - sha256sums = f478f28b8111cb70231df4c36e754d812ad7a94b7c844e9d0515345a71fd77a6 + sha256sums = 4961f20c4ee6a94490e823f1b1c4128147068f1ce9cfc509e81815f2101405bc sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1 - sha256sums = ae3bf107834bd8eda9a3ec7899fe35fde62e6111062e5def7d24bf49b53db3db - sha256sums = 46f7fc9768730c460b27681ccf3dc2685c7e1fd22d70d3a82d9e57e3389bb014 - sha256sums = 5315977307e69d20b3e856d3f8724835b08e02085a4444a5c5cefea83fd7d006 - sha256sums = 709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070 + sha256sums = e042024423027ad3ef729a7e4709bdf9714aea49d64cfbbf46a645a05703abc2 sha256sums = 771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1 pkgname = chromium-ozone @@ -5,13 +5,12 @@ # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=chromium-ozone -pkgver=81.0.4044.138 +pkgver=83.0.4103.61 pkgrel=1 _launcher_ver=6 pkgdesc="Chromium built with patches for wayland support via Ozone" arch=('x86_64') url="https://www.chromium.org/Home" -options=(debug !strip) license=('BSD') depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt' 'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib' @@ -19,7 +18,8 @@ depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt' provides=('chromium') conflicts=('chromium') makedepends=('python' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git' - 'libpipewire02' 'clang' 'lld' 'gn' 'java-runtime-headless') + 'libpipewire02' 'clang' 'lld' 'gn' 'java-runtime-headless' + 'python2-setuptools') optdepends=('pepper-flash: support for Flash content' 'libpipewire02: WebRTC desktop sharing under Wayland' 'kdialog: needed for file dialogs in KDE' @@ -28,44 +28,37 @@ optdepends=('pepper-flash: support for Flash content' install=chromium.install source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz - rename-Relayout-in-DesktopWindowTreeHostPlatform.patch - rebuild-Linux-frame-button-cache-when-activation.patch - icu67.patch - chromium-widevine.patch + v8-remove-soon-to-be-removed-getAllFieldPositions.patch chromium-skia-harmony.patch) -sha256sums=('f478f28b8111cb70231df4c36e754d812ad7a94b7c844e9d0515345a71fd77a6' +sha256sums=('4961f20c4ee6a94490e823f1b1c4128147068f1ce9cfc509e81815f2101405bc' '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1' - 'ae3bf107834bd8eda9a3ec7899fe35fde62e6111062e5def7d24bf49b53db3db' - '46f7fc9768730c460b27681ccf3dc2685c7e1fd22d70d3a82d9e57e3389bb014' - '5315977307e69d20b3e856d3f8724835b08e02085a4444a5c5cefea83fd7d006' - '709e2fddba3c1f2ed4deb3a239fc0479bfa50c46e054e7f32db4fb1365fed070' + 'e042024423027ad3ef729a7e4709bdf9714aea49d64cfbbf46a645a05703abc2' '771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1') # Possible replacements are listed in build/linux/unbundle/replace_gn_files.py # Keys are the names in the above script; values are the dependencies in Arch declare -gA _system_libs=( - [ffmpeg]=ffmpeg + # [ffmpeg]=ffmpeg # broken with recent ffmpeg git [flac]=flac [fontconfig]=fontconfig [freetype]=freetype2 [harfbuzz-ng]=harfbuzz [icu]=icu [libdrm]= - #[libjpeg]=libjpeg + [libjpeg]=libjpeg #[libpng]=libpng # https://crbug.com/752403#c10 [libvpx]=libvpx [libwebp]=libwebp [libxml]=libxml2 [libxslt]=libxslt [opus]=opus - #[re2]=re2 + # [re2]=re2 # Not possible with custom libcxx [snappy]=snappy [yasm]= [zlib]=minizip ) _unwanted_bundled_libs=( - ${!_system_libs[@]} - ${libjpeg_turbo} + $(printf "%s\n" ${!_system_libs[@]} | sed 's/^libjpeg$/&_turbo/') ) depends+=(${_system_libs[@]}) @@ -76,7 +69,7 @@ _google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM _google_default_client_id=413772536636.apps.googleusercontent.com _google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4 -# Branch point: 737173 +# Branch point: 756066 # Extra commits related specifically to wayland support: # These consist of the above commits and their dependencies @@ -97,16 +90,8 @@ prepare() { third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \ third_party/libxml/chromium/*.cc - # https://crbug.com/1049258 - patch -Np1 -i ../rename-Relayout-in-DesktopWindowTreeHostPlatform.patch - patch -Np1 -i ../rebuild-Linux-frame-button-cache-when-activation.patch - # https://crbug.com/v8/10393 - patch -Np3 -d v8 <../icu67.patch - - # Load bundled Widevine CDM if available (see chromium-widevine in the AUR) - # M79 is supposed to download it as a component but it doesn't seem to work - patch -Np1 -i ../chromium-widevine.patch + patch -Np1 -d v8 <../v8-remove-soon-to-be-removed-getAllFieldPositions.patch # https://crbug.com/skia/6663#c10 patch -Np0 -i ../chromium-skia-harmony.patch @@ -131,6 +116,7 @@ prepare() { find "third_party/$_lib" -type f \ \! -path "third_party/$_lib/chromium/*" \ \! -path "third_party/$_lib/google/*" \ + \! -path "third_party/harfbuzz-ng/utils/hb_scoped.h" \ \! -path 'third_party/yasm/run_yasm.py' \ \! -regex '.*\.\(gn\|gni\|isolate\)' \ -delete @@ -158,7 +144,6 @@ build() { 'use_gnome_keyring=false' 'use_sysroot=false' 'linux_use_bundled_binutils=false' - 'use_custom_libcxx=false' 'enable_hangout_services_extension=true' 'enable_widevine=true' 'use_ozone=true' @@ -167,10 +152,7 @@ build() { 'ozone_auto_platforms=false' 'use_glib=true' 'use_system_libwayland=true' - 'use_system_minigbm=true' - 'use_system_libdrm=true' 'use_vaapi=false' - 'use_jumbo_build=false' 'enable_nacl=false' 'enable_swiftshader=false' "google_api_key=\"${_google_api_key}\"" @@ -207,7 +189,6 @@ package() { cd "$srcdir/chromium-$pkgver" install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium" - install -D out/Release/crashpad_handler "$pkgdir/usr/lib/chromium/crashpad_handler" install -Dm4755 out/Release/chrome_sandbox "$pkgdir/usr/lib/chromium/chrome-sandbox" ln -s /usr/lib/chromium/chromedriver "$pkgdir/usr/bin/chromedriver" diff --git a/chromium-widevine.patch b/chromium-widevine.patch deleted file mode 100644 index 32f0ae2fb5e6..000000000000 --- a/chromium-widevine.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn -index ed0e2f5208b..5b431a030d5 100644 ---- a/third_party/widevine/cdm/BUILD.gn -+++ b/third_party/widevine/cdm/BUILD.gn -@@ -14,7 +14,7 @@ buildflag_header("buildflags") { - - flags = [ - "ENABLE_WIDEVINE=$enable_widevine", -- "BUNDLE_WIDEVINE_CDM=$bundle_widevine_cdm", -+ "BUNDLE_WIDEVINE_CDM=true", - "ENABLE_WIDEVINE_CDM_COMPONENT=$enable_widevine_cdm_component", - ] - } diff --git a/rebuild-Linux-frame-button-cache-when-activation.patch b/rebuild-Linux-frame-button-cache-when-activation.patch deleted file mode 100644 index 40764b3ba7ab..000000000000 --- a/rebuild-Linux-frame-button-cache-when-activation.patch +++ /dev/null @@ -1,62 +0,0 @@ -From d10f885b9327399be9348b780967ebd6b7f2c4bc Mon Sep 17 00:00:00 2001 -From: Tom Anderson <thomasanderson@chromium.org> -Date: Fri, 7 Feb 2020 22:44:54 +0000 -Subject: [PATCH] Rebuild Linux frame button cache when activation state - changes - -This fixes an issue where the frame buttons would always render in an -inactive state on Linux (see repro steps in bug 1049258). - -Bug: 1049258 -R=sky -CC=pkasting - -Change-Id: Ic5af33199003e1d1cdf6cedf506e32388ea11fa9 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2044538 -Auto-Submit: Thomas Anderson <thomasanderson@chromium.org> -Commit-Queue: Scott Violet <sky@chromium.org> -Reviewed-by: Scott Violet <sky@chromium.org> -Cr-Commit-Position: refs/heads/master@{#739585} ---- - .../ui/views/frame/desktop_linux_browser_frame_view.cc | 6 +++--- - .../desktop_aura/desktop_window_tree_host_platform.cc | 3 +++ - 2 files changed, 6 insertions(+), 3 deletions(-) - -diff --git a/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc b/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc -index 954e776057f..4f579955675 100644 ---- a/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc -+++ b/chrome/browser/ui/views/frame/desktop_linux_browser_frame_view.cc -@@ -22,13 +22,13 @@ DesktopLinuxBrowserFrameView::DesktopLinuxBrowserFrameView( - : OpaqueBrowserFrameView(frame, browser_view, layout), - nav_button_provider_(std::move(nav_button_provider)) {} - --DesktopLinuxBrowserFrameView::~DesktopLinuxBrowserFrameView() {} -+DesktopLinuxBrowserFrameView::~DesktopLinuxBrowserFrameView() = default; - - void DesktopLinuxBrowserFrameView::Layout() { - // Calling MaybeUpdateCachedFrameButtonImages() from Layout() is sufficient to - // catch all cases that could update the appearance, since -- // DesktopWindowTreeHostPlatform::OnWindowStateChanged() does a layout any -- // time any properties change. -+ // DesktopWindowTreeHostPlatform::On{Window,Activation}StateChanged() does a -+ // layout any time the maximized and activation state changes, respectively. - MaybeUpdateCachedFrameButtonImages(); - OpaqueBrowserFrameView::Layout(); - } -diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -index 9c695d8e5b1..9662f19aa90 100644 ---- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -@@ -677,9 +677,12 @@ void DesktopWindowTreeHostPlatform::OnCloseRequest() { - } - - void DesktopWindowTreeHostPlatform::OnActivationChanged(bool active) { -+ if (is_active_ == active) -+ return; - is_active_ = active; - aura::WindowTreeHostPlatform::OnActivationChanged(active); - desktop_native_widget_aura_->HandleActivationChanged(active); -+ ScheduleRelayout(); - } - - base::Optional<gfx::Size> diff --git a/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch b/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch deleted file mode 100644 index eda3cbdbaaf3..000000000000 --- a/rename-Relayout-in-DesktopWindowTreeHostPlatform.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 5a2cd2409c7d65c019ad9f4595a4e85315857ac4 Mon Sep 17 00:00:00 2001 -From: Tom Anderson <thomasanderson@chromium.org> -Date: Mon, 3 Feb 2020 23:18:46 +0000 -Subject: [PATCH] Rename Relayout() in DesktopWindowTreeHostPlatform to - ScheduleRelayout() - -R=sky - -Bug: None -Change-Id: I680cafd25935e59a280e3b2baac754d3d5f13a35 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2036553 -Auto-Submit: Thomas Anderson <thomasanderson@chromium.org> -Reviewed-by: Scott Violet <sky@chromium.org> -Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> -Cr-Commit-Position: refs/heads/master@{#737974} ---- - .../desktop_aura/desktop_window_tree_host_platform.cc | 6 +++--- - .../widget/desktop_aura/desktop_window_tree_host_platform.h | 2 +- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -index 6c00d49eb3f..9c695d8e5b1 100644 ---- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc -@@ -556,7 +556,7 @@ void DesktopWindowTreeHostPlatform::SetFullscreen(bool fullscreen) { - DCHECK_EQ(fullscreen, IsFullscreen()); - - if (IsFullscreen() == fullscreen) -- Relayout(); -+ ScheduleRelayout(); - // Else: the widget will be relaid out either when the window bounds change - // or when |platform_window|'s fullscreen state changes. - } -@@ -669,7 +669,7 @@ void DesktopWindowTreeHostPlatform::OnWindowStateChanged( - // Now that we have different window properties, we may need to relayout the - // window. (The windows code doesn't need this because their window change is - // synchronous.) -- Relayout(); -+ ScheduleRelayout(); - } - - void DesktopWindowTreeHostPlatform::OnCloseRequest() { -@@ -712,7 +712,7 @@ gfx::Rect DesktopWindowTreeHostPlatform::ToPixelRect( - return gfx::ToEnclosingRect(rect_in_pixels); - } - --void DesktopWindowTreeHostPlatform::Relayout() { -+void DesktopWindowTreeHostPlatform::ScheduleRelayout() { - Widget* widget = native_widget_delegate_->AsWidget(); - NonClientView* non_client_view = widget->non_client_view(); - // non_client_view may be NULL, especially during creation. -diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h -index 89beb8d2245..75a401e02a7 100644 ---- a/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h -+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_platform.h -@@ -129,7 +129,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostPlatform - gfx::Rect ToPixelRect(const gfx::Rect& rect_in_dip) const; - - private: -- void Relayout(); -+ void ScheduleRelayout(); - - Widget* GetWidget(); - const Widget* GetWidget() const; diff --git a/icu67.patch b/v8-remove-soon-to-be-removed-getAllFieldPositions.patch index bcfcb187b3bd..41d1aced2607 100644 --- a/icu67.patch +++ b/v8-remove-soon-to-be-removed-getAllFieldPositions.patch @@ -1,32 +1,25 @@ -From 2b107e7670ffb43719a66ee4a55ab408a5dcf2a5 Mon Sep 17 00:00:00 2001 -From: Ujjwal Sharma <ryzokuken@disroot.org> -Date: Wed, 22 Apr 2020 12:20:17 +0530 -Subject: [PATCH] deps: V8: backport 3f8dc4b2e5ba +From 3f8dc4b2e5baf77b463334c769af85b79d8c1463 Mon Sep 17 00:00:00 2001 +From: Frank Tang <ftang@chromium.org> +Date: Fri, 3 Apr 2020 23:13:54 -0700 +Subject: [PATCH] [intl] Remove soon-to-be removed getAllFieldPositions -Original commit message: +Needed to land ICU67.1 soon. - [intl] Remove soon-to-be removed getAllFieldPositions - - Needed to land ICU67.1 soon. - - Bug: v8:10393 - Change-Id: I3c7737ca600d6ccfdc46ffaddfb318ce60bc7618 - Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2136489 - Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> - Commit-Queue: Frank Tang <ftang@chromium.org> - Cr-Commit-Position: refs/heads/master@{#67027} - -Refs: https://github.com/v8/v8/commit/3f8dc4b2e5baf77b463334c769af85b79d8c1463 +Bug: v8:10393 +Change-Id: I3c7737ca600d6ccfdc46ffaddfb318ce60bc7618 +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2136489 +Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> +Commit-Queue: Frank Tang <ftang@chromium.org> +Cr-Commit-Position: refs/heads/master@{#67027} --- - common.gypi | 2 +- - deps/v8/src/objects/js-number-format.cc | 72 +++++++++++++------------ - 2 files changed, 38 insertions(+), 36 deletions(-) + src/objects/js-number-format.cc | 77 +++++++++++++++++---------------- + 1 file changed, 39 insertions(+), 38 deletions(-) -diff --git a/deps/v8/src/objects/js-number-format.cc b/deps/v8/src/objects/js-number-format.cc -index 92d3e2fb82e..ced408aa173 100644 ---- a/deps/v8/src/objects/js-number-format.cc -+++ b/deps/v8/src/objects/js-number-format.cc -@@ -1197,42 +1197,31 @@ MaybeHandle<JSNumberFormat> JSNumberFormat::New(Isolate* isolate, +diff --git a/src/objects/js-number-format.cc b/src/objects/js-number-format.cc +index ad831c5c36..bcd44031d5 100644 +--- a/src/objects/js-number-format.cc ++++ b/src/objects/js-number-format.cc +@@ -1241,44 +1241,33 @@ MaybeHandle<JSNumberFormat> JSNumberFormat::New(Isolate* isolate, } namespace { @@ -50,7 +43,9 @@ index 92d3e2fb82e..ced408aa173 100644 + *formatted = number_format.formatDecimal( {big_int_string->ToCString().get(), big_int_string->length()}, status); } else { - double number = numeric_obj->Number(); + double number = numeric_obj->IsNaN() + ? std::numeric_limits<double>::quiet_NaN() + : numeric_obj->Number(); - formatted = number_format.formatDouble(number, status); + *formatted = number_format.formatDouble(number, status); } @@ -63,21 +58,21 @@ index 92d3e2fb82e..ced408aa173 100644 - } - if (fp_iter) { - formatted.getAllFieldPositions(*fp_iter, status); -+ THROW_NEW_ERROR_RETURN_VALUE( -+ isolate, NewTypeError(MessageTemplate::kIcuError), Nothing<bool>()); - } +- } - icu::UnicodeString result = formatted.toString(status); - if (U_FAILURE(status)) { - THROW_NEW_ERROR_RETURN_VALUE(isolate, - NewTypeError(MessageTemplate::kIcuError), - Nothing<icu::UnicodeString>()); -- } ++ THROW_NEW_ERROR_RETURN_VALUE( ++ isolate, NewTypeError(MessageTemplate::kIcuError), Nothing<bool>()); + } - return Just(result); + return Just(true); } } // namespace -@@ -1243,10 +1232,16 @@ MaybeHandle<String> JSNumberFormat::FormatNumeric( +@@ -1289,10 +1278,16 @@ MaybeHandle<String> JSNumberFormat::FormatNumeric( Handle<Object> numeric_obj) { DCHECK(numeric_obj->IsNumeric()); @@ -97,7 +92,7 @@ index 92d3e2fb82e..ced408aa173 100644 } namespace { -@@ -1359,12 +1354,18 @@ std::vector<NumberFormatSpan> FlattenRegionsToParts( +@@ -1405,12 +1400,18 @@ std::vector<NumberFormatSpan> FlattenRegionsToParts( } namespace { @@ -119,7 +114,7 @@ index 92d3e2fb82e..ced408aa173 100644 int index = start_index; if (length == 0) return Just(index); -@@ -1373,13 +1374,14 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, +@@ -1419,13 +1420,14 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, // other region covers some part of the formatted string. It's possible // there's another field with exactly the same begin and end as this backdrop, // in which case the backdrop's field_id of -1 will give it lower priority. @@ -139,7 +134,7 @@ index 92d3e2fb82e..ced408aa173 100644 } } -@@ -1401,7 +1403,7 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, +@@ -1447,7 +1449,7 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, Handle<String> substring; ASSIGN_RETURN_ON_EXCEPTION_VALUE( isolate, substring, @@ -148,7 +143,7 @@ index 92d3e2fb82e..ced408aa173 100644 Nothing<int>()); Intl::AddElement(isolate, result, index, field_type_string, substring); ++index; -@@ -1421,14 +1423,14 @@ MaybeHandle<JSArray> JSNumberFormat::FormatToParts( +@@ -1467,20 +1469,19 @@ MaybeHandle<JSArray> JSNumberFormat::FormatToParts( number_format->icu_number_formatter().raw(); CHECK_NOT_NULL(fmt); @@ -159,11 +154,19 @@ index 92d3e2fb82e..ced408aa173 100644 + Maybe<bool> maybe_format = + IcuFormatNumber(isolate, *fmt, numeric_obj, &formatted); MAYBE_RETURN(maybe_format, Handle<JSArray>()); +- + UErrorCode status = U_ZERO_ERROR; ++ + bool style_is_unit = + Style::UNIT == StyleFromSkeleton(fmt->toSkeleton(status)); + CHECK(U_SUCCESS(status)); Handle<JSArray> result = factory->NewJSArray(0); - Maybe<int> maybe_format_to_parts = ConstructParts( -- isolate, maybe_format.FromJust(), &fp_iter, result, 0, numeric_obj, -+ isolate, &formatted, result, 0, numeric_obj, - number_format->style() == JSNumberFormat::Style::UNIT); +- Maybe<int> maybe_format_to_parts = +- ConstructParts(isolate, maybe_format.FromJust(), &fp_iter, result, 0, +- numeric_obj, style_is_unit); ++ Maybe<int> maybe_format_to_parts = ConstructParts( ++ isolate, &formatted, result, 0, numeric_obj, style_is_unit); MAYBE_RETURN(maybe_format_to_parts, Handle<JSArray>()); + return result; |