From b6c17dcd75f439666b2aa1e40a2b99932949e2e2 Mon Sep 17 00:00:00 2001 From: descear <47546329+descear@users.noreply.github.com> Date: Sat, 24 Jun 2023 12:12:40 +0100 Subject: [PATCH] Fix infinite loop in iteration of memory mapping lines; fixes #242 --- NativeCore/Unix/EnumerateRemoteSectionsAndModules.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/NativeCore/Unix/EnumerateRemoteSectionsAndModules.cpp b/NativeCore/Unix/EnumerateRemoteSectionsAndModules.cpp index 079cba54..9d821cfe 100644 --- a/NativeCore/Unix/EnumerateRemoteSectionsAndModules.cpp +++ b/NativeCore/Unix/EnumerateRemoteSectionsAndModules.cpp @@ -52,11 +52,12 @@ extern "C" void RC_CallConv EnumerateRemoteSectionsAndModules(RC_Pointer handle, auto path = std::stringstream(); path << "/proc/" << reinterpret_cast(handle) << "/maps"; + std::ifstream input(path.str()); std::unordered_map modules; std::string line; - while (std::getline(std::ifstream(path.str()), line)) + while (std::getline(input, line)) { std::stringstream ss(line);