diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2018-01-18 23:08:30 +0100 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2018-01-18 23:08:30 +0100 |
commit | 5a7300d6f40acb650c45b545ad14e0524e0b6dd7 (patch) | |
tree | ea106dfd18653a0281d8b9e0f134a0f0e6400186 /vala/valacodewriter.vala | |
parent | 71ffab13ba4ac484b96751b735171fd2e8651a67 (diff) | |
download | vala-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.vala | 8 |
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; |