From 3bb3df3fc02d7b6917385fc0c1646eecac96ce06 Mon Sep 17 00:00:00 2001 From: orbiter Date: Fri, 9 Mar 2007 12:03:53 +0000 Subject: [PATCH] fix for http://www.yacy-forum.de/viewtopic.php?p=32298#32298 git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@3460 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- source/de/anomic/yacy/yacyNewsPool.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/source/de/anomic/yacy/yacyNewsPool.java b/source/de/anomic/yacy/yacyNewsPool.java index 4a724cfac..d7e93ac32 100644 --- a/source/de/anomic/yacy/yacyNewsPool.java +++ b/source/de/anomic/yacy/yacyNewsPool.java @@ -215,10 +215,16 @@ public class yacyNewsPool { public yacyNewsRecord get(int dbKey, int element) throws IOException { yacyNewsQueue queue = switchQueue(dbKey); - yacyNewsRecord record; + yacyNewsRecord record = null; + int s; synchronized (queue) { - record = queue.top(element); - if (record == null) queue.pop(element); + while ((record == null) && ((s = queue.size()) > 0)) { + record = queue.top(element); + if (record == null) { + queue.pop(element); + if (queue.size() == s) break; + } + } } return record; }