Skip to content

Commit 6745b93

Browse files
author
Your Name
committed
Fix parsing of large module base addresses and quoted file paths
1 parent 3c73b18 commit 6745b93

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

lightkeeper/src/main/java/lightkeeper/io/module/ModuleReader.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,11 +124,11 @@ public ModuleEntry read() throws CancelledException, IOException {
124124
}
125125

126126
var startString = moduleMatcher.group("start");
127-
long start = parseNumber(startString, s -> Long.parseLong(s, 16),
127+
long start = parseNumber(startString, s -> Long.parseUnsignedLong(s, 16),
128128
String.format("Invalid start: %s", startString));
129129

130130
var endString = moduleMatcher.group("end");
131-
long end = parseNumber(endString, s -> Long.parseLong(s, 16), String.format("Invalid start: %s", endString));
131+
long end = parseNumber(endString, s -> Long.parseUnsignedLong(s, 16), String.format("Invalid end: %s", endString));
132132

133133
var entryString = moduleMatcher.group("entry");
134134
long entry = parseNumber(entryString, s -> Long.parseLong(s, 16),
@@ -147,6 +147,10 @@ public ModuleEntry read() throws CancelledException, IOException {
147147
}
148148

149149
var pathString = moduleMatcher.group("path");
150+
if (pathString.startsWith("\"") && pathString.endsWith("\"")) {
151+
pathString = pathString.substring(1, pathString.length() - 1);
152+
}
153+
150154

151155
var module = new ModuleEntry(id, containingId, start, end, entry, checksum, timeStamp, pathString);
152156
addMessage(String.format("Read Module: %s", module));

0 commit comments

Comments
 (0)