diff options
author | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2023-06-09 17:08:51 +0300 |
---|---|---|
committer | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2023-06-09 17:08:51 +0300 |
commit | 6a1af670d52492ab0955933b830026b2a18ed6d6 (patch) | |
tree | 14e423ab81da7312ac0f800aaa6afce7e23abc20 /tests | |
parent | e57b0df609d744c3ddb2d3f23926a7922e661cb6 (diff) | |
parent | 8fb9a4fdcb05984bb6e9e532e4462aa7bfbeb62e (diff) |
Merge remote-tracking branch 'origin/tqtc/lts-5.15.11' into tqtc/lts-5.15-opensourcev5.15.11-lts-lgpl
Change-Id: I1ef7b4328096b0adb6abc46471100b5779504d05
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/icns/tst_qicns.cpp | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/tests/auto/icns/tst_qicns.cpp b/tests/auto/icns/tst_qicns.cpp index a9e8016..99f0cf5 100644 --- a/tests/auto/icns/tst_qicns.cpp +++ b/tests/auto/icns/tst_qicns.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2022 The Qt Company Ltd. ** Copyright (C) 2016 Alex Char. ** Contact: https://www.qt.io/licensing/ ** @@ -40,6 +40,8 @@ private slots: void readIcons(); void writeIcons_data(); void writeIcons(); + void ossFuzz_data(); + void ossFuzz(); }; void tst_qicns::initTestCase() @@ -120,5 +122,25 @@ void tst_qicns::writeIcons() QVERIFY(image == QImage(distPath)); } +void tst_qicns::ossFuzz_data() +{ + QTest::addColumn<QByteArray>("data"); + QTest::addColumn<QByteArrayList>("ignoredMessages"); + QTest::newRow("47415") << QByteArray::fromRawData("icns\0\0\0\0", 8) + << QByteArrayList({"QICNSHandler::scanDevice(): Failed, bad header at " + "pos 8. OSType \"icns\", length 0", + "QICNSHandler::read(): The device wasn't parsed " + "properly!"}); +} + +void tst_qicns::ossFuzz() +{ + QFETCH(QByteArray, data); + QFETCH(QByteArrayList, ignoredMessages); + for (auto msg: ignoredMessages) + QTest::ignoreMessage(QtWarningMsg, msg.data()); + QImage().loadFromData(data); +} + QTEST_MAIN(tst_qicns) #include "tst_qicns.moc" |