diff options
Diffstat (limited to 'engines/director/sprite.cpp')
-rw-r--r-- | engines/director/sprite.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/engines/director/sprite.cpp b/engines/director/sprite.cpp index 019966762e..9d219d6076 100644 --- a/engines/director/sprite.cpp +++ b/engines/director/sprite.cpp @@ -53,7 +53,11 @@ Sprite::Sprite() { _stretch = 0; _type = kInactiveSprite; - _cast = nullptr; + _bitmapCast = nullptr; + _textCast = nullptr; + _buttonCast = nullptr; + _shapeCast = nullptr; + _blend = 0; _lineSize = 1; @@ -90,7 +94,11 @@ Sprite::Sprite(const Sprite &sprite) { _stretch = sprite._stretch; _type = sprite._type; - _cast = sprite._cast; + _bitmapCast = sprite._bitmapCast; + _shapeCast = sprite._shapeCast; + _textCast = sprite._textCast; + _buttonCast = sprite._buttonCast; + _constraint = sprite._constraint; _moveable = sprite._moveable; _blend = sprite._blend; @@ -107,7 +115,14 @@ Sprite::Sprite(const Sprite &sprite) { } Sprite::~Sprite() { - delete _cast; + if (_bitmapCast) + delete _bitmapCast; + if (_shapeCast) + delete _shapeCast; + if (_textCast) + delete _textCast; + if (_buttonCast) + delete _buttonCast; } } // End of namespace Director |