Skip to content

Commit 7152a58

Browse files
committed
test-stack-traces: relax parsing rules
* accept forward and backward slashes in file paths * strip multiple extensions; e.g. if the basename is "test.exe.obj" then it strips to "test".
1 parent 02038b0 commit 7152a58

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

test/tests.zig

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -923,7 +923,7 @@ pub const StackTracesContext = struct {
923923
pos = marks[i] + delim.len;
924924
}
925925
// locate source basename
926-
pos = mem.lastIndexOfScalar(u8, line[0..marks[0]], fs.path.sep) orelse {
926+
pos = mem.lastIndexOfAny(u8, line[0..marks[0]], "\\/") orelse {
927927
// unexpected pattern: emit raw line and cont
928928
try buf.appendSlice(line);
929929
try buf.appendSlice("\n");
@@ -935,9 +935,9 @@ pub const StackTracesContext = struct {
935935
try buf.appendSlice(line[pos + 1 .. marks[2] + delims[2].len]);
936936
try buf.appendSlice(" [address]");
937937
if (self.mode == .Debug) {
938-
if (mem.lastIndexOfScalar(u8, line[marks[4]..marks[5]], '.')) |idot| {
939-
// On certain platforms (windows) or possibly depending on how we choose to link main
940-
// the object file extension may be present so we simply strip any extension.
938+
// On certain platforms (windows) or possibly depending on how we choose to link main
939+
// the object file extension may be present so we simply strip any extension.
940+
if (mem.indexOfScalar(u8, line[marks[4]..marks[5]], '.')) |idot| {
941941
try buf.appendSlice(line[marks[3] .. marks[4] + idot]);
942942
try buf.appendSlice(line[marks[5]..]);
943943
} else {

0 commit comments

Comments
 (0)