Hello community,

here is the log from the commit of package kfilemetadata5 for openSUSE:Factory 
checked in at 2016-10-28 12:19:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kfilemetadata5 (Old)
 and      /work/SRC/openSUSE:Factory/.kfilemetadata5.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kfilemetadata5"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kfilemetadata5/kfilemetadata5.changes    
2016-09-14 23:23:05.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kfilemetadata5.new/kfilemetadata5.changes       
2016-10-28 12:19:21.000000000 +0200
@@ -1,0 +2,10 @@
+Sun Oct  2 12:54:25 UTC 2016 - [email protected]
+
+- Update to 5.27.0
+  * Improve epub extractor, less segfaults (kde#361727)
+  * Make odf indexer more error prove, check if the files are there
+    (and are files at all) (meta.xml + content.xml)
+  * For more details please see:
+    https://www.kde.org/announcements/kde-frameworks-5.27.0.php
+
+-------------------------------------------------------------------

Old:
----
  kfilemetadata-5.26.0.tar.xz

New:
----
  kfilemetadata-5.27.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kfilemetadata5.spec ++++++
--- /var/tmp/diff_new_pack.CSi0ja/_old  2016-10-28 12:19:22.000000000 +0200
+++ /var/tmp/diff_new_pack.CSi0ja/_new  2016-10-28 12:19:22.000000000 +0200
@@ -18,9 +18,9 @@
 
 %bcond_without ffmpeg
 %bcond_without lang
-%define _tar_path 5.26
+%define _tar_path 5.27
 Name:           kfilemetadata5
-Version:        5.26.0
+Version:        5.27.0
 Release:        0
 %define kf5_version %{version}
 Summary:        Extract Metadata

++++++ kfilemetadata-5.26.0.tar.xz -> kfilemetadata-5.27.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/CMakeLists.txt 
new/kfilemetadata-5.27.0/CMakeLists.txt
--- old/kfilemetadata-5.26.0/CMakeLists.txt     2016-09-06 14:03:15.000000000 
+0200
+++ new/kfilemetadata-5.27.0/CMakeLists.txt     2016-10-02 11:50:26.000000000 
+0200
@@ -3,7 +3,7 @@
 project(kfilemetadata)
 
 include(FeatureSummary)
-find_package(ECM 5.26.0  NO_MODULE)
+find_package(ECM 5.27.0  NO_MODULE)
 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake 
Modules." URL 
"https://projects.kde.org/projects/kdesupport/extra-cmake-modules";)
 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND 
FATAL_ON_MISSING_REQUIRED_PACKAGES)
 
@@ -17,8 +17,8 @@
 include(ECMSetupVersion)
 include(ECMGenerateHeaders)
 
-set(KF5_VERSION "5.26.0") # handled by release scripts
-set(KF5_DEP_VERSION "5.26.0") # handled by release scripts
+set(KF5_VERSION "5.27.0") # handled by release scripts
+set(KF5_DEP_VERSION "5.27.0") # handled by release scripts
 
 ecm_setup_version(${KF5_VERSION}
                   VARIABLE_PREFIX KFILEMETADATA
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/autotests/odfextractortest.cpp 
new/kfilemetadata-5.27.0/autotests/odfextractortest.cpp
--- old/kfilemetadata-5.26.0/autotests/odfextractortest.cpp     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/autotests/odfextractortest.cpp     2016-10-02 
11:50:26.000000000 +0200
@@ -1,6 +1,7 @@
 /*
  * <one line to give the library's name and an idea of what it does.>
  * Copyright (C) 2014  Vishesh Handa <[email protected]>
+ * Copyright (C) 2016  Christoph Cullmann <[email protected]>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -37,7 +38,7 @@
 
 void OdfExtractorTest::testText()
 {
-    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor(this));
+    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor());
 
     SimpleExtractionResult result(testFilePath(QStringLiteral("test.odt")), 
QStringLiteral("application/vnd.oasis.opendocument.text"));
     plugin->extract(&result);
@@ -62,7 +63,7 @@
 
 void OdfExtractorTest::testTextMetaDataOnly()
 {
-    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor(this));
+    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor());
 
     SimpleExtractionResult result(testFilePath(QStringLiteral("test.odt")), 
QStringLiteral("application/vnd.oasis.opendocument.text"), 
ExtractionResult::ExtractMetaData);
     plugin->extract(&result);
@@ -74,7 +75,7 @@
 
 void OdfExtractorTest::testPresentation()
 {
-    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor(this));
+    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor());
 
     SimpleExtractionResult result(testFilePath(QStringLiteral("test.odp")), 
QStringLiteral("application/vnd.oasis.opendocument.presentation"));
     plugin->extract(&result);
@@ -90,5 +91,20 @@
     QCOMPARE(result.text(), QStringLiteral("KFileMetaData Pres "));
 }
 
+void OdfExtractorTest::testTextMissingMetaNoCrash()
+{
+    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor());
+
+    SimpleExtractionResult 
result(testFilePath(QStringLiteral("test_missing_meta.odt")), 
QStringLiteral("application/vnd.oasis.opendocument.text"));
+    plugin->extract(&result);
+}
+
+void OdfExtractorTest::testTextMissingContentNoCrash()
+{
+    QScopedPointer<ExtractorPlugin> plugin(new OdfExtractor());
+
+    SimpleExtractionResult 
result(testFilePath(QStringLiteral("test_missing_content.odt")), 
QStringLiteral("application/vnd.oasis.opendocument.text"));
+    plugin->extract(&result);
+}
 
 QTEST_MAIN(OdfExtractorTest)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/autotests/odfextractortest.h 
new/kfilemetadata-5.27.0/autotests/odfextractortest.h
--- old/kfilemetadata-5.26.0/autotests/odfextractortest.h       2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/autotests/odfextractortest.h       2016-10-02 
11:50:26.000000000 +0200
@@ -1,6 +1,7 @@
 /*
  * <one line to give the library's name and an idea of what it does.>
  * Copyright (C) 2014  Vishesh Handa <[email protected]>
+ * Copyright (C) 2016  Christoph Cullmann <[email protected]>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -35,6 +36,8 @@
 
     void testPresentation();
 
+    void testTextMissingMetaNoCrash();
+    void testTextMissingContentNoCrash();
 };
 
 #endif // ODFEXTRACTORTEST_H
Files old/kfilemetadata-5.26.0/autotests/samplefiles/test_missing_content.odt 
and new/kfilemetadata-5.27.0/autotests/samplefiles/test_missing_content.odt 
differ
Files old/kfilemetadata-5.26.0/autotests/samplefiles/test_missing_meta.odt and 
new/kfilemetadata-5.27.0/autotests/samplefiles/test_missing_meta.odt differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/bg/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/bg/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/bg/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/bg/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -374,3 +374,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr ""
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Създател"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Описание"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Генератор"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/ca/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/ca/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/ca/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/ca/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -370,3 +370,31 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Carpeta"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Sembla que el camí no conté cap connector vàlid"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "No sembla que el manifest sigui un objecte JSON vàlid"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Ha ocorregut algun problema en intentar escriure dades"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "El connector no s'ha pogut convertir a un «WriterPlugin»"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "El connector no ha pogut crear cap instància"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Creador"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Descripció"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generador"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/ca@valencia/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/ca@valencia/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/ca@valencia/kfilemetadata.po    2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/ca@valencia/kfilemetadata.po    2016-10-02 
11:50:26.000000000 +0200
@@ -370,3 +370,31 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Carpeta"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Sembla que el camí no conté cap connector vàlid"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "No sembla que el manifest sigui un objecte JSON vàlid"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Ha ocorregut algun problema en intentar escriure dades"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "El connector no s'ha pogut convertir a un «WriterPlugin»"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "El connector no ha pogut crear cap instància"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Creador"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Descripció"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generador"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/da/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/da/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/da/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/da/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -366,3 +366,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Mappe"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Oprettet af"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Beskrivelse"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/de/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/de/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/de/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/de/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -364,3 +364,31 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Ordner"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Im Systempfad ist kein gültiges Modul auffindbar"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Das Manifest scheint kein gültiges JSON-Objekt zu sein"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Beim Schreiben von Daten ist ein Problem aufgetreten"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Das Modul kann nicht in ein Writer-Modul umgewandelt werden"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Das Modul kann keine Instanz erzeugen"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Erstellt von"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Beschreibung"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/el/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/el/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/el/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/el/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -2,21 +2,21 @@
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Antonis Geralis <[email protected]>, 2014.
-# Dimitris Kardarakos <[email protected]>, 2014, 2015.
+# Dimitris Kardarakos <[email protected]>, 2014, 2015, 2016.
 msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
 "POT-Creation-Date: 2016-04-17 07:23+0000\n"
-"PO-Revision-Date: 2015-10-27 00:22+0200\n"
-"Last-Translator: Stelios <[email protected]>\n"
+"PO-Revision-Date: 2016-09-28 13:53+0200\n"
+"Last-Translator: Dimitris Kardarakos <[email protected]>\n"
 "Language-Team: Greek <[email protected]>\n"
 "Language: el\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Lokalize 1.5\n"
+"X-Generator: Lokalize 2.0\n"
 
 #: src/propertyinfo.cpp:47
 msgctxt "@label music album"
@@ -306,22 +306,22 @@
 #: src/propertyinfo.cpp:413
 msgctxt "@label the URL a file was originally downloded from"
 msgid "Downloaded From"
-msgstr ""
+msgstr "Έγινε λήψη από"
 
 #: src/propertyinfo.cpp:420
 msgctxt "@label the subject of an email this file was attached to"
 msgid "E-Mail Attachment Subject"
-msgstr ""
+msgstr "Θέμα ηλ. αλληλογραφίας με συνημμένο"
 
 #: src/propertyinfo.cpp:427
 msgctxt "@label the sender of an email this file was attached to"
 msgid "E-Mail Attachment Sender"
-msgstr ""
+msgstr "Αποστολέας ηλ. αλληλογραφίας με συνημμένο"
 
 #: src/propertyinfo.cpp:434
 msgctxt "@label the message ID of an email this file was attached to"
 msgid "E-Mail Attachment Message ID"
-msgstr ""
+msgstr "Αναγνωριστικό ηλ. αλληλογραφίας με συνημμένο"
 
 #: src/typeinfo.cpp:47
 msgctxt "@label"
@@ -367,3 +367,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Φάκελος"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Δημιουργός"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Περιγραφή"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Γεννήτρια"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/en_GB/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/en_GB/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/en_GB/kfilemetadata.po  2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/en_GB/kfilemetadata.po  2016-10-02 
11:50:26.000000000 +0200
@@ -366,3 +366,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Folder"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Creator"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Description"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/es/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/es/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/es/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/es/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -368,3 +368,19 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Carpeta"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Parece que la ruta no contiene un complemento válido"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Parece que el manifiesto no es un objeto JSON válido"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Algo ha ido mal al intentar escribir datos"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "El complemento no se puede convertir en un complemento de Writer"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "El complemento no puede crear una instancia"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/et/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/et/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/et/kfilemetadata.po     1970-01-01 
01:00:00.000000000 +0100
+++ new/kfilemetadata-5.27.0/po/et/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -0,0 +1,368 @@
+# Copyright (C) YEAR This_file_is_part_of_KDE
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Marek Laane <[email protected]>, 2016.
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: http://bugs.kde.org\n";
+"POT-Creation-Date: 2016-04-17 07:23+0000\n"
+"PO-Revision-Date: 2016-09-09 01:42+0300\n"
+"Last-Translator: Marek Laane <[email protected]>\n"
+"Language-Team: Estonian <[email protected]>\n"
+"Language: et\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Lokalize 1.5\n"
+
+#: src/propertyinfo.cpp:47
+msgctxt "@label music album"
+msgid "Album"
+msgstr "Album"
+
+#: src/propertyinfo.cpp:53
+msgctxt "@label"
+msgid "Album Artist"
+msgstr "Albumi esitaja"
+
+#: src/propertyinfo.cpp:59
+msgctxt "@label"
+msgid "Artist"
+msgstr "Esitaja"
+
+#: src/propertyinfo.cpp:65
+msgctxt "@label"
+msgid "Aspect Ratio"
+msgstr "Proportsioon"
+
+#: src/propertyinfo.cpp:71
+msgctxt "@label"
+msgid "Author"
+msgstr "Autor"
+
+#: src/propertyinfo.cpp:77
+msgctxt "@label"
+msgid "Bitrate"
+msgstr "Bitikiirus"
+
+#: src/propertyinfo.cpp:83
+msgctxt "@label"
+msgid "Channels"
+msgstr "Kanalid"
+
+#: src/propertyinfo.cpp:89
+msgctxt "@label"
+msgid "Comment"
+msgstr "Kommentaar"
+
+#: src/propertyinfo.cpp:96
+msgctxt "@label"
+msgid "Composer"
+msgstr "Helilooja"
+
+#: src/propertyinfo.cpp:103
+msgctxt "@label"
+msgid "Copyright"
+msgstr "Autoriõigus"
+
+#: src/propertyinfo.cpp:110
+msgctxt "@label"
+msgid "Creation Date"
+msgstr "Loomise kuupäev"
+
+#: src/propertyinfo.cpp:116
+msgctxt "@label"
+msgid "Duration"
+msgstr "Kestus"
+
+#: src/propertyinfo.cpp:127
+msgctxt "@label"
+msgid "Frame Rate"
+msgstr "Kaadrisagedus"
+
+#: src/propertyinfo.cpp:133
+msgctxt "@label"
+msgid "Software used to Generate the document"
+msgstr "Dokumendi genereerimiseks kasutatud tarkvara"
+
+#: src/propertyinfo.cpp:140
+msgctxt "@label music genre"
+msgid "Genre"
+msgstr "Žanr"
+
+#: src/propertyinfo.cpp:147
+msgctxt "@label"
+msgid "Height"
+msgstr "Kõrgus"
+
+#: src/propertyinfo.cpp:153
+msgctxt "@label EXIF"
+msgid "Image Date Time"
+msgstr "Pildi kuupäev ja kellaaeg"
+
+#: src/propertyinfo.cpp:159
+msgctxt "@label EXIF"
+msgid "Image Make"
+msgstr "Pildi valmistaja"
+
+#: src/propertyinfo.cpp:166
+msgctxt "@label EXIF"
+msgid "Image Model"
+msgstr "Pildi mudel"
+
+#: src/propertyinfo.cpp:173
+msgctxt "@label EXIF"
+msgid "Image Orientation"
+msgstr "Pildi orientatsioon"
+
+#: src/propertyinfo.cpp:179
+msgctxt "@label"
+msgid "Keywords"
+msgstr "Võtmesõnad"
+
+#: src/propertyinfo.cpp:186
+msgctxt "@label"
+msgid "Language"
+msgstr "Keel"
+
+#: src/propertyinfo.cpp:193
+msgctxt "@label number of lines"
+msgid "Line Count"
+msgstr "Ridade arv"
+
+#: src/propertyinfo.cpp:199
+msgctxt "@label"
+msgid "Lyricist"
+msgstr "Sõnade autor"
+
+#: src/propertyinfo.cpp:206
+msgctxt "@label"
+msgid "Page Count"
+msgstr "Lehekülgede arv"
+
+#: src/propertyinfo.cpp:212
+msgctxt "@label EXIF"
+msgid "Photo Aperture Value"
+msgstr "Foto ava väärtus"
+
+#: src/propertyinfo.cpp:218
+msgctxt "@label EXIF"
+msgid "Photo Original Date Time"
+msgstr "Foto originaali kuupäev ja kellaaeg"
+
+#: src/propertyinfo.cpp:224
+msgctxt "@label EXIF"
+msgid "Photo Exposure Bias"
+msgstr "Foto särinihe"
+
+#: src/propertyinfo.cpp:230
+msgctxt "@label EXIF"
+msgid "Photo Exposure Time"
+msgstr "Foto säriaeg"
+
+#: src/propertyinfo.cpp:236
+msgctxt "@label EXIF"
+msgid "Photo Flash"
+msgstr "Foto välklamp"
+
+#: src/propertyinfo.cpp:242
+msgctxt "@label EXIF"
+msgid "Photo F Number"
+msgstr "Foto F-arv"
+
+#: src/propertyinfo.cpp:248
+msgctxt "@label EXIF"
+msgid "Photo Focal Length"
+msgstr "Foto fookuskaugus"
+
+#: src/propertyinfo.cpp:254
+msgctxt "@label EXIF"
+msgid "Photo Focal Length 35mm"
+msgstr "Foto fookuskaugus (35 mm)"
+
+#: src/propertyinfo.cpp:260
+msgctxt "@label EXIF"
+msgid "Photo GPS Latitude"
+msgstr "Foto GPS-laiuskraad"
+
+#: src/propertyinfo.cpp:266
+msgctxt "@label EXIF"
+msgid "Photo GPS Longitude"
+msgstr "Foto GPS-pikkuskraad"
+
+#: src/propertyinfo.cpp:272
+msgctxt "@label EXIF"
+msgid "Photo GPS Altitude"
+msgstr "Foto GPS-kõrgus"
+
+#: src/propertyinfo.cpp:278
+msgctxt "@label EXIF"
+msgid "Photo ISO Speed Rating"
+msgstr "Foto ISO kiirus"
+
+#: src/propertyinfo.cpp:284
+msgctxt "@label EXIF"
+msgid "Photo Metering Mode"
+msgstr "Foto mõõterežiim"
+
+#: src/propertyinfo.cpp:290
+msgctxt "@label EXIF"
+msgid "Photo X Dimension"
+msgstr "Foto X-mõõde"
+
+#: src/propertyinfo.cpp:296
+msgctxt "@label EXIF"
+msgid "Photo Y Dimension"
+msgstr "Foto Y-mõõde"
+
+#: src/propertyinfo.cpp:302
+msgctxt "@label EXIF"
+msgid "Photo Saturation"
+msgstr "Foto küllastus"
+
+#: src/propertyinfo.cpp:308
+msgctxt "@label EXIF"
+msgid "Photo Sharpness"
+msgstr "Foto teravus"
+
+#: src/propertyinfo.cpp:314
+msgctxt "@label EXIF"
+msgid "Photo White Balance"
+msgstr "Foto värvustasakaal"
+
+#: src/propertyinfo.cpp:320
+msgctxt "@label"
+msgid "Publisher"
+msgstr "Kirjastaja"
+
+#: src/propertyinfo.cpp:326
+msgctxt "@label"
+msgid "Release Year"
+msgstr "Väljalaskeaasta"
+
+#: src/propertyinfo.cpp:332
+msgctxt "@label"
+msgid "Sample Rate"
+msgstr "Diskreetimissagedus"
+
+#: src/propertyinfo.cpp:338
+msgctxt "@label"
+msgid "Subject"
+msgstr "Teema"
+
+#: src/propertyinfo.cpp:345
+msgctxt "@label"
+msgid "Title"
+msgstr "Pealkiri"
+
+#: src/propertyinfo.cpp:351
+msgctxt "@label music track number"
+msgid "Track Number"
+msgstr "Raja number"
+
+#: src/propertyinfo.cpp:357
+msgctxt "@label"
+msgid "Width"
+msgstr "Laius"
+
+#: src/propertyinfo.cpp:363
+msgctxt "@label number of words"
+msgid "Word Count"
+msgstr "Sõnade arv"
+
+#: src/propertyinfo.cpp:370
+msgctxt "@label number of translatable strings"
+msgid "Translatable Units"
+msgstr "Tõlkeühikud"
+
+#: src/propertyinfo.cpp:377
+msgctxt "@label number of translated strings"
+msgid "Translations"
+msgstr "Tõlked"
+
+#: src/propertyinfo.cpp:385
+msgctxt "@label number of fuzzy translated strings"
+msgid "Draft Translations"
+msgstr "Mustandtõlked"
+
+#: src/propertyinfo.cpp:392
+msgctxt "@label translation author"
+msgid "Author"
+msgstr "Autor"
+
+#: src/propertyinfo.cpp:399
+msgctxt "@label translations last update"
+msgid "Last Update"
+msgstr "Viimati uuendatud"
+
+#: src/propertyinfo.cpp:406
+msgctxt "@label date of template creation8"
+msgid "Template Creation"
+msgstr "Malli loomise aeg"
+
+#: src/propertyinfo.cpp:413
+msgctxt "@label the URL a file was originally downloded from"
+msgid "Downloaded From"
+msgstr "Allalaadimise asukoht"
+
+#: src/propertyinfo.cpp:420
+msgctxt "@label the subject of an email this file was attached to"
+msgid "E-Mail Attachment Subject"
+msgstr "E-kirja manuse teema"
+
+#: src/propertyinfo.cpp:427
+msgctxt "@label the sender of an email this file was attached to"
+msgid "E-Mail Attachment Sender"
+msgstr "E-kirja manuse saatja"
+
+#: src/propertyinfo.cpp:434
+msgctxt "@label the message ID of an email this file was attached to"
+msgid "E-Mail Attachment Message ID"
+msgstr "E-kirja manuse kirja ID"
+
+#: src/typeinfo.cpp:47
+msgctxt "@label"
+msgid "Archive"
+msgstr "Arhiiv"
+
+#: src/typeinfo.cpp:52
+msgctxt "@label"
+msgid "Audio"
+msgstr "Heli"
+
+#: src/typeinfo.cpp:57
+msgctxt "@label"
+msgid "Document"
+msgstr "Dokument"
+
+#: src/typeinfo.cpp:62
+msgctxt "@label"
+msgid "Image"
+msgstr "Pilt"
+
+#: src/typeinfo.cpp:67
+msgctxt "@label"
+msgid "Presentation"
+msgstr "Esitlus"
+
+#: src/typeinfo.cpp:72
+msgctxt "@label"
+msgid "Spreadsheet"
+msgstr "Arvutustabel"
+
+#: src/typeinfo.cpp:77
+msgctxt "@label"
+msgid "Text"
+msgstr "Tekst"
+
+#: src/typeinfo.cpp:82
+msgctxt "@label"
+msgid "Video"
+msgstr "Video"
+
+#: src/typeinfo.cpp:87
+msgctxt "@label"
+msgid "Folder"
+msgstr "Kataloog"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/fi/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/fi/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/fi/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/fi/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -366,3 +366,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Kansio"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Luoja"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Kuvaus"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generaattori"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/gl/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/gl/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/gl/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/gl/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -368,3 +368,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Cartafol"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Creador"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Descrición"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Xerador"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/hu/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/hu/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/hu/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/hu/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -367,3 +367,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Mappa"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Létrehozó"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Leírás"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Előállító"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/ia/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/ia/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/ia/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/ia/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -373,3 +373,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Dossier"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Creator"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Description"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/it/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/it/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/it/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/it/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -367,3 +367,32 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Cartella"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Sembra che il percorso non contenga un'estensione valida"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Sembra che il manifesto non sia un oggetto JSON valido"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Qualcosa è andato storto durante il tentativo di scrivere i dati"
+
+#, fuzzy
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "L'estensione non può essere convertita in un WriterPlugin"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "L'estensione non può creare l'istanza"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Creatore"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Descrizione"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generatore"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/ko/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/ko/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/ko/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/ko/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -366,3 +366,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "폴더"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "생성자"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "설명"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "생성 도구"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/nds/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/nds/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/nds/kfilemetadata.po    2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/nds/kfilemetadata.po    2016-10-02 
11:50:26.000000000 +0200
@@ -372,3 +372,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr ""
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Maker"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Beschrieven"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Opsteller"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/nl/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/nl/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/nl/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/nl/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -366,3 +366,31 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Map"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Pad lijkt geen geldige plug-in te bevatten"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Manifest lijkt geen geldig JSON Object te zijn"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Er is iets fout gegaan bij het wegschrijven van gegevens"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Plug-in zou niet geconverteerd moeten worden naar een WriterPlugin"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Plug-in kon geen exemplaar aanmaken"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Maker"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Beschrijving"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/pl/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/pl/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/pl/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/pl/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -367,3 +367,32 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Katalog"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Ścieżka nie zawiera prawidłowej wtyczki"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Manifest nie jest prawidłowym obiektem JSON"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Coś poszło nie tak przy próbie zapisu danych"
+
+#, fuzzy
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Wtyczki nie można było przekształcić na wtyczkę zapisu"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Wtyczka nie może utworzyć wystąpienia"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Twórca"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Opis"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/pt/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/pt/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/pt/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/pt/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -362,3 +362,18 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Pasta"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "A localização não parece conter um 'plugin' válido"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "O manifesto não parece ser um objecto JSON válido"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Ocorreu algo de errado ao tentar gravar os dados"
+
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Não foi possível converter o 'plugin' para um WriterPlugin"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Não foi possível criar uma instância do 'plugin'"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/pt_BR/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/pt_BR/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/pt_BR/kfilemetadata.po  2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/pt_BR/kfilemetadata.po  2016-10-02 
11:50:26.000000000 +0200
@@ -367,3 +367,20 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Pasta"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "O caminho não parece conter um plugin válido"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "O manifesto não parece ser um objeto JSON válido"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Ocorreu algo de errado ao tentar gravar os dados"
+
+#, fuzzy
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Não foi possível converter o plugin para um WriterPlugin"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Não foi possível criar uma instância do plugin"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/ru/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/ru/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/ru/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/ru/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -369,3 +369,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Папка"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Создатель"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Описание"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Программа"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/sk/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/sk/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/sk/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/sk/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -364,3 +364,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Priečinok"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Vytvoril"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Popis"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generátor"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/sl/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/sl/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/sl/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/sl/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -367,3 +367,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Mapa"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Ustvarjalec"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Opis"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Ustvarjalnik"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/sv/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/sv/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/sv/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/sv/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -366,3 +366,31 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Katalog"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "Sökvägen verkar inte innehåller ett giltigt insticksprogram"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Manifest verkar inte vara ett giltigt JSON-objekt"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Någonting gick fel vid försök att skriva data"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Insticksprogrammet kunde inte konverteras till WriterPlugin"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Insticksprogrammet kunde inte skapa instans"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "Skapare"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "Beskrivning"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "Generator"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/uk/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/uk/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/uk/kfilemetadata.po     2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/uk/kfilemetadata.po     2016-10-02 
11:50:26.000000000 +0200
@@ -369,3 +369,19 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "Тека"
+
+#~ msgid "Path does not seem to contain a valid plugin"
+#~ msgstr "У вказаному каталозі, здається, не міститься коректного додатка"
+
+#~ msgid "Manifest does not seem to be a valid JSON Object"
+#~ msgstr "Здається, маніфест не є коректним об’єктом JSON"
+
+#~ msgid "Something went wrong while trying to write data"
+#~ msgstr "Під час спроби виконати запис виникли якісь проблеми"
+
+#~| msgid "Plugin could not be converted to an WriterPlugin"
+#~ msgid "Plugin could not be converted to a WriterPlugin"
+#~ msgstr "Не вдалося перетворити додаток на WriterPlugin"
+
+#~ msgid "Plugin could not create instance"
+#~ msgstr "Додатку не вдалося створити екземпляр"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/zh_CN/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/zh_CN/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/zh_CN/kfilemetadata.po  2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/zh_CN/kfilemetadata.po  2016-10-02 
11:50:26.000000000 +0200
@@ -369,3 +369,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "文件夹"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "创建者"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "描述"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "生成器"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/po/zh_TW/kfilemetadata.po 
new/kfilemetadata-5.27.0/po/zh_TW/kfilemetadata.po
--- old/kfilemetadata-5.26.0/po/zh_TW/kfilemetadata.po  2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/po/zh_TW/kfilemetadata.po  2016-10-02 
11:50:26.000000000 +0200
@@ -367,3 +367,15 @@
 msgctxt "@label"
 msgid "Folder"
 msgstr "資料夾"
+
+#~ msgctxt "@label"
+#~ msgid "Creator"
+#~ msgstr "建立者"
+
+#~ msgctxt "@label"
+#~ msgid "Description"
+#~ msgstr "描述"
+
+#~ msgctxt "@label"
+#~ msgid "Generator"
+#~ msgstr "產生器"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kfilemetadata-5.26.0/src/extractors/epubextractor.cpp 
new/kfilemetadata-5.27.0/src/extractors/epubextractor.cpp
--- old/kfilemetadata-5.26.0/src/extractors/epubextractor.cpp   2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/src/extractors/epubextractor.cpp   2016-10-02 
11:50:26.000000000 +0200
@@ -1,5 +1,6 @@
 /*
     Copyright (C) 2013  Vishesh Handa <[email protected]>
+    Copyright (C) 2016  Christoph Cullmann <[email protected]>
 
     This library is free software; you can redistribute it and/or
     modify it under the terms of the GNU Lesser General Public
@@ -46,11 +47,14 @@
 QString fetchMetadata(struct epub* e, const epub_metadata& type)
 {
     int size = 0;
-
     unsigned char** data = epub_get_metadata(e, type, &size);
     if (data) {
         QStringList strList;
         for (int i = 0; i < size; i++) {
+            // skip nullptr entries, can happen for broken xml files
+            if (!data[i])
+                continue;
+
             strList << QString::fromUtf8((char*)data[i]);
             free(data[i]);
         }
@@ -65,7 +69,8 @@
 
 void EPubExtractor::extract(ExtractionResult* result)
 {
-    struct epub* ePubDoc = epub_open(result->inputUrl().toUtf8().constData(), 
1);
+    // open epub, return on exit, file will be closed again at end of function
+    auto ePubDoc = epub_open(result->inputUrl().toUtf8().constData(), 1);
     if (!ePubDoc) {
         qWarning() << "Invalid document";
         return;
@@ -138,48 +143,48 @@
     //
     // Plain Text
     //
-    if (!(result->inputFlags() & ExtractionResult::ExtractPlainText)) {
-        return;
-    }
+    if (result->inputFlags() & ExtractionResult::ExtractPlainText) {
+        if (auto iter = epub_get_iterator(ePubDoc, EITERATOR_SPINE, 0)) {
+            do {
+                char* curr = epub_it_get_curr(iter);
+                if (!curr)
+                    continue;
 
-    struct eiterator* iter = epub_get_iterator(ePubDoc, EITERATOR_SPINE, 0);
-    do {
-        char* curr = epub_it_get_curr(iter);
-        if (!curr)
-            continue;
-        QString html = QString::fromUtf8(curr);
-        html.remove(QRegularExpression(QStringLiteral("<[^>]*>")));
-
-        result->append(html);
-    } while (epub_it_get_next(iter));
-
-    epub_free_iterator(iter);
-
-    struct titerator* tit;
-
-    tit = epub_get_titerator(ePubDoc, TITERATOR_NAVMAP, 0);
-    if (!tit) {
-        tit = epub_get_titerator(ePubDoc, TITERATOR_GUIDE, 0);
-    }
-
-    if (epub_tit_curr_valid(tit)) {
-        do {
-            char* clink = epub_tit_get_curr_link(tit);
-
-            char* data;
-            int size = epub_get_data(ePubDoc, clink, &data);
-            free(clink);
-
-            // epub_get_data returns -1 on failure
-            if (size > 0 && data) {
-                QString html = QString::fromUtf8(data, size);
-                // strip html tags
+                QString html = QString::fromUtf8(curr);
                 html.remove(QRegularExpression(QStringLiteral("<[^>]*>")));
-
                 result->append(html);
-                free(data);
+            } while (epub_it_get_next(iter));
+
+            epub_free_iterator(iter);
+        }
+
+        auto tit = epub_get_titerator(ePubDoc, TITERATOR_NAVMAP, 0);
+        if (!tit) {
+            tit = epub_get_titerator(ePubDoc, TITERATOR_GUIDE, 0);
+        }
+        if (tit) {
+            if (epub_tit_curr_valid(tit)) {
+                do {
+                    // get link, iterator handles freeing of it
+                    char* clink = epub_tit_get_curr_link(tit);
+
+                    // epub_get_data returns -1 on failure
+                    char* data = nullptr;
+                    const int size = epub_get_data(ePubDoc, clink, &data);
+                    if (size >= 0 && data) {
+                        QString html = QString::fromUtf8(data, size);
+                        // strip html tags
+                        
html.remove(QRegularExpression(QStringLiteral("<[^>]*>")));
+
+                        result->append(html);
+                        free(data);
+                    }
+                } while (epub_tit_next(tit));
             }
-        } while (epub_tit_next(tit));
+            epub_free_titerator(tit);
+        }
     }
-    epub_free_titerator(tit);
+
+    // close epub file again
+    epub_close(ePubDoc);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kfilemetadata-5.26.0/src/extractors/odfextractor.cpp 
new/kfilemetadata-5.27.0/src/extractors/odfextractor.cpp
--- old/kfilemetadata-5.26.0/src/extractors/odfextractor.cpp    2016-09-06 
14:03:15.000000000 +0200
+++ new/kfilemetadata-5.27.0/src/extractors/odfextractor.cpp    2016-10-02 
11:50:26.000000000 +0200
@@ -2,6 +2,7 @@
     <one line to give the library's name and an idea of what it does.>
     Copyright (C) 2013  Vishesh Handa <[email protected]>
     Copyright (C) 2012  Jörg Ehrichs <[email protected]>
+    Copyright (C) 2016  Christoph Cullmann <[email protected]>
 
     This library is free software; you can redistribute it and/or
     modify it under the terms of the GNU Lesser General Public
@@ -59,19 +60,18 @@
         return;
     }
 
-    const QStringList entries = directory->entries();
-    if (!entries.contains(QStringLiteral("meta.xml"))) {
+    // we need a meta xml file in the archive!
+    const auto metaXml = directory->entry(QStringLiteral("meta.xml"));
+    if (!metaXml || !metaXml->isFile()) {
         qWarning() << "Invalid document structure (meta.xml is missing)";
         return;
     }
 
     QDomDocument metaData(QStringLiteral("metaData"));
-    const KArchiveFile* file = static_cast<const 
KArchiveFile*>(directory->entry(QStringLiteral("meta.xml")));
-    metaData.setContent(file->data());
+    metaData.setContent(static_cast<const KArchiveFile*>(metaXml)->data());
 
     // parse metadata ...
     QDomElement docElem = metaData.documentElement();
-
     QDomNode n = docElem.firstChild().firstChild(); // <office:document-meta> 
... <office:meta> ... content
     while (!n.isNull()) {
         QDomElement e = n.toElement();
@@ -129,9 +129,14 @@
         return;
     }
 
-    const KArchiveFile* contentsFile = static_cast<const 
KArchiveFile*>(directory->entry(QStringLiteral("content.xml")));
-    QXmlStreamReader xml(contentsFile->createDevice());
+    // for content indexing, we need content xml file
+    const auto contentXml = directory->entry(QStringLiteral("content.xml"));
+    if (!contentXml || !contentXml->isFile()) {
+        qWarning() << "Invalid document structure (content.xml is missing)";
+        return;
+    }
 
+    QXmlStreamReader xml(static_cast<const 
KArchiveFile*>(contentXml)->createDevice());
     while (!xml.atEnd()) {
         xml.readNext();
         if (xml.isCharacters()) {


Reply via email to