diff options
Diffstat (limited to 'src/plugins/thumbnailqt_extractor.cc')
-rw-r--r-- | src/plugins/thumbnailqt_extractor.cc | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/src/plugins/thumbnailqt_extractor.cc b/src/plugins/thumbnailqt_extractor.cc index 313ebbc..61a2132 100644 --- a/src/plugins/thumbnailqt_extractor.cc +++ b/src/plugins/thumbnailqt_extractor.cc | |||
@@ -66,6 +66,7 @@ EXTRACTOR_thumbnailqt_extract (const char *data, | |||
66 | char format[64]; | 66 | char format[64]; |
67 | QImage::Format colors; | 67 | QImage::Format colors; |
68 | QtMsgHandler oh; | 68 | QtMsgHandler oh; |
69 | int ret; | ||
69 | 70 | ||
70 | oh = qInstallMsgHandler (&mh); | 71 | oh = qInstallMsgHandler (&mh); |
71 | /* Determine image format to use */ | 72 | /* Determine image format to use */ |
@@ -165,15 +166,21 @@ EXTRACTOR_thumbnailqt_extract (const char *data, | |||
165 | } | 166 | } |
166 | buffer.setBuffer(&bytes); | 167 | buffer.setBuffer(&bytes); |
167 | buffer.open(QIODevice::WriteOnly); | 168 | buffer.open(QIODevice::WriteOnly); |
168 | thumb.save(&buffer, "PNG"); | 169 | if (TRUE != thumb.save(&buffer, "PNG")) |
170 | { | ||
171 | qInstallMsgHandler (oh); | ||
172 | return 0; | ||
173 | } | ||
174 | buffer.close (); | ||
175 | ret = proc (proc_cls, | ||
176 | "thumbnailqt", | ||
177 | EXTRACTOR_METATYPE_THUMBNAIL, | ||
178 | EXTRACTOR_METAFORMAT_BINARY, | ||
179 | "image/png", | ||
180 | bytes.data(), | ||
181 | bytes.size()); | ||
169 | qInstallMsgHandler (oh); | 182 | qInstallMsgHandler (oh); |
170 | return proc (proc_cls, | 183 | return ret; |
171 | "thumbnailqt", | ||
172 | EXTRACTOR_METATYPE_THUMBNAIL, | ||
173 | EXTRACTOR_METAFORMAT_BINARY, | ||
174 | "image/png", | ||
175 | bytes.data(), | ||
176 | bytes.length()); | ||
177 | } | 184 | } |
178 | 185 | ||
179 | 186 | ||