Avoid conditional branching on uninitialized values
C++ initializes members in the order in which they are defined in class. So the order is important if the members are accessed by other initializers or methods called from them. Class BoxLayerWidget: _roundRect is initialized based on _layerType through the st() method. Class Checkbox: Arguments of _text constructor depend on _checkAlignment through the countTextMinWidth and the checkRect methods.
This commit is contained in:
parent
e5d8e54035
commit
258cacf7c5
2 changed files with 2 additions and 2 deletions
|
|
@ -128,6 +128,7 @@ private:
|
||||||
|
|
||||||
const style::Box *_st = nullptr;
|
const style::Box *_st = nullptr;
|
||||||
not_null<LayerStackWidget*> _layer;
|
not_null<LayerStackWidget*> _layer;
|
||||||
|
bool _layerType = false;
|
||||||
int _fullHeight = 0;
|
int _fullHeight = 0;
|
||||||
|
|
||||||
bool _noContentMargin = false;
|
bool _noContentMargin = false;
|
||||||
|
|
@ -140,7 +141,6 @@ private:
|
||||||
rpl::variable<QString> _additionalTitle;
|
rpl::variable<QString> _additionalTitle;
|
||||||
int _titleLeft = 0;
|
int _titleLeft = 0;
|
||||||
int _titleTop = 0;
|
int _titleTop = 0;
|
||||||
bool _layerType = false;
|
|
||||||
bool _closeByOutsideClick = true;
|
bool _closeByOutsideClick = true;
|
||||||
|
|
||||||
std::vector<object_ptr<RoundButton>> _buttons;
|
std::vector<object_ptr<RoundButton>> _buttons;
|
||||||
|
|
|
||||||
|
|
@ -228,8 +228,8 @@ private:
|
||||||
rpl::event_stream<bool> _checkedChanges;
|
rpl::event_stream<bool> _checkedChanges;
|
||||||
QPixmap _checkCache;
|
QPixmap _checkCache;
|
||||||
|
|
||||||
Text::String _text;
|
|
||||||
style::align _checkAlignment = style::al_left;
|
style::align _checkAlignment = style::al_left;
|
||||||
|
Text::String _text;
|
||||||
int _allowTextLines = 1;
|
int _allowTextLines = 1;
|
||||||
bool _textBreakEverywhere = false;
|
bool _textBreakEverywhere = false;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue