aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--graphics/VectorRenderer.h19
-rw-r--r--gui/ThemeParser.cpp2
2 files changed, 19 insertions, 2 deletions
diff --git a/graphics/VectorRenderer.h b/graphics/VectorRenderer.h
index 78638200a4..c2f7b40ed0 100644
--- a/graphics/VectorRenderer.h
+++ b/graphics/VectorRenderer.h
@@ -50,6 +50,8 @@ struct DrawStep {
struct Color {
uint8 r, g, b;
bool set;
+
+ Color () : r(0), g(0), b(0), set(false) {}
};
Color fgColor; /**< Foreground color */
Color bgColor; /**< background color */
@@ -85,6 +87,23 @@ struct DrawStep {
uint32 scale; /**< scale of all the coordinates in FIXED POINT with 16 bits mantissa */
GUI::ThemeEngine::AutoScaleMode autoscale; /**< scale alphaimage if present */
+
+ DrawStep() {
+ drawingCall = nullptr;
+ blitSrc = nullptr;
+ blitAlphaSrc = nullptr;
+ // fgColor, bgColor, gradColor1, gradColor2, bevelColor initialized by Color default constructor
+ autoWidth = autoHeight = false;
+ x = y = w = h = 0;
+ // padding initialized by Common::Rect default constructor
+ xAlign = yAlign = kVectorAlignManual;
+ shadow = stroke = factor = radius = bevel = 0;
+ fillMode = 0;
+ shadowFillMode = 0;
+ extraData = 0;
+ scale = 0;
+ autoscale = GUI::ThemeEngine::kAutoScaleNone;
+ }
};
VectorRenderer *createRenderer(int mode);
diff --git a/gui/ThemeParser.cpp b/gui/ThemeParser.cpp
index bf62bcc792..a52e3592af 100644
--- a/gui/ThemeParser.cpp
+++ b/gui/ThemeParser.cpp
@@ -126,8 +126,6 @@ void ThemeParser::cleanup() {
Graphics::DrawStep *ThemeParser::defaultDrawStep() {
Graphics::DrawStep *step = new Graphics::DrawStep;
- memset(step, 0, sizeof(Graphics::DrawStep));
-
step->xAlign = Graphics::DrawStep::kVectorAlignManual;
step->yAlign = Graphics::DrawStep::kVectorAlignManual;
step->factor = 1;