summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@theqtcompany.com>2014-12-16 00:57:43 +0100
committerMichal Klocek <michal.klocek@qt.io>2019-11-25 12:01:39 +0100
commit2f845dfe45e3d6adbb531952ef00507ddbe9f318 (patch)
tree39ab72e310c25260de3163153bae531e992e2d7d /examples
parent8d1e0d331b91cafa4e5f5b189e7dfee7ddb9b276 (diff)
Fix small memory leak, don't leak the QPdfDocument
Diffstat (limited to 'examples')
-rw-r--r--examples/widgets/pdfviewer/mainwindow.h2
-rw-r--r--examples/widgets/pdfviewer/pagerenderer.cpp10
-rw-r--r--examples/widgets/pdfviewer/pagerenderer.h3
3 files changed, 7 insertions, 8 deletions
diff --git a/examples/widgets/pdfviewer/mainwindow.h b/examples/widgets/pdfviewer/mainwindow.h
index 5d638ec33..d49fc50e8 100644
--- a/examples/widgets/pdfviewer/mainwindow.h
+++ b/examples/widgets/pdfviewer/mainwindow.h
@@ -11,7 +11,6 @@ class MainWindow;
}
class QLineEdit;
-class QPdfDocument;
class SequentialPageWidget;
class MainWindow : public QMainWindow
@@ -43,7 +42,6 @@ private slots:
private:
Ui::MainWindow *ui;
- QPdfDocument *m_doc;
SequentialPageWidget *m_pageWidget;
QLineEdit *m_zoomEdit;
QLineEdit *m_pageEdit;
diff --git a/examples/widgets/pdfviewer/pagerenderer.cpp b/examples/widgets/pdfviewer/pagerenderer.cpp
index 88316498e..fca4a0f1c 100644
--- a/examples/widgets/pdfviewer/pagerenderer.cpp
+++ b/examples/widgets/pdfviewer/pagerenderer.cpp
@@ -26,15 +26,15 @@ PageRenderer::~PageRenderer()
QVector<QSizeF> PageRenderer::openDocument(const QUrl &location)
{
if (location.isLocalFile())
- m_doc->load(location.toLocalFile());
+ m_doc.load(location.toLocalFile());
else {
qCWarning(lcExample, "non-local file loading is not implemented");
return QVector<QSizeF>();
}
// TODO maybe do in run() if it takes too long
QVector<QSizeF> pageSizes;
- for (int page = 0; page < m_doc->pageCount(); ++page)
- pageSizes.append(m_doc->pageSize(page));
+ for (int page = 0; page < m_doc.pageCount(); ++page)
+ pageSizes.append(m_doc.pageSize(page));
return pageSizes;
}
@@ -53,9 +53,9 @@ void PageRenderer::run()
void PageRenderer::renderPage(int page, qreal zoom)
{
- QSizeF size = m_doc->pageSize(page) * m_zoom;
+ QSizeF size = m_doc.pageSize(page) * m_zoom;
QElapsedTimer timer; timer.start();
- const QImage &img = m_doc->render(page, size);
+ const QImage &img = m_doc.render(page, size);
qreal secs = timer.nsecsElapsed() / 1000000000.0;
if (secs < m_minRenderTime)
m_minRenderTime = secs;
diff --git a/examples/widgets/pdfviewer/pagerenderer.h b/examples/widgets/pdfviewer/pagerenderer.h
index f121b6aa8..7b11e9bed 100644
--- a/examples/widgets/pdfviewer/pagerenderer.h
+++ b/examples/widgets/pdfviewer/pagerenderer.h
@@ -6,6 +6,7 @@
#include <QPixmap>
#include <QRunnable>
#include <QThread>
+#include <QPdfDocument>
class QPdfDocument;
@@ -30,7 +31,7 @@ private:
void renderPage(int page, qreal zoom);
private:
- QPdfDocument *m_doc;
+ QPdfDocument m_doc;
// current request only
int m_page;