Support for no-chapter stories or stories with descriiption before Chatper
[nikiroo-utils.git] / supported / InfoReader.java
index 1a00ef25f6102d8928f2a1c213f2afe66dc4c01e..206464f45a0a2e7c989e6fa6719afa22ca61c9cb 100644 (file)
@@ -138,7 +138,7 @@ public class InfoReader {
 
                meta.setTitle(getInfoTag(in, "TITLE"));
                meta.setAuthor(getInfoTag(in, "AUTHOR"));
-               meta.setDate(getInfoTag(in, "DATE"));
+               meta.setDate(bsHelper.formatDate(getInfoTag(in, "DATE")));
                meta.setTags(getInfoTagList(in, "TAGS", ","));
                meta.setSource(getInfoTag(in, "SOURCE"));
                meta.setUrl(getInfoTag(in, "URL"));
@@ -164,7 +164,8 @@ public class InfoReader {
                } catch (NumberFormatException e) {
                        meta.setWords(0);
                }
-               meta.setCreationDate(getInfoTag(in, "CREATION_DATE"));
+               meta.setCreationDate(
+                               bsHelper.formatDate(getInfoTag(in, "CREATION_DATE")));
                meta.setFakeCover(Boolean.parseBoolean(getInfoTag(in, "FAKE_COVER")));
 
                if (withCover && meta.getCover() == null) {
@@ -259,14 +260,17 @@ public class InfoReader {
                        String value = getLine(in, key, 0);
                        if (value != null && !value.isEmpty()) {
                                value = value.trim().substring(key.length() - 1).trim();
-                               if (value.startsWith("'") && value.endsWith("'")
-                                               || value.startsWith("\"") && value.endsWith("\"")) {
+                               if (value.length() > 1 && //
+                                               (value.startsWith("'") && value.endsWith("'")
+                                                               || value.startsWith("\"")
+                                                                               && value.endsWith("\""))) {
                                        value = value.substring(1, value.length() - 1).trim();
                                }
 
                                // Some old files ended up with TITLE="'xxxxx'"
-                               if ("TITLE".equals(key)) {
-                                       if (value.startsWith("'") && value.endsWith("'")) {
+                               if ("^TITLE=".equals(key)) {
+                                       if (value.startsWith("'") && value.endsWith("'")
+                                                       && value.length() > 1) {
                                                value = value.substring(1, value.length() - 1).trim();
                                        }
                                }