summaryrefslogtreecommitdiff
path: root/plugins/TabSRMM
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/TabSRMM')
-rw-r--r--plugins/TabSRMM/include/themes.h1
-rw-r--r--plugins/TabSRMM/src/themes.cpp11
2 files changed, 7 insertions, 5 deletions
diff --git a/plugins/TabSRMM/include/themes.h b/plugins/TabSRMM/include/themes.h
index 38c46e07e3..fcd4d03927 100644
--- a/plugins/TabSRMM/include/themes.h
+++ b/plugins/TabSRMM/include/themes.h
@@ -252,6 +252,7 @@ public:
CSkin()
{
+ ZeroMemory(this, sizeof(CSkin));
m_default_bf.SourceConstantAlpha = 255;
m_default_bf.AlphaFormat = AC_SRC_ALPHA;
m_default_bf.BlendOp = AC_SRC_OVER;
diff --git a/plugins/TabSRMM/src/themes.cpp b/plugins/TabSRMM/src/themes.cpp
index 031eec0328..5bf22158dc 100644
--- a/plugins/TabSRMM/src/themes.cpp
+++ b/plugins/TabSRMM/src/themes.cpp
@@ -1084,7 +1084,6 @@ void CSkin::setFileName()
void CSkin::Init(bool fStartup)
{
m_ImageItems = 0;
- ZeroMemory(this, sizeof(CSkin));
m_SkinItems = ::SkinItems;
m_fLoadOnStartup = false;
m_skinEnabled = m_frameSkins = false;
@@ -1204,11 +1203,13 @@ void CSkin::Unload()
::DeleteObject(m_SkinDarkShadowPen);
m_SkinDarkShadowPen = 0;
- for(i = 0; i < ID_EXTBK_LAST; i++) {
- m_SkinItems[i].IGNORED = 1;
- m_SkinItems[i].imageItem = 0;
+ if (m_SkinItems) {
+ for(i = 0; i < ID_EXTBK_LAST; i++) {
+ m_SkinItems[i].IGNORED = 1;
+ m_SkinItems[i].imageItem = 0;
+ }
+ m_SkinItems[ID_EXTBKINFOPANELBG] = _defInfoPanel;
}
- m_SkinItems[ID_EXTBKINFOPANELBG] = _defInfoPanel;
ZeroMemory(this, sizeof(CSkin));