summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend.php3
-rw-r--r--feedlist.js2
-rw-r--r--functions.php2
-rw-r--r--viewfeed.js12
4 files changed, 12 insertions, 7 deletions
diff --git a/backend.php b/backend.php
index 826a1ed92..02b52e68a 100644
--- a/backend.php
+++ b/backend.php
@@ -226,12 +226,13 @@
$topmost_article_ids = $ret[0];
$headlines_count = $ret[1];
+ $returned_feed = $ret[2];
print "]]></headlines>";
print "<headlines-count value=\"$headlines_count\"/>";
- $headlines_unread = getFeedUnread($link, $feed);
+ $headlines_unread = getFeedUnread($link, $returned_feed);
print "<headlines-unread value=\"$headlines_unread\"/>";
diff --git a/feedlist.js b/feedlist.js
index 69aee9d1c..acb46e939 100644
--- a/feedlist.js
+++ b/feedlist.js
@@ -171,7 +171,7 @@ function viewfeed(feed, subop, is_cat, subop_param, skip_history, offset) {
}
}
- f.innerHTML = cache_find("F:" + feed);
+ f.innerHTML = cache_find_param("F:" + feed, unread_ctr);
var query = "backend.php?op=rpc&subop=getAllCounters";
diff --git a/functions.php b/functions.php
index 8e81b3cce..0ff533525 100644
--- a/functions.php
+++ b/functions.php
@@ -4952,7 +4952,7 @@
print "</div>";
}
- return array($topmost_article_ids, $headlines_count);
+ return array($topmost_article_ids, $headlines_count, $feed);
}
// from here: http://www.roscripts.com/Create_tag_cloud-71.html
diff --git a/viewfeed.js b/viewfeed.js
index 492f1f092..1688680fc 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -1196,7 +1196,7 @@ function cdmWatchdog() {
function cache_inject(id, article, param) {
- if (!cache_check(id, param)) {
+ if (!cache_check_param(id, param)) {
debug("cache_article: miss: " + id + " [p=" + param + "]");
var cache_obj = new Array();
@@ -1221,10 +1221,10 @@ function cache_find(id) {
return false;
}
-function cache_get_param(id) {
+function cache_find_param(id, param) {
for (var i = 0; i < article_cache.length; i++) {
- if (article_cache[i]["id"] == id) {
- return article_cache[i]["param"];
+ if (article_cache[i]["id"] == id && article_cache[i]["param"] == param) {
+ return article_cache[i]["data"];
}
}
return false;
@@ -1241,6 +1241,10 @@ function cache_check(id) {
function cache_check_param(id, param) {
for (var i = 0; i < article_cache.length; i++) {
+
+// debug("cache_check_param " + article_cache[i]["id"] + ":" +
+// article_cache[i]["param"] + " vs " + id + ":" + param);
+
if (article_cache[i]["id"] == id && article_cache[i]["param"] == param) {
return true;
}