From 2ba7914f0b9601d8fdbcf1df38491c6f768abcb1 Mon Sep 17 00:00:00 2001 From: orbiter Date: Wed, 21 May 2008 23:07:37 +0000 Subject: [PATCH] fix for NPE exception while fetching remote crawl jobs git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@4833 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- source/de/anomic/yacy/yacyClient.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/source/de/anomic/yacy/yacyClient.java b/source/de/anomic/yacy/yacyClient.java index bf4f223bd..b1807d253 100644 --- a/source/de/anomic/yacy/yacyClient.java +++ b/source/de/anomic/yacy/yacyClient.java @@ -395,11 +395,18 @@ public final class yacyClient { try { /* a long time-out is needed */ final byte[] result = wput("http://" + target.getClusterAddress() + "/yacy/urls.xml", target.getHexHash() + ".yacyh", post, 60000); - - RSSFeed feed = RSSReader.parse(result).getFeed(); + RSSReader reader = RSSReader.parse(result); + if (reader == null) { + yacyCore.log.logWarning("yacyClient.queryRemoteCrawlURLs failed asking peer '" + target.getName() + "': probably bad response from remote peer (1), reader == null"); + target.put(yacySeed.RCOUNT, "0"); + seedDB.update(target.hash, target); // overwrite number of remote-available number to avoid that this peer is called again (until update is done by peer ping) + //e.printStackTrace(); + return null; + } + RSSFeed feed = reader.getFeed(); if (feed == null) { // case where the rss reader does not understand the content - yacyCore.log.logWarning("yacyClient.queryRemoteCrawlURLs failed asking peer '" + target.getName() + "': probably bad response from remote peer"); + yacyCore.log.logWarning("yacyClient.queryRemoteCrawlURLs failed asking peer '" + target.getName() + "': probably bad response from remote peer (2)"); System.out.println("***DEBUG*** rss input = " + new String(result)); target.put(yacySeed.RCOUNT, "0"); seedDB.update(target.hash, target); // overwrite number of remote-available number to avoid that this peer is called again (until update is done by peer ping)