From b6bf7ae6206ca0c755414679e311aed082fa4473 Mon Sep 17 00:00:00 2001 From: ISSOtm Date: Wed, 4 Nov 2020 02:52:06 +0100 Subject: [PATCH] Fix RGBLINK incorrectly reading file stack nodes This caused node IDs to mismatch, yielding possibly corrupted file stacks Worst part is, the docs mentioned the reading order had to be reversed... --- src/link/object.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/link/object.c b/src/link/object.c index 8e63bd2a..3ce4a3bc 100644 --- a/src/link/object.c +++ b/src/link/object.c @@ -497,7 +497,7 @@ void obj_ReadFile(char const *fileName, unsigned int fileID) if (!nodes[fileID].nodes) err(1, "Failed to get memory for %s's nodes", fileName); verbosePrint("Reading %u nodes...\n", nodes[fileID].nbNodes); - for (uint32_t i = 0; i < nodes[fileID].nbNodes; i++) + for (uint32_t i = nodes[fileID].nbNodes; i--; ) readFileStackNode(file, nodes[fileID].nodes, i, fileName); /* This file's symbols, kept to link sections to them */