qt5/src/poppler-annotation.cc | 20 ++++++++++++++------ qt5/tests/check_search.cpp | 38 +++++++++++++++++++------------------- qt5/tests/stress-threads-qt5.cpp | 10 +++++----- utils/pdfseparate.cc | 3 ++- 4 files changed, 40 insertions(+), 31 deletions(-)
New commits: commit e25d4af6ed9b254db3096a2e483798734296376d Author: Adam Reichold <[email protected]> Date: Sun Feb 18 09:43:58 2018 +0100 Fix warnings due to unhandled link types in XML serialization of annotations code in the Qt5 frontend. diff --git a/qt5/src/poppler-annotation.cc b/qt5/src/poppler-annotation.cc index fffc8b09..42f2e9fe 100644 --- a/qt5/src/poppler-annotation.cc +++ b/qt5/src/poppler-annotation.cc @@ -4,6 +4,7 @@ * Copyright (C) 2012, Guillermo A. Amaral B. <[email protected]> * Copyright (C) 2012-2014 Fabio D'Urso <[email protected]> * Copyright (C) 2012, 2015, Tobias Koenig <[email protected]> + * Copyright (C) 2018 Adam Reichold <[email protected]> * Adapting code from * Copyright (C) 2004 by Enrico Ros <[email protected]> * @@ -3799,13 +3800,10 @@ LinkAnnotation::LinkAnnotation( const QDomNode & node ) setLinkDestination(action); } } -#if 0 - else if ( type == "Movie" ) + else { - Poppler::LinkMovie * movie = new Poppler::LinkMovie( QRect() ); - setLinkDestination(movie); + qWarning("Loading annotations of type %s from DOM nodes is not yet implemented.", type.toLocal8Bit().constData()); } -#endif } } @@ -3934,7 +3932,17 @@ void LinkAnnotation::store( QDomNode & node, QDomDocument & document ) const } case Poppler::Link::Sound: { - // FIXME: implement me + hyperlinkElement.setAttribute( QStringLiteral("type"), QStringLiteral("Sound") ); + break; + } + case Poppler::Link::JavaScript: + { + hyperlinkElement.setAttribute( QStringLiteral("type"), QStringLiteral("JavaScript") ); + break; + } + case Poppler::Link::OCGState: + { + hyperlinkElement.setAttribute( QStringLiteral("type"), QStringLiteral("OCGState") ); break; } case Poppler::Link::None: commit e015ab97c1ee3a4ea386ccc86385aad458827d96 Author: Adam Reichold <[email protected]> Date: Sun Feb 18 09:42:58 2018 +0100 Fix warnings due to the use of deprecated overloads of Poppler::Page::Search in tests of Qt5 frontend. diff --git a/qt5/tests/check_search.cpp b/qt5/tests/check_search.cpp index d83bc3a8..4c834018 100644 --- a/qt5/tests/check_search.cpp +++ b/qt5/tests/check_search.cpp @@ -21,19 +21,19 @@ void TestSearch::bug7063() double rectLeft = 0.0, rectTop = 0.0, rectRight = page->pageSizeF().width(), rectBottom = page->pageSizeF().height(); - QCOMPARE( page->search(QString("non-ascii:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("non-ascii:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); - QCOMPARE( page->search(QString("Ascii"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false ); - QCOMPARE( page->search(QString("Ascii"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseInsensitive), true ); + QCOMPARE( page->search(QString("Ascii"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), false ); + QCOMPARE( page->search(QString("Ascii"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::IgnoreCase), true ); - QCOMPARE( page->search(QString("latin1:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false ); + QCOMPARE( page->search(QString("latin1:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), false ); - QCOMPARE( page->search(QString::fromUtf8("é"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); - QCOMPARE( page->search(QString::fromUtf8("à"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); - QCOMPARE( page->search(QString::fromUtf8("ç"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); - QCOMPARE( page->search(QString::fromUtf8("search \"é\", \"à\" or \"ç\""), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); - QCOMPARE( page->search(QString::fromUtf8("¥µ©"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); - QCOMPARE( page->search(QString::fromUtf8("¥©"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false ); + QCOMPARE( page->search(QString::fromUtf8("é"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); + QCOMPARE( page->search(QString::fromUtf8("à"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); + QCOMPARE( page->search(QString::fromUtf8("ç"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); + QCOMPARE( page->search(QString::fromUtf8("search \"é\", \"à\" or \"ç\""), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); + QCOMPARE( page->search(QString::fromUtf8("¥µ©"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); + QCOMPARE( page->search(QString::fromUtf8("¥©"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), false ); QCOMPARE( page->search(QString("non-ascii:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); @@ -60,43 +60,43 @@ void TestSearch::testNextAndPrevious() double rectLeft = 0.0, rectTop = 0.0, rectRight = page->pageSizeF().width(), rectBottom = page->pageSizeF().height(); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true ); QVERIFY( qAbs(rectLeft - 161.44) < 0.01 ); QVERIFY( qAbs(rectTop - 127.85) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), true ); QVERIFY( qAbs(rectLeft - 171.46) < 0.01 ); QVERIFY( qAbs(rectTop - 127.85) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), true ); QVERIFY( qAbs(rectLeft - 161.44) < 0.01 ); QVERIFY( qAbs(rectTop - 139.81) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), true ); QVERIFY( qAbs(rectLeft - 171.46) < 0.01 ); QVERIFY( qAbs(rectTop - 139.81) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), false ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), false ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), true ); QVERIFY( qAbs(rectLeft - 161.44) < 0.01 ); QVERIFY( qAbs(rectTop - 139.81) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), true ); QVERIFY( qAbs(rectLeft - 171.46) < 0.01 ); QVERIFY( qAbs(rectTop - 127.85) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), true ); QVERIFY( qAbs(rectLeft - 161.44) < 0.01 ); QVERIFY( qAbs(rectTop - 127.85) < 0.01 ); QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 ); QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 ); - QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), false ); + QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), false ); rectLeft = 0.0, rectTop = 0.0, rectRight = page->pageSizeF().width(), rectBottom = page->pageSizeF().height(); diff --git a/qt5/tests/stress-threads-qt5.cpp b/qt5/tests/stress-threads-qt5.cpp index 1e1095a1..d1cc5955 100644 --- a/qt5/tests/stress-threads-qt5.cpp +++ b/qt5/tests/stress-threads-qt5.cpp @@ -114,11 +114,11 @@ void CrazyThread::run() PagePointer page(loadRandomPage(m_document)); - page->search("c", Poppler::Page::CaseInsensitive); - page->search("r", Poppler::Page::CaseSensitive); - page->search("a", Poppler::Page::CaseInsensitive); - page->search("z", Poppler::Page::CaseSensitive); - page->search("y", Poppler::Page::CaseInsensitive); + page->search("c", Poppler::Page::IgnoreCase); + page->search("r"); + page->search("a", Poppler::Page::IgnoreCase); + page->search("z"); + page->search("y", Poppler::Page::IgnoreCase); } if(qrand() % 2 == 0) commit 732903ecf1bdb085cac36eb29d330a7970670064 Author: Adam Reichold <[email protected]> Date: Sun Feb 18 09:42:04 2018 +0100 Fix buffer size warning due to missing space for null terminator in pdfseparate. diff --git a/utils/pdfseparate.cc b/utils/pdfseparate.cc index bfcd0748..4751158a 100644 --- a/utils/pdfseparate.cc +++ b/utils/pdfseparate.cc @@ -11,6 +11,7 @@ // Copyright (C) 2013 Suzuki Toshiya <[email protected]> // Copyright (C) 2017 Léonard Michelet <[email protected]> // Copyright (C) 2017 Adrian Johnson <[email protected]> +// Copyright (C) 2018 Adam Reichold <[email protected]> // //======================================================================== #include "config.h" @@ -88,7 +89,7 @@ static bool extractPages (const char *srcFileName, const char *destFileName) { foundmatch = true; *p = 'A'; } else { - char pattern[5]; + char pattern[6]; for (int i = 2; i < 10; i++) { sprintf(pattern, "%%0%dd", i); p = strstr(auxDestFileName, pattern); _______________________________________________ poppler mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/poppler
