~bfiller/gallery-app/fix-silo-46

« back to all changes in this revision

Viewing changes to src/media-object-factory.cpp

mergeĀ lp:~artmello/gallery-app/gallery-app-handle_svg_files

Show diffs side-by-side

added added

removed removed

Lines of Context:
210
210
    media->setMediaTable(m_mediaTable);
211
211
 
212
212
    if (id == INVALID_ID) {
213
 
        bool metadataOk;
214
213
        if (mediaType == MediaSource::Photo) {
215
 
            metadataOk = readPhotoMetadata(photo->file());
 
214
            readPhotoMetadata(photo->file());
216
215
        } else {
217
 
            metadataOk = readVideoMetadata(file);
218
 
        }
219
 
 
220
 
        if (!metadataOk) {
221
 
            delete media;
222
 
            return;
 
216
            if (!readVideoMetadata(file)) {
 
217
                delete media;
 
218
                return;
 
219
            }
223
220
        }
224
221
 
225
222
        // This will cause the real size to be read from the file
288
285
bool MediaObjectFactoryWorker::readPhotoMetadata(const QFileInfo &file)
289
286
{
290
287
    PhotoMetadata* metadata = PhotoMetadata::fromFile(file);
291
 
    if (metadata == 0)
292
 
        return false;
293
288
 
294
289
    m_timeStamp = file.lastModified();
295
 
    m_orientation = metadata->orientation();
296
290
    m_fileSize = file.size();
297
 
    m_exposureTime = metadata->exposureTime().isValid() ?
298
 
                QDateTime(metadata->exposureTime()) : m_timeStamp;
299
291
    m_size = QSize();
300
292
 
 
293
    if (metadata != 0 && metadata->exposureTime().isValid()) {
 
294
        m_exposureTime = QDateTime(metadata->exposureTime());
 
295
    } else {
 
296
        m_exposureTime = m_timeStamp;
 
297
    }
 
298
 
 
299
    if (metadata != 0) {
 
300
        m_orientation = metadata->orientation();
 
301
    } else {
 
302
        m_orientation = TOP_LEFT_ORIGIN;
 
303
    }
 
304
 
 
305
    if (metadata == 0) {
 
306
        return false;
 
307
    }
 
308
 
301
309
    delete metadata;
302
310
    return true;
303
311
}