aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanielGavin <danielgavin5@hotmail.com>2025-10-19 17:04:25 +0200
committerDanielGavin <danielgavin5@hotmail.com>2025-10-19 17:04:25 +0200
commit9f2e58e63db1efbb5a126526a1d2537c98aeb882 (patch)
treeddf524b4ba1b5bf901fcf0a47fd5cd7256244e63
parent68a1d21b27c4082af691c50661835df958dce993 (diff)
Use the same create_uri function to ensure the uri is consistant when sending diagnostics.uri-fix-diagnostics
-rw-r--r--src/server/check.odin6
-rw-r--r--src/server/diagnostics.odin12
-rw-r--r--src/server/documents.odin4
3 files changed, 7 insertions, 15 deletions
diff --git a/src/server/check.odin b/src/server/check.odin
index b53d7e2..b4bc674 100644
--- a/src/server/check.odin
+++ b/src/server/check.odin
@@ -72,12 +72,14 @@ check_unused_imports :: proc(document: ^Document, config: ^common.Config) {
unused_imports := find_unused_imports(document, context.temp_allocator)
- remove_diagnostics(.Unused, document.uri.uri)
+ uri := common.create_uri(document.uri.path, context.temp_allocator)
+
+ remove_diagnostics(.Unused, uri.uri)
for imp in unused_imports {
add_diagnostics(
.Unused,
- document.uri.uri,
+ uri.uri,
Diagnostic {
range = common.get_token_range(imp.import_decl, document.ast.src),
severity = DiagnosticSeverity.Hint,
diff --git a/src/server/diagnostics.odin b/src/server/diagnostics.odin
index 821aa74..2237f8c 100644
--- a/src/server/diagnostics.odin
+++ b/src/server/diagnostics.odin
@@ -20,12 +20,6 @@ add_diagnostics :: proc(type: DiagnosticType, uri: string, diagnostic: Diagnosti
return
}
- uri := uri
-
- when ODIN_OS == .Windows {
- uri = strings.to_lower(uri, context.temp_allocator)
- }
-
diagnostic_array := &diagnostic_type[uri]
if diagnostic_array == nil {
@@ -49,12 +43,6 @@ remove_diagnostics :: proc(type: DiagnosticType, uri: string) {
return
}
- uri := uri
-
- when ODIN_OS == .Windows {
- uri = strings.to_lower(uri, context.temp_allocator)
- }
-
diagnostic_array := &diagnostic_type[uri]
if diagnostic_array == nil {
diff --git a/src/server/documents.odin b/src/server/documents.odin
index cec42cb..e19deb5 100644
--- a/src/server/documents.odin
+++ b/src/server/documents.odin
@@ -326,10 +326,12 @@ document_refresh :: proc(document: ^Document, config: ^common.Config, writer: ^W
if writer != nil && !config.disable_parser_errors {
document.diagnosed_errors = true
+ uri := common.create_uri(document.uri.path, context.temp_allocator)
+
for error, i in errors {
add_diagnostics(
.Syntax,
- document.uri.uri,
+ uri.uri,
Diagnostic {
range = common.Range {
start = common.Position{line = error.line - 1, character = 0},