diff options
author | PeterN <peter@fuzzle.org> | 2019-03-02 08:06:02 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-02 08:06:02 +0000 |
commit | 63fe6c65983a4cf2eba4995d03abd7e8a39c4a43 (patch) | |
tree | 7e96914c221dc953e127a2c839692d049f25d84a /src | |
parent | 7ecfae8f7f42906065d8861d424271c1a412ff12 (diff) | |
download | openttd-63fe6c65983a4cf2eba4995d03abd7e8a39c4a43.tar.xz |
Codechange: Make std::stack use std::vector container in string formatting/drawing. (#7305)
This is a very minor performance increase which can add up during operations such
as sorting. Performance impact my be platform/compiler dependent.
Diffstat (limited to 'src')
-rw-r--r-- | src/gfx_layout.h | 3 | ||||
-rw-r--r-- | src/strings.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/gfx_layout.h b/src/gfx_layout.h index f6fc3b5c7..94cbac073 100644 --- a/src/gfx_layout.h +++ b/src/gfx_layout.h @@ -19,6 +19,7 @@ #include <map> #include <string> #include <stack> +#include <vector> #ifdef WITH_ICU_LAYOUT #include "layout/ParagraphLayout.h" @@ -35,7 +36,7 @@ struct FontState { FontSize fontsize; ///< Current font size. TextColour cur_colour; ///< Current text colour. - std::stack<TextColour> colour_stack; ///< Stack of colours to assist with colour switching. + std::stack<TextColour, std::vector<TextColour>> colour_stack; ///< Stack of colours to assist with colour switching. FontState() : fontsize(FS_END), cur_colour(TC_INVALID) {} FontState(TextColour colour, FontSize fontsize) : fontsize(fontsize), cur_colour(colour) {} diff --git a/src/strings.cpp b/src/strings.cpp index 2cc3a23be..a3ece9830 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -791,7 +791,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg WChar b = '\0'; uint next_substr_case_index = 0; char *buf_start = buff; - std::stack<const char *> str_stack; + std::stack<const char *, std::vector<const char *>> str_stack; str_stack.push(str_arg); for (;;) { |