Shinsuke Sugaya 11 years ago
parent
commit
21aef120bc
1 changed files with 17 additions and 13 deletions
  1. 17 13
      src/main/java/jp/sf/fess/transformer/AbstractFessFileTransformer.java

+ 17 - 13
src/main/java/jp/sf/fess/transformer/AbstractFessFileTransformer.java

@@ -225,20 +225,22 @@ public abstract class AbstractFessFileTransformer extends
         putResultDataBody(dataMap, "digest", Constants.DIGEST_PREFIX
                 + abbreviate(cache, maxDigestLength));
         // title
-        if (url.endsWith("/")) {
-            if (StringUtil.isNotBlank(content)) {
-                putResultDataBody(dataMap, "title",
-                        abbreviate(body, maxTitleLength));
-            } else {
-                putResultDataBody(dataMap, "title", noTitleLabel);
-            }
-        } else {
-            final String u = decodeUrlAsName(url, url.startsWith("file:"));
-            final int pos = u.lastIndexOf('/');
-            if (pos == -1) {
-                putResultDataBody(dataMap, "title", u);
+        if (!dataMap.containsKey("title")) {
+            if (url.endsWith("/")) {
+                if (StringUtil.isNotBlank(content)) {
+                    putResultDataBody(dataMap, "title",
+                            abbreviate(body, maxTitleLength));
+                } else {
+                    putResultDataBody(dataMap, "title", noTitleLabel);
+                }
             } else {
-                putResultDataBody(dataMap, "title", u.substring(pos + 1));
+                final String u = decodeUrlAsName(url, url.startsWith("file:"));
+                final int pos = u.lastIndexOf('/');
+                if (pos == -1) {
+                    putResultDataBody(dataMap, "title", u);
+                } else {
+                    putResultDataBody(dataMap, "title", u.substring(pos + 1));
+                }
             }
         }
         // host
@@ -375,6 +377,8 @@ public abstract class AbstractFessFileTransformer extends
                             sessionId);
                     if (pageEnc != null) {
                         enc = pageEnc;
+                    } else if (urlQueue.getEncoding() != null) {
+                        enc = urlQueue.getEncoding();
                     }
                 }
             }