summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks
diff options
context:
space:
mode:
authorShane Kearns <shane.kearns@accenture.com>2010-05-10 15:45:05 (GMT)
committerLiang Qi <liang.qi@nokia.com>2010-07-15 09:23:32 (GMT)
commitd52e3d553664f0fe9a5313908eeb10104f539249 (patch)
treed941c19194a8a43cfa1b1064a4bea90364068220 /tests/benchmarks
parent6d29bcc28c4ee9b7583a62d23a931b9389004966 (diff)
downloadQt-d52e3d553664f0fe9a5313908eeb10104f539249.zip
Qt-d52e3d553664f0fe9a5313908eeb10104f539249.tar.gz
Qt-d52e3d553664f0fe9a5313908eeb10104f539249.tar.bz2
Remove test cases which cause stack overflow
These test cases are not considered reasonable for a small screen device (625 widgets). Patching the QWidget code to use iteration rather than recursion is considered too risky, as the code is performance critical. Task-number: QTBUG-8512 Reviewed-by: Bjoern Erik Nilsen
Diffstat (limited to 'tests/benchmarks')
-rw-r--r--tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp b/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp
index 8c30be4..7015bd1 100644
--- a/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp
+++ b/tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp
@@ -159,12 +159,17 @@ void tst_QWidget::update_data()
QTest::newRow("10x10x1 opaque") << 10 << 10 << 1 << true;
QTest::newRow("10x10x10 opaque") << 10 << 10 << 10 << true;
QTest::newRow("10x10x100 opaque") << 10 << 10 << 100 << true;
+#ifndef Q_OS_SYMBIAN
+ //These test cases cause stack overflow in QWidgetPrivate::paintSiblingsRecursive
+ //see http://bugreports.qt.nokia.com/browse/QTBUG-8512
+ //Symbian threads have a hard limit of 80kB user stack
QTest::newRow("25x25x1 transparent ") << 25 << 25 << 1 << false;
QTest::newRow("25x25x10 transparent") << 25 << 25 << 10 << false;
QTest::newRow("25x25x100 transparent") << 25 << 25 << 100 << false;
QTest::newRow("25x25x1 opaque") << 25 << 25 << 1 << true;
QTest::newRow("25x25x10 opaque") << 25 << 25 << 10 << true;
QTest::newRow("25x25x100 opaque") << 25 << 25 << 100 << true;
+#endif
}
void tst_QWidget::update()