summaryrefslogtreecommitdiff
path: root/viewfeed.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2008-05-20 17:06:12 +0100
committerAndrew Dolgov <[email protected]>2008-05-20 17:06:12 +0100
commit022d9e9e458edc1ec277e2c73df28df8cfeb1322 (patch)
tree5533f3e4e7c55b73561922116b8c94e7f42d1868 /viewfeed.js
parent997d9d7cad31d5fdd3d054b95bd952a6f0367be9 (diff)
dispose from out of sequence article_callback2() calls
Diffstat (limited to 'viewfeed.js')
-rw-r--r--viewfeed.js7
1 files changed, 7 insertions, 0 deletions
diff --git a/viewfeed.js b/viewfeed.js
index bd548ced9..713cc7e44 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -20,6 +20,8 @@ var article_cache = new Array();
var vgroup_last_feed = false;
var post_under_pointer = false;
+var last_requested_article = false;
+
function catchup_callback() {
if (xmlhttp_rpc.readyState == 4) {
try {
@@ -320,6 +322,8 @@ function article_callback2(transport, id, feed_id) {
try {
debug("article_callback2 " + id);
+ if (id != last_requested_article) return;
+
if (transport.responseXML) {
active_real_feed_id = feed_id;
@@ -435,6 +439,7 @@ function view(id, feed_id, skip_history) {
query = query + "&mode=prefetch";
+ showArticleInHeadlines(id);
render_article(cached_article);
} else if (cached_article) {
@@ -447,6 +452,8 @@ function view(id, feed_id, skip_history) {
cache_expire();
+ last_requested_article = id;
+
new Ajax.Request(query, {
onComplete: function(transport) {
article_callback2(transport, id, feed_id);