From a37565f70d74ecc1a312a62dc48091fd2c73136e Mon Sep 17 00:00:00 2001 From: Joe Vilches Date: Tue, 6 Feb 2024 11:16:21 -0800 Subject: [PATCH] Fix failing MVSC benchmark builds (#1573) Summary: Pull Request resolved: https://github.com/facebook/yoga/pull/1573 Noticed a recent stack of commits cause the MVSC builds of benchmark to fail. This was due to forgetting to call `.string()` of a path and trying to escape a character that cannot be escaped. Reviewed By: philIip Differential Revision: D53461723 fbshipit-source-id: b6cc034d53b3a61929012965e257a3984c3bff47 --- benchmark/Benchmark.cpp | 5 +++-- capture/NodeToString.cpp | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/benchmark/Benchmark.cpp b/benchmark/Benchmark.cpp index b517b83e..39d66b46 100644 --- a/benchmark/Benchmark.cpp +++ b/benchmark/Benchmark.cpp @@ -5,6 +5,7 @@ * LICENSE file in the root directory of this source tree. */ +#include #include #include @@ -138,7 +139,7 @@ YGUnit unitFromJson(json& j) { std::string unit = j["unit"]; if (unit == "px") { return YGUnitPoint; - } else if (unit == "\%") { + } else if (unit == "pct") { return YGUnitPercent; } else { throw std::invalid_argument(invalidArgumentMessage(unit, "YGUnit")); @@ -382,7 +383,7 @@ void benchmark(std::filesystem::path& capturesDir) { totalDurations[i] = result.treeCreationDuration + result.layoutDuration; } - std::string captureName = capture.path().stem(); + std::string captureName = capture.path().stem().string(); printBenchmarkResult(captureName + " tree creation", treeCreationDurations); printBenchmarkResult(captureName + " layout", layoutDurations); printBenchmarkResult(captureName + " total", totalDurations); diff --git a/capture/NodeToString.cpp b/capture/NodeToString.cpp index 9525913b..f00bffa6 100644 --- a/capture/NodeToString.cpp +++ b/capture/NodeToString.cpp @@ -33,7 +33,7 @@ static void appendYGValueIfNotDefault( } else if (value.unit == YGUnitUndefined) { j["style"][key] = "undefined"; } else { - std::string unit = value.unit == YGUnitPoint ? "px" : "%%"; + std::string unit = value.unit == YGUnitPoint ? "px" : "pct"; j["style"][key]["value"] = value.value; j["style"][key]["unit"] = unit; }