Detect memory leaks

This commit is contained in:
Jakub Melka 2022-01-30 18:23:25 +01:00
parent 22c40b227c
commit 284f0c4db8
89 changed files with 227 additions and 85 deletions

View File

@ -119,6 +119,7 @@ HEADERS += \
sources/pdfccittfaxdecoder.h \
sources/pdfcms.h \
sources/pdfcompiler.h \
sources/pdfdbgheap.h \
sources/pdfdiff.h \
sources/pdfdocumentbuilder.h \
sources/pdfdocumentdrawinterface.h \

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfdocument.h"
#include "pdfexception.h"
#include "pdfencoding.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfdrawwidget.h"
#include "pdfutils.h"
#include "pdfcompiler.h"
#include "pdfdbgheap.h"
#include <QActionGroup>
#include <QInputDialog>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfalgorithmlcs.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -30,6 +30,7 @@
#include "pdfdocumentbuilder.h"
#include "pdfobjecteditorwidget.h"
#include "pdfselectpagesdialog.h"
#include "pdfdbgheap.h"
#include <QMenu>
#include <QDialog>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfblendfunction.h"
#include "pdfdbgheap.h"
#include <algorithm>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfnumbertreeloader.h"
#include "pdfnametreeloader.h"
#include "pdfencoding.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfccittfaxdecoder.h"
#include "pdfexception.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfcms.h"
#include "pdfdocument.h"
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QApplication>
#include <QReadWriteLock>
@ -1388,6 +1389,11 @@ PDFCMSManager::PDFCMSManager(QObject* parent) :
}
void PDFCMSManager::finalize()
{
cmsUnregisterPlugins();
}
PDFCMSPointer PDFCMSManager::getCurrentCMS() const
{
QMutexLocker lock(&m_mutex);

View File

@ -347,6 +347,11 @@ private:
public:
explicit PDFCMSManager(QObject* parent);
/// Finalizes cms manager. Call this function
/// only at program exit. Frees all allocated
/// resources. Function is not thread-safe.
static void finalize();
/// Returns current CMS. This function possibly creates CMS,
/// of no CMS is found.
PDFCMSPointer getCurrentCMS() const;

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -23,6 +23,7 @@
#include "pdfpattern.h"
#include "pdfcms.h"
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QCryptographicHash>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfdrawspacecontroller.h"
#include "pdfprogress.h"
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QtConcurrent/QtConcurrent>

View File

@ -0,0 +1,38 @@
// Copyright (C) 2022 Jakub Melka
//
// This file is part of PDF4QT.
//
// PDF4QT is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// with the written consent of the copyright owner, any later version.
//
// PDF4QT is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#ifndef PDFDBGHEAP_H
#define PDFDBGHEAP_H
#include "pdfglobal.h"
#if defined(PDF4QT_USE_DBG_HEAP)
#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#define new DBG_NEW
#ifdef _DEBUG
#define DBG_NEW new ( _NORMAL_BLOCK , __FILE__ , __LINE__ )
#else
#define DBG_NEW new
#endif
#endif
#endif // PDFDBGHEAP_H

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -24,6 +24,7 @@
#include "pdfcompiler.h"
#include "pdfconstants.h"
#include "pdfalgorithmlcs.h"
#include "pdfdbgheap.h"
#include <QtConcurrent/QtConcurrent>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfexception.h"
#include "pdfstreamfilters.h"
#include "pdfconstants.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfdocumentreader.h"
#include "pdfobjectutils.h"
#include "pdfnametreeloader.h"
#include "pdfdbgheap.h"
#include <QBuffer>
#include <QPainter>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfdocumentmanipulator.h"
#include "pdfdocumentbuilder.h"
#include "pdfoptimizer.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -23,6 +23,7 @@
#include "pdfparser.h"
#include "pdfstreamfilters.h"
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QFile>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfexecutionpolicy.h"
#include "pdfconstants.h"
#include "pdfcms.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfdocumenttextfloweditormodel.h"
#include "pdfdocumenttextflow.h"
#include "pdfdbgheap.h"
#include <QColor>
#include <QBrush>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfconstants.h"
#include "pdfvisitor.h"
#include "pdfparser.h"
#include "pdfdbgheap.h"
#include <QFile>
#include <QSaveFile>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -24,6 +24,7 @@
#include "pdfconstants.h"
#include "pdfcms.h"
#include "pdfannotation.h"
#include "pdfdbgheap.h"
#include <QPainter>
#include <QFontMetrics>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfwidgettool.h"
#include "pdfannotation.h"
#include "pdfform.h"
#include "pdfdbgheap.h"
#include <QPainter>
#include <QGridLayout>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfencoding.h"
#include "pdfdbgheap.h"
#include <QTimeZone>
#include <QTextCodec>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QThread>
#include <QApplication>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdffile.h"
#include "pdfdocument.h"
#include "pdfencoding.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfnametounicode.h"
#include "pdfexception.h"
#include "pdfutils.h"
#include "pdfdbgheap.h"
#include <ft2build.h>
#include <freetype/freetype.h>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfdrawwidget.h"
#include "pdfdocumentbuilder.h"
#include "pdfpainterutils.h"
#include "pdfdbgheap.h"
#include <QKeyEvent>
#include <QMouseEvent>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfdocument.h"
#include "pdfexception.h"
#include "pdfutils.h"
#include "pdfdbgheap.h"
#include <stack>
#include <iterator>

View File

@ -52,6 +52,10 @@
#define PDF4QT_USE_PRAGMA_LIB 1
#endif
#if defined(Q_OS_WIN) && defined(PDF4QT_COMPILER_MSVC) && !defined(NDEBUG)
#define PDF4QT_USE_DBG_HEAP
#endif
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdficontheme.h"
#include "pdfdbgheap.h"
#include <QApplication>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfutils.h"
#include "pdfjbig2decoder.h"
#include "pdfccittfaxdecoder.h"
#include "pdfdbgheap.h"
#include <openjpeg.h>
#include <jpeglib.h>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfitemmodels.h"
#include "pdfdocument.h"
#include "pdfdrawspacecontroller.h"
#include "pdfdbgheap.h"
#include <QFont>
#include <QStyle>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfjavascriptscanner.h"
#include "pdfaction.h"
#include "pdfform.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfjbig2decoder.h"
#include "pdfexception.h"
#include "pdfccittfaxdecoder.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfmultimedia.h"
#include "pdfdocument.h"
#include "pdfnametreeloader.h"
#include "pdfdbgheap.h"
#include <QtEndian>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfnametounicode.h"
#include "pdfdbgheap.h"
#include <array>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfobject.h"
#include "pdfvisitor.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfobjecteditormodel.h"
#include "pdfdocumentbuilder.h"
#include "pdfblendfunction.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfdocumentbuilder.h"
#include "pdfencoding.h"
#include "pdfwidgetutils.h"
#include "pdfdbgheap.h"
#include <QTabWidget>
#include <QVBoxLayout>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfvisitor.h"
#include "pdfexecutionpolicy.h"
#include "pdfdocumentwriter.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -23,6 +23,7 @@
#include "pdfconstants.h"
#include "pdfdocumentbuilder.h"
#include "pdfstreamfilters.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfoptionalcontent.h"
#include "pdfdocument.h"
#include "pdfexception.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfdocument.h"
#include "pdfexception.h"
#include "pdfencoding.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfdocument.h"
#include "pdfexception.h"
#include "pdfencoding.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfpattern.h"
#include "pdfexecutionpolicy.h"
#include "pdfstreamfilters.h"
#include "pdfdbgheap.h"
#include <QPainterPathStroker>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfpagenavigation.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfpagetransition.h"
#include "pdfdocument.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfpainter.h"
#include "pdfpattern.h"
#include "pdfcms.h"
#include "pdfdbgheap.h"
#include <QPainter>
#include <QCryptographicHash>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfpainterutils.h"
#include "pdfdbgheap.h"
#include <QFontMetrics>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfparser.h"
#include "pdfconstants.h"
#include "pdfexception.h"
#include "pdfdbgheap.h"
#include <QFile>
#include <QThread>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfcolorspaces.h"
#include "pdfexecutionpolicy.h"
#include "pdfconstants.h"
#include "pdfdbgheap.h"
#include <QPainter>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfplugin.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfprogress.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfpainter.h"
#include "pdfdocumentbuilder.h"
#include "pdfoptimizer.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfexecutionpolicy.h"
#include "pdfprogress.h"
#include "pdfannotation.h"
#include "pdfdbgheap.h"
#include <QDir>
#include <QElapsedTimer>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfrenderingerrorswidget.h"
#include "pdfdrawwidget.h"
#include "pdfdbgheap.h"
#include "ui_pdfrenderingerrorswidget.h"
#include "pdfwidgetutils.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfvisitor.h"
#include "pdfutils.h"
#include "pdfdocumentbuilder.h"
#include "pdfdbgheap.h"
#include <QRandomGenerator>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfselectpagesdialog.h"
#include "pdfdbgheap.h"
#include "ui_pdfselectpagesdialog.h"
#include "pdfwidgetutils.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfencoding.h"
#include "pdfform.h"
#include "pdfutils.h"
#include "pdfdbgheap.h"
#include "pdfsignaturehandler_impl.h"
#include <openssl/err.h>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfcompiler.h"
#include "pdfwidgetutils.h"
#include "pdfdrawspacecontroller.h"
#include "pdfdbgheap.h"
#include <QPainter>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfparser.h"
#include "pdfsecurityhandler.h"
#include "pdfutils.h"
#include "pdfdbgheap.h"
#include <zlib.h>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -23,6 +23,7 @@
#include "pdfcms.h"
#include "pdfexecutionpolicy.h"
#include "pdfconstants.h"
#include "pdfdbgheap.h"
#include <array>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdftextlayout.h"
#include "pdfutils.h"
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QPainter>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfexecutionpolicy.h"
#include "pdfimage.h"
#include "pdfpattern.h"
#include "pdfdbgheap.h"
#include <iterator>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfutils.h"
#include "pdfexception.h"
#include "pdfdbgheap.h"
#include <QtGlobal>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfvisitor.h"
#include "pdfdbgheap.h"
namespace pdf
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfdrawwidget.h"
#include "pdfcompiler.h"
#include "pdfwidgetutils.h"
#include "pdfdbgheap.h"
#include <QLabel>
#include <QAction>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfwidgetutils.h"
#include "pdfdbgheap.h"
#include <QDialog>
#include <QLayout>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -19,6 +19,7 @@
#include "pdfform.h"
#include "pdfpainterutils.h"
#include "pdffont.h"
#include "pdfdbgheap.h"
#include <QDomElement>
#include <QDomDocument>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2018-2021 Jakub Melka
// Copyright (C) 2018-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfexception.h"
#include "pdfparser.h"
#include "pdfstreamfilters.h"
#include "pdfdbgheap.h"
#include <stack>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfaboutdialog.h"
#include "pdfdbgheap.h"
#include "ui_pdfaboutdialog.h"
#include "pdfutils.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfadvancedfindwidget.h"
#include "pdfdbgheap.h"
#include "ui_pdfadvancedfindwidget.h"
#include "pdfcompiler.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -24,6 +24,7 @@
#include "pdfutils.h"
#include "pdfexception.h"
#include "pdfexecutionpolicy.h"
#include "pdfdbgheap.h"
#include <QLocale>
#include <QPageSize>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -21,6 +21,7 @@
#include "pdfutils.h"
#include "pdfwidgetutils.h"
#include "pdfsecurityhandler.h"
#include "pdfdbgheap.h"
#include <QMessageBox>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -18,6 +18,7 @@
#include "pdfencryptionstrengthhintwidget.h"
#include "pdfwidgetutils.h"
#include "pdfutils.h"
#include "pdfdbgheap.h"
#include <QPainter>
#include <QFontMetrics>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2021 Jakub Melka
// Copyright (C) 2021-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfwidgetutils.h"
#include "pdfdocumentwriter.h"
#include "pdfdbgheap.h"
#include <QCheckBox>
#include <QPushButton>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -25,6 +25,7 @@
#include "pdfwidgetutils.h"
#include "pdfconstants.h"
#include "pdfdocumentbuilder.h"
#include "pdfdbgheap.h"
#include "pdfviewersettings.h"
#include "pdfundoredomanager.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfrecentfilemanager.h"
#include "pdfdbgheap.h"
namespace pdfviewer
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfwidgetutils.h"
#include "pdfoptionalcontent.h"
#include "pdfdrawspacecontroller.h"
#include "pdfdbgheap.h"
#include <QFileDialog>
#include <QMessageBox>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfsendmail.h"
#include "pdfdbgheap.h"
#include <QDir>
#include <QWidget>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfwidgetutils.h"
#include "pdftexttospeech.h"
#include "pdfdbgheap.h"
#include "pdfdocument.h"
#include "pdfitemmodels.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -20,6 +20,7 @@
#include "pdfdrawspacecontroller.h"
#include "pdfcompiler.h"
#include "pdfdrawwidget.h"
#include "pdfdbgheap.h"
#include <QLabel>
#include <QAction>
@ -101,7 +102,7 @@ void PDFTextToSpeech::setSettings(const PDFViewerSettings* viewerSettings)
const PDFViewerSettings::Settings& settings = viewerSettings->getSettings();
if (!settings.m_speechEngine.isEmpty())
{
m_textToSpeech = new QTextToSpeech(settings.m_speechEngine);
m_textToSpeech = new QTextToSpeech(settings.m_speechEngine, this);
connect(m_textToSpeech, &QTextToSpeech::stateChanged, this, &PDFTextToSpeech::updatePlay);
m_state = m_document ? Ready : NoDocument;

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -16,6 +16,7 @@
// along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
#include "pdfundoredomanager.h"
#include "pdfdbgheap.h"
namespace pdfviewer
{

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -25,6 +25,7 @@
#include "pdfdocumentpropertiesdialog.h"
#include "pdfrendertoimagesdialog.h"
#include "pdfoptimizedocumentdialog.h"
#include "pdfdbgheap.h"
#include "pdfdocumentreader.h"
#include "pdfvisitor.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2020-2021 Jakub Melka
// Copyright (C) 2020-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -25,6 +25,7 @@
#include "pdfdocumentpropertiesdialog.h"
#include "pdfrendertoimagesdialog.h"
#include "pdfoptimizedocumentdialog.h"
#include "pdfdbgheap.h"
#include "pdfdocumentreader.h"
#include "pdfvisitor.h"

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -17,6 +17,7 @@
#include "pdfviewersettings.h"
#include "pdfconstants.h"
#include "pdfdbgheap.h"
#include <QPixmapCache>

View File

@ -1,4 +1,4 @@
// Copyright (C) 2019-2021 Jakub Melka
// Copyright (C) 2019-2022 Jakub Melka
//
// This file is part of PDF4QT.
//
@ -22,6 +22,7 @@
#include "pdfutils.h"
#include "pdfwidgetutils.h"
#include "pdfrecentfilemanager.h"
#include "pdfdbgheap.h"
#include <QAction>
#include <QLineEdit>

View File

@ -17,12 +17,17 @@
#include "pdfviewermainwindow.h"
#include "pdfconstants.h"
#include "pdfdbgheap.h"
#include <QApplication>
#include <QCommandLineParser>
int main(int argc, char *argv[])
{
#if defined(PDF4QT_USE_DBG_HEAP)
_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
#endif
QApplication::setAttribute(Qt::AA_CompressHighFrequencyEvents, true);
QApplication::setAttribute(Qt::AA_DisableHighDpiScaling, true);
QApplication::setAttribute(Qt::AA_DontCheckOpenGLContextThreadAffinity, true);