*) "Httpc object was not returned to object pool." bug fixed.

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@62 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
theli 20 years ago
parent 47e426ff7e
commit 3756e6d20f

@ -167,8 +167,8 @@ public final class httpc {
public static httpc getInstance(String server, int port, int timeout, boolean ssl) throws IOException { public static httpc getInstance(String server, int port, int timeout, boolean ssl) throws IOException {
httpc newHttpc = null; httpc newHttpc = null;
// fetching a new httpc from the object pool
try { try {
// fetching a new httpc from the object pool
newHttpc = (httpc) httpc.theHttpcPool.borrowObject(); newHttpc = (httpc) httpc.theHttpcPool.borrowObject();
} catch (Exception e) { } catch (Exception e) {
@ -176,7 +176,12 @@ public final class httpc {
} }
// initialize it // initialize it
newHttpc.init(server,port,timeout,ssl); try {
newHttpc.init(server,port,timeout,ssl);
} catch (IOException e) {
try{ httpc.theHttpcPool.returnObject(newHttpc); } catch (Exception e1) {}
throw e;
}
return newHttpc; return newHttpc;
@ -192,9 +197,11 @@ public final class httpc {
} }
protected void finalize() throws Throwable { protected void finalize() throws Throwable {
if (!this.removedFromPool) System.err.println("Httpc object was not returned to object pool."); if (!this.removedFromPool) {
this.reset(); System.err.println("Httpc object was not returned to object pool.");
httpc.theHttpcPool.invalidateObject(this); httpc.theHttpcPool.invalidateObject(this);
}
this.reset();
} }
public static String dnsResolve(String host) { public static String dnsResolve(String host) {

Loading…
Cancel
Save