summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--helper.cpp10
-rw-r--r--pictureviewer2.cpp4
2 files changed, 10 insertions, 4 deletions
diff --git a/helper.cpp b/helper.cpp
index 9398a06..a32d137 100644
--- a/helper.cpp
+++ b/helper.cpp
@@ -321,15 +321,17 @@ namespace Helper {
QString newFn = data.at(0).toString();
newFn.replace(QRegularExpression("(jpg|jpeg)$", QRegularExpression::CaseInsensitiveOption), "png");
Magick::Image img;
- img.read(data.at(3).toByteArray().data());
+ try {
+ img.read(data.at(3).toByteArray().data());
+ }
+ catch(Magick::Exception &) {}
+
QTemporaryFile outFile("shemovconvertXXXXXX.png");
if(outFile.open()){
try {
img.write(outFile.fileName().toStdString());
}
- catch(Magick::Exception &) {
- return retval;
- }
+ catch(Magick::Exception &) {}
outFile.rename(newFn);
QString newMd5 = md5Sum(outFile.fileName());
QString dest = moveToArchive(outFile.fileName(), newMd5, true);
diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp
index e56f52a..1e49bdf 100644
--- a/pictureviewer2.cpp
+++ b/pictureviewer2.cpp
@@ -449,6 +449,10 @@ void PictureViewer2::showFile(const PicData &file){
if(pixmap.isNull()){
if(fi.canonicalFilePath().startsWith(mArchiveDir)){
mCurPicData = Helper::convertArchivefileToPng(file);
+ if(mCurPicData.isEmpty()){
+ //convert failed even though ignoring errors
+ return;
+ }
mFiles[mCurPos] = mCurPicData;
if(!mCurPicData.isEmpty()){
pixmap = QPixmap(mCurPicData.at(3).toString());