Browse Source

Correct `get_fullpath_relative` to remove all trailing path separators (`/` and `\`)

gingerBill 2 years ago
parent
commit
3ff56e4405
1 changed files with 9 additions and 0 deletions
  1. 9 0
      src/build_settings.cpp

+ 9 - 0
src/build_settings.cpp

@@ -986,6 +986,15 @@ String get_fullpath_relative(gbAllocator a, String base_dir, String path) {
 	gb_memmove(str+i, path.text,     path.len);     i += path.len;
 	str[i] = 0;
 
+	// IMPORTANT NOTE(bill): Remove trailing path separators
+	// this is required to make sure there is a conventional
+	// notation for the path
+	for (/**/; i > 0; i--) {
+		u8 c = str[i-1];
+		if (c != '/' && c != '\\') {
+			break;
+		}
+	}
 
 	String res = make_string(str, i);
 	res = string_trim_whitespace(res);