From f896f82db859f9d3de45309f74e8e6fa4ce3024f Mon Sep 17 00:00:00 2001 From: black Date: Tue, 8 Jul 2025 13:22:43 +0200 Subject: [PATCH] indexFile() now saves the stream position not line number --- src/ProgramLoader.cpp | 4 +--- src/ProgramLoader.h | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/ProgramLoader.cpp b/src/ProgramLoader.cpp index fad58e1..ef047fb 100644 --- a/src/ProgramLoader.cpp +++ b/src/ProgramLoader.cpp @@ -37,14 +37,12 @@ void ProgramLoader::indexFile(std::ifstream &m_programFile) { m_programFile.clear(); m_programFile.seekg(0); std::string line; - int lineNumber = 1; /// Parse Zeile für Zeile while (std::getline(m_programFile, line)) { auto lineVector = parseLine(line); /// Sobald ein Label gefunden wurde, speichere die Zeile if (const auto first = lineVector.begin(); first->at(first->length() - 1) == ':') { - m_labels[first->substr(0, first->length() - 1)] = lineNumber; + m_labels[first->substr(0, first->length() - 1)] = m_programFile.tellg(); } - lineNumber++; } } diff --git a/src/ProgramLoader.h b/src/ProgramLoader.h index eae7921..9a17ccc 100644 --- a/src/ProgramLoader.h +++ b/src/ProgramLoader.h @@ -20,7 +20,7 @@ private: */ explicit ProgramLoader() = default; - std::map m_labels; + std::map m_labels; public: /// Singleton Logik