diff --git a/htroot/Vocabulary_p.html b/htroot/Vocabulary_p.html
index 0e980fd7f..468eab159 100644
--- a/htroot/Vocabulary_p.html
+++ b/htroot/Vocabulary_p.html
@@ -130,10 +130,10 @@ function updatepage(str) {
#{terms}#
#(editable)# ::#(/editable)# |
- #(editable)# ::#(/editable)# |
+ #(editable)# ::#(/editable)# |
#[term]# |
- #(editable)##[synonyms]#::#(/editable)# |
- #(editable)##[objectlink]#::#(/editable)# |
+ #(editable)##[synonyms]#::#(/editable)# |
+ #(editable)##[objectlink]#::#(/editable)# |
#{/terms}#
#(editable)#::
diff --git a/htroot/Vocabulary_p.java b/htroot/Vocabulary_p.java
index 87080a1a4..c78c5b7ba 100644
--- a/htroot/Vocabulary_p.java
+++ b/htroot/Vocabulary_p.java
@@ -201,7 +201,9 @@ public class Vocabulary_p {
prop.putHTML("edit_tripleN", vocabulary.getObjectspace() == null ? "none - missing objectspace" : "<" + yacyurl + "> <" + DCTerms.references.getPredicate() + "> \"[reference-link]#[tag]\" .");
int c = 0;
boolean dark = false;
- for (Map.Entry entry: vocabulary.list().entrySet()) {
+ Map list = vocabulary.list();
+ prop.put("edit_size", list.size());
+ for (Map.Entry entry: list.entrySet()) {
prop.put("edit_terms_" + c + "_editable", editable ? 1 : 0);
prop.put("edit_terms_" + c + "_dark", dark ? 1 : 0); dark = !dark;
prop.putHTML("edit_terms_" + c + "_term", entry.getKey());
@@ -212,6 +214,7 @@ public class Vocabulary_p {
if (c > 3000) break;
}
prop.put("edit_terms", c);
+
}
// return rewrite properties
diff --git a/source/de/anomic/http/server/HTTPDemon.java b/source/de/anomic/http/server/HTTPDemon.java
index 84d268fb2..b3d0a598d 100644
--- a/source/de/anomic/http/server/HTTPDemon.java
+++ b/source/de/anomic/http/server/HTTPDemon.java
@@ -602,7 +602,7 @@ public final class HTTPDemon implements serverHandler, Cloneable {
}
// setting other connection properties
- prop.put(HeaderFramework.CONNECTION_PROP_CLIENTIP, session.userAddress.isAnyLocalAddress() ? "localhost" : session.userAddress.getHostAddress());
+ prop.put(HeaderFramework.CONNECTION_PROP_CLIENTIP, session.userAddress.isAnyLocalAddress() || session.userAddress.isLinkLocalAddress() || session.userAddress.isLoopbackAddress() ? "localhost" : session.userAddress.getHostAddress());
prop.put(HeaderFramework.CONNECTION_PROP_METHOD, HeaderFramework.METHOD_CONNECT);
prop.put(HeaderFramework.CONNECTION_PROP_PATH, "/");
prop.put(HeaderFramework.CONNECTION_PROP_EXT, "");
diff --git a/source/net/yacy/cora/protocol/Domains.java b/source/net/yacy/cora/protocol/Domains.java
index dadeb3005..f32278361 100644
--- a/source/net/yacy/cora/protocol/Domains.java
+++ b/source/net/yacy/cora/protocol/Domains.java
@@ -885,6 +885,7 @@ public class Domains {
"127.0.0.1".equals(host) ||
"localhost".equals(host) ||
host.startsWith("0:0:0:0:0:0:0:1") ||
+ host.startsWith("fe80:0:0:0:0:0:0:1") || // used by my mac as localhost
host.startsWith("::1/") ||
"::1".equals(host)
);
diff --git a/source/net/yacy/document/LibraryProvider.java b/source/net/yacy/document/LibraryProvider.java
index 2c0acc83a..c0bf959f8 100644
--- a/source/net/yacy/document/LibraryProvider.java
+++ b/source/net/yacy/document/LibraryProvider.java
@@ -233,7 +233,7 @@ public class LibraryProvider {
// store the term into the vocabulary map
map.put(term, new SOTuple(Tagging.normalizeTerm(term), subject));
}
- try {
+ if (map.size() > 0) try {
Log.logInfo("LibraryProvider", "adding vocabulary to autotagging");
Tagging pndVoc = new Tagging("Persons", null, objectspace, map);
autotagging.addVocabulary(pndVoc);
diff --git a/source/net/yacy/document/importer/OAIPMHLoader.java b/source/net/yacy/document/importer/OAIPMHLoader.java
index 2f90009c4..af7f9db86 100644
--- a/source/net/yacy/document/importer/OAIPMHLoader.java
+++ b/source/net/yacy/document/importer/OAIPMHLoader.java
@@ -48,9 +48,10 @@ public class OAIPMHLoader {
this.source = source;
// load the file from the net
+ Log.logInfo("OAIPMHLoader", "loading record from " + source.toNormalform(true, false));
Response response = null;
IOException ee = null;
- for (int i = 0; i < 3; i++) {
+ for (int i = 0; i < 5; i++) {
// make some retries if first attempt fails
try {
response = loader.load(loader.request(source, false, true), CacheStrategy.NOCACHE, Integer.MAX_VALUE, true);
@@ -245,4 +246,4 @@ http://nbn-resolving.de/urn:nbn:de:bsz:960-opus-1860
-*/
\ No newline at end of file
+*/
diff --git a/source/net/yacy/peers/Seed.java b/source/net/yacy/peers/Seed.java
index 1f02030a5..1adb3461f 100644
--- a/source/net/yacy/peers/Seed.java
+++ b/source/net/yacy/peers/Seed.java
@@ -1048,9 +1048,7 @@ public class Seed implements Cloneable, Comparable, Comparator
try {
final URL url = new URL(seedURL);
final String host = url.getHost();
- if ( host.equals("localhost")
- || host.startsWith("127.")
- || (host.startsWith("0:0:0:0:0:0:0:1")) ) {
+ if (Domains.isLocalhost(host)) {
return "seedURL in localhost rejected";
}
} catch ( final MalformedURLException e ) {