From 0dc74c8b08350a24ed1ced62286d24b3d6f8f743 Mon Sep 17 00:00:00 2001 From: Iru Cai Date: Sat, 6 Jun 2020 10:16:37 +0800 Subject: fix some memory leaks --- src/ui/imageviewer/imageviewer_origin.cpp | 34 +++++++++++++++---------------- 1 file changed, 16 insertions(+), 18 deletions(-) (limited to 'src/ui/imageviewer/imageviewer_origin.cpp') diff --git a/src/ui/imageviewer/imageviewer_origin.cpp b/src/ui/imageviewer/imageviewer_origin.cpp index 6e3ceae..7f0e88f 100644 --- a/src/ui/imageviewer/imageviewer_origin.cpp +++ b/src/ui/imageviewer/imageviewer_origin.cpp @@ -32,7 +32,6 @@ #include "fqterm_canvas.h" #include "fqterm_config.h" -#include "fqterm_exif_extractor.h" #include "fqterm_filedialog.h" #include "fqterm_path.h" #include "fqterm_trace.h" @@ -47,7 +46,7 @@ namespace FQTerm { if (!isHidden()) canvas_->hide(); - QString exifInfo = QString::fromStdString(exifExtractor_->extractExifInfo(model_->filePath(tree_->currentIndex()).toLocal8Bit().data())); + QString exifInfo = QString::fromStdString(exifExtractor_.extractExifInfo(model_->filePath(tree_->currentIndex()).toLocal8Bit().data())); bool resized = false; if (exifInfo != "") { @@ -96,7 +95,6 @@ namespace FQTerm { setWindowTitle(tr("FQTerm Image Viewer")); ItemDelegate* itemDelegate = new ItemDelegate; - exifExtractor_ = new ExifExtractor; exifTable_ = new ExifTable(this); exifTable_->setTextFormat(Qt::RichText); exifTable_->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred); @@ -237,23 +235,23 @@ namespace FQTerm { void FQTermImageOrigin::showFullExifInfo() { - QString exifInfo = QString::fromStdString(exifExtractor_->extractExifInfo(model_->filePath(tree_->currentIndex()).toLocal8Bit().data())); + QString exifInfo = QString::fromStdString(exifExtractor_.extractExifInfo(model_->filePath(tree_->currentIndex()).toLocal8Bit().data())); QString comment; - if ((*exifExtractor_)["UserComment"].length() > 8) { + if (exifExtractor_["UserComment"].length() > 8) { - QString commentEncoding = QString::fromStdString((*exifExtractor_)["UserComment"].substr(0, 8)); + QString commentEncoding = QString::fromStdString(exifExtractor_["UserComment"].substr(0, 8)); if (commentEncoding.startsWith("UNICODE")) { //UTF-16 QTextCodec* c = QTextCodec::codecForName("UTF-16"); - comment = c->toUnicode((*exifExtractor_)["UserComment"].substr(8).c_str()); + comment = c->toUnicode(exifExtractor_["UserComment"].substr(8).c_str()); } else if (commentEncoding.startsWith("JIS")) { //JIS X 0208 QTextCodec* c = QTextCodec::codecForName("JIS X 0208"); - comment = c->toUnicode((*exifExtractor_)["UserComment"].substr(8).c_str()); + comment = c->toUnicode(exifExtractor_["UserComment"].substr(8).c_str()); } else { - comment = QString::fromStdString((*exifExtractor_)["UserComment"].substr(8)); + comment = QString::fromStdString(exifExtractor_["UserComment"].substr(8)); } } @@ -294,17 +292,17 @@ namespace FQTerm { exifTable_->clear(); QString exifInfoToShow = "" + + tr("Model") + " : " + QString::fromStdString(exifExtractor_["Model"]) + "" + "" + + tr("ExposureTime") + " : " + QString::fromStdString(exifExtractor_["ExposureTime"]) + "" + ""; + + tr("FocalLength") + " : " + QString::fromStdString(exifExtractor_["FocalLength"]) + ""; exifTable_->setText(exifInfoToShow); if (!isHidden() && exifTable_->isHidden()) { -- cgit v1.2.3
" - + tr("Model") + " : " + QString::fromStdString((*exifExtractor_)["Model"]) + "" - + QString::fromStdString((*exifExtractor_)["DateTime"]) + "" - + QString::fromStdString((*exifExtractor_)["Flash"]) + "" + + QString::fromStdString(exifExtractor_["DateTime"]) + "" + + QString::fromStdString(exifExtractor_["Flash"]) + "
" - + tr("ExposureTime") + " : " + QString::fromStdString((*exifExtractor_)["ExposureTime"]) + "" - + tr("FNumber") + " : " + QString::fromStdString((*exifExtractor_)["FNumber"]) + "" - + tr("ISO") + " : " + QString::fromStdString((*exifExtractor_)["ISOSpeedRatings"]) + "" + + tr("FNumber") + " : " + QString::fromStdString(exifExtractor_["FNumber"]) + "" + + tr("ISO") + " : " + QString::fromStdString(exifExtractor_["ISOSpeedRatings"]) + "
" - + tr("FocalLength") + " : " + QString::fromStdString((*exifExtractor_)["FocalLength"]) + "" - + tr("MeteringMode") + " : " + QString::fromStdString((*exifExtractor_)["MeteringMode"]) + "" - + tr("ExposureBias") + " : " + QString::fromStdString((*exifExtractor_)["ExposureBiasValue"]) + "
" + + tr("MeteringMode") + " : " + QString::fromStdString(exifExtractor_["MeteringMode"]) + "" + + tr("ExposureBias") + " : " + QString::fromStdString(exifExtractor_["ExposureBiasValue"]) + "