CComponentsSlider: fix possible null pointer dereference

csl_body_obj, csl_slider_obj,
otherwise it is redundant to check it against null.
This commit is contained in:
2013-12-25 16:26:04 +01:00
parent 9ac35f0d92
commit 0079782696

View File

@@ -97,17 +97,17 @@ void CComponentsSlider::setValueScale(const int& min_value, const int& max_value
void CComponentsSlider::initCCSlBody() void CComponentsSlider::initCCSlBody()
{ {
if (!csl_body_icon.empty()){ if (!csl_body_icon.empty()){
printf("[CComponentsSlider] [%s] missing or undefinied slider body icon %s\n", __func__, csl_body_icon.c_str());
if (csl_body_obj == NULL){ if (csl_body_obj == NULL){
csl_body_obj = new CComponentsPicture(0, 0, 0, height, csl_body_icon); csl_body_obj = new CComponentsPicture(0, 0, 0, height, csl_body_icon);
csl_body_obj->doPaintBg(false); csl_body_obj->doPaintBg(false);
addCCItem(csl_body_obj); addCCItem(csl_body_obj);
} }
}else{ else
if (csl_body_obj){ csl_body_obj->setPicture(csl_body_icon);
delete csl_body_obj;
csl_body_obj = NULL;
}
} }
else
return;
//get first icon dimensions //get first icon dimensions
int icon_w = csl_body_obj->getWidth(); int icon_w = csl_body_obj->getWidth();
@@ -127,17 +127,17 @@ void CComponentsSlider::initCCSlBody()
void CComponentsSlider::initCCSlSlider() void CComponentsSlider::initCCSlSlider()
{ {
if (!csl_slider_icon.empty()){ if (!csl_slider_icon.empty()){
printf("[CComponentsSlider] [%s] missing or undefinied slider icon %s\n", __func__, csl_slider_icon.c_str());
if (csl_slider_obj == NULL){ if (csl_slider_obj == NULL){
csl_slider_obj = new CComponentsPicture(0, 0, 0, 0, csl_slider_icon); csl_slider_obj = new CComponentsPicture(0, 0, 0, 0, csl_slider_icon);
csl_slider_obj->doPaintBg(false); csl_slider_obj->doPaintBg(false);
addCCItem(csl_slider_obj); addCCItem(csl_slider_obj);
} }
}else{ else
if (csl_slider_obj){ csl_slider_obj->setPicture(csl_slider_icon);
delete csl_slider_obj;
csl_slider_obj = NULL;
}
} }
else
return;
//get first icon dimensions //get first icon dimensions
int slider_w = csl_slider_obj->getWidth(); int slider_w = csl_slider_obj->getWidth();