summaryrefslogtreecommitdiff
path: root/src/gui/widgets/dropdown.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/widgets/dropdown.cpp')
-rw-r--r--src/gui/widgets/dropdown.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gui/widgets/dropdown.cpp b/src/gui/widgets/dropdown.cpp
index 8727f940f..8b5f81e6b 100644
--- a/src/gui/widgets/dropdown.cpp
+++ b/src/gui/widgets/dropdown.cpp
@@ -115,6 +115,19 @@ DropDown::DropDown(gcn::ListModel *listModel, gcn::ActionListener* listener,
DropDown::~DropDown()
{
instances--;
+ if (instances == 0)
+ {
+ for (int f = 0; f < 2; f ++)
+ {
+ for (int i = 0; i < 2; i ++)
+ {
+ if (buttons[f][i])
+ buttons[f][i]->decRef();
+ }
+ }
+ if (Theme::instance())
+ Theme::instance()->unloadRect(skin);
+ }
delete mScrollArea;
mScrollArea = nullptr;
}