From 251b014bf4b1cdd0d79511ab4a140db301925d0b Mon Sep 17 00:00:00 2001 From: Miran Date: Thu, 24 Jan 2019 14:40:16 +0100 Subject: [PATCH] fix #9556 (#10445) The old logic wasn't very useful because `relPath` is almost always shorter than `absPath`, e.g. `../../../../../` is shorter than `C:\Program Files`. This way allows the usage of a relative path for at most two levels deep, e.g. `../../relPath`, otherwise the absolute path is used. --- compiler/msgs.nim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/msgs.nim b/compiler/msgs.nim index 698b810615..6bb2c3fa3c 100644 --- a/compiler/msgs.nim +++ b/compiler/msgs.nim @@ -203,7 +203,7 @@ proc toMsgFilename*(conf: ConfigRef; info: TLineInfo): string = result = absPath else: let relPath = conf.m.fileInfos[info.fileIndex.int32].projPath.string - result = if absPath.len < relPath.len: absPath else: relPath + result = if relPath.count("..") > 2: absPath else: relPath proc toLinenumber*(info: TLineInfo): int {.inline.} = result = int info.line