From ee4a443c8a4c702b4a2da645fffb4ad3b772dd37 Mon Sep 17 00:00:00 2001 From: Thilo Graf Date: Wed, 23 Nov 2016 10:33:58 +0100 Subject: [PATCH] CComponentsItem: fix possible negativ value for box radius If frame width > 0 and radius too small, we have an negative value. This should prevent this. --- src/gui/components/cc_item.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gui/components/cc_item.cpp b/src/gui/components/cc_item.cpp index 10147f6cf..d695cbdf1 100644 --- a/src/gui/components/cc_item.cpp +++ b/src/gui/components/cc_item.cpp @@ -86,7 +86,7 @@ void CComponentsItem::paintInit(bool do_save_bg) sw = max(0, sw); //set current needed corner main box radius - int box_rad = corner_rad; + int box_rad = corner_type ? corner_rad : 0; //and ensure max main box radius < dimensions if (2*box_rad > dy) @@ -186,7 +186,7 @@ void CComponentsItem::paintInit(bool do_save_bg) {sh_ctr, CC_FBDATA_TYPE_SHADOW_BOX, sh_ctr_x-sw, sh_ctr_y-sw+th, sh_cdx, sh_cdy-sh_cdy_size_offset+sw, col_shadow_clean, box_rad, corner_type & CORNER_TOP_RIGHT, 0, NULL, NULL, NULL, false}, //main box - {true, CC_FBDATA_TYPE_BOX, ix+th, iy+th, dx-2*th, dy-2*th, col_body, box_rad-th, corner_type, 0, NULL, NULL, NULL, false}, + {true, CC_FBDATA_TYPE_BOX, ix+th, iy+th, dx-2*th, dy-2*th, col_body, max(0,box_rad-th), corner_type, 0, NULL, NULL, NULL, false}, //frame {true, CC_FBDATA_TYPE_FRAME, ix, iy, dx, dy, col_frame_cur, box_rad, corner_type, th, NULL, NULL, NULL, false}