summaryrefslogtreecommitdiff
path: root/vala/valacodewriter.vala
diff options
context:
space:
mode:
authorRico Tzschichholz <ricotz@ubuntu.com>2018-01-18 23:08:30 +0100
committerRico Tzschichholz <ricotz@ubuntu.com>2018-01-18 23:08:30 +0100
commit5a7300d6f40acb650c45b545ad14e0524e0b6dd7 (patch)
treeea106dfd18653a0281d8b9e0f134a0f0e6400186 /vala/valacodewriter.vala
parent71ffab13ba4ac484b96751b735171fd2e8651a67 (diff)
downloadvala-5a7300d6f40acb650c45b545ad14e0524e0b6dd7.tar.gz
codewriter: Don't use string.replace() to apply header_to_override
The underlying regex causes faulty replacements. https://bugzilla.gnome.org/show_bug.cgi?id=731322
Diffstat (limited to 'vala/valacodewriter.vala')
-rw-r--r--vala/valacodewriter.vala8
1 files changed, 7 insertions, 1 deletions
diff --git a/vala/valacodewriter.vala b/vala/valacodewriter.vala
index 8c0e68804..2fed2d8f5 100644
--- a/vala/valacodewriter.vala
+++ b/vala/valacodewriter.vala
@@ -214,7 +214,13 @@ public class Vala.CodeWriter : CodeVisitor {
}
if (header_to_override != null) {
- cheaders = cheaders.replace (header_to_override, override_header).replace (",,", ",");
+ var cheaders_array = cheaders.split (",");
+ for (int i = 0; i < cheaders_array.length; i++) {
+ if (cheaders_array[i] == header_to_override) {
+ cheaders_array[i] = override_header;
+ }
+ }
+ cheaders = string.joinv (",", cheaders_array);
}
}
return cheaders;