diff options
author | Shane Kearns <shane.kearns@accenture.com> | 2010-05-10 15:45:05 (GMT) |
---|---|---|
committer | Shane Kearns <shane.kearns@accenture.com> | 2010-05-10 15:56:39 (GMT) |
commit | a21d6927e58a72ac5123d2479cbcc06bd764dfa4 (patch) | |
tree | b1304a415d70597f2fffb369cffc504b8b30b6a4 | |
parent | 48acfd970f5fab740fd16ecdc31656c56ec2356b (diff) | |
download | Qt-a21d6927e58a72ac5123d2479cbcc06bd764dfa4.zip Qt-a21d6927e58a72ac5123d2479cbcc06bd764dfa4.tar.gz Qt-a21d6927e58a72ac5123d2479cbcc06bd764dfa4.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
-rw-r--r-- | tests/benchmarks/gui/kernel/qwidget/tst_qwidget.cpp | 5 |
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() |