mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-29 00:11:14 +02:00
avoid division by zero and fix segfault
This commit is contained in:
@@ -431,7 +431,7 @@ bool CCDraw::CheckFbData(const cc_fbdata_t& fbdata, const char* func, const int
|
||||
//screen area save
|
||||
fb_pixel_t* CCDraw::getScreen(int ax, int ay, int dx, int dy)
|
||||
{
|
||||
if (dx * dy == 0)
|
||||
if (dx < 1 || dy < 1 || dx * dy == 0)
|
||||
return NULL;
|
||||
|
||||
dprintf(DEBUG_INFO, "[CCDraw] INFO! [%s - %d], ax = %d, ay = %d, dx = %d, dy = %d\n", __func__, __LINE__, ax, ay, dx, dy);
|
||||
|
@@ -216,7 +216,7 @@ void CComponentsPicture::initCCItem()
|
||||
* by setters setWidth/setHeight
|
||||
* these steps are required to assign the current image dimensions to item dimensions
|
||||
*/
|
||||
if (keep_dx_aspect){
|
||||
if (keep_dx_aspect && dy){
|
||||
float h_ratio = float(height)*100/(float)dy;
|
||||
width = int(h_ratio*(float)dx/100);
|
||||
#ifdef BOXMODEL_APOLLO
|
||||
@@ -224,7 +224,7 @@ void CComponentsPicture::initCCItem()
|
||||
width = GetWidth4FB_HW_ACC(x+fr_thickness, width-2*fr_thickness)+2*fr_thickness;
|
||||
#endif
|
||||
}
|
||||
if (keep_dy_aspect){
|
||||
if (keep_dy_aspect & dx){
|
||||
float w_ratio = float(width)*100/(float)dx;
|
||||
height = int(w_ratio*(float)dy/100);
|
||||
}
|
||||
|
Reference in New Issue
Block a user