From 5277646f46959b8036aab61925f3b860c0df4985 Mon Sep 17 00:00:00 2001 From: Linus Groh Date: Sat, 18 Dec 2021 23:20:00 +0000 Subject: [PATCH] LibJS: Fix 'precision != "auto"' check in temporal_duration_to_string() If the Variant does *not* have a StringView, it *also* is not "auto". Thanks to YouTube user JWeis for noticing this :^) --- Userland/Libraries/LibJS/Runtime/Temporal/Duration.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Userland/Libraries/LibJS/Runtime/Temporal/Duration.cpp b/Userland/Libraries/LibJS/Runtime/Temporal/Duration.cpp index 78dc953a64..67be36f0fd 100644 --- a/Userland/Libraries/LibJS/Runtime/Temporal/Duration.cpp +++ b/Userland/Libraries/LibJS/Runtime/Temporal/Duration.cpp @@ -1779,7 +1779,7 @@ String temporal_duration_to_string(double years, double months, double weeks, do } // 21. If any of seconds, milliseconds, microseconds, and nanoseconds are not 0; or years, months, weeks, days, hours, and minutes are all 0; or precision is not "auto"; then - if ((seconds != 0 || milliseconds != 0 || microseconds != 0 || nanoseconds != 0) || (years == 0 && months == 0 && weeks == 0 && days == 0 && hours == 0 && minutes == 0) || (precision.has() && precision.get() != "auto"sv)) { + if ((seconds != 0 || milliseconds != 0 || microseconds != 0 || nanoseconds != 0) || (years == 0 && months == 0 && weeks == 0 && days == 0 && hours == 0 && minutes == 0) || (!precision.has() || precision.get() != "auto"sv)) { // a. Let fraction be abs(milliseconds) × 10^6 + abs(microseconds) × 10^3 + abs(nanoseconds). auto fraction = fabs(milliseconds) * 1'000'000 + fabs(microseconds) * 1'000 + fabs(nanoseconds);