summaryrefslogtreecommitdiffstats
path: root/src/gui/styles/qmacstyle_mac.mm
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/styles/qmacstyle_mac.mm')
-rw-r--r--src/gui/styles/qmacstyle_mac.mm7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gui/styles/qmacstyle_mac.mm b/src/gui/styles/qmacstyle_mac.mm
index 8d6b593..b2923f6 100644
--- a/src/gui/styles/qmacstyle_mac.mm
+++ b/src/gui/styles/qmacstyle_mac.mm
@@ -1020,6 +1020,13 @@ HIRect QMacStylePrivate::pushButtonContentBounds(const QStyleOptionButton *btn,
HIRect contentBounds;
HIThemeGetButtonContentBounds(&outerBounds, bdi, &contentBounds);
+
+ // Return the button rect if the rect returned by HIThemeGetButtonContentBounds
+ // is invalid. This avoids passing around bad rects to code that does not expect it.
+ if (contentBounds.size.height == 0 && contentBounds.size.width == 0) {
+ return qt_hirectForQRect(btn->rect);
+ }
+
return contentBounds;
}