aboutsummaryrefslogtreecommitdiff
path: root/src/error.cpp
diff options
context:
space:
mode:
authorJeroen van Rijn <Kelimion@users.noreply.github.com>2024-05-09 20:20:18 +0200
committerGitHub <noreply@github.com>2024-05-09 20:20:18 +0200
commit41bd8cf7143902db59c02c56fc5318a7e749d7a5 (patch)
tree99264d56649471e88c7509c8605152d6ca09bb12 /src/error.cpp
parent1604f37cb82a843642708bc53d5f7b11f6634b6f (diff)
parent98827c867dd88b1a72d74f0a6d703f7a25d81d91 (diff)
Merge pull request #3563 from laytan/fix-duplicate-suggestions
fix duplicate suggestions and add missing newline
Diffstat (limited to 'src/error.cpp')
-rw-r--r--src/error.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/error.cpp b/src/error.cpp
index 1877a672b..688d1b34a 100644
--- a/src/error.cpp
+++ b/src/error.cpp
@@ -719,9 +719,13 @@ gb_internal void print_all_errors(void) {
}
}
- if (it.str.len-it.pos > 0) {
- array_add_elems(&prev_ev->msg, it.str.text+it.pos, it.str.len-it.pos);
+ // Merge additional text (suggestions for example) into the previous error.
+ String current = {prev_ev->msg.data, prev_ev->msg.count};
+ String addition = {it.str.text+it.pos, it.str.len-it.pos};
+ if (addition.len > 0 && !string_contains_string(current, addition)) {
+ array_add_elems(&prev_ev->msg, addition.text, addition.len);
}
+
array_free(&ev.msg);
array_ordered_remove(&global_error_collector.error_values, i);
} else {