try {
                //if (!getActiveFeedId()) return;
 
-               debug("viewNextFeedPage: calling viewfeed(), p: " + _feed_cur_page+1);
+               debug("viewNextFeedPage: calling viewfeed(), p: " + parseInt(_feed_cur_page+1));
 
                viewfeed(getActiveFeedId(), undefined, activeFeedIsCat(), undefined,
-                       undefined, _feed_cur_page+1);
+                       undefined, parseInt(_feed_cur_page+1));
 
        } catch (e) {
                exception_error("viewNextFeedPage", e);
 
 
                if (!offset) offset = 0;
 
+               if (offset > 0) {
+                       _feed_cur_page = parseInt(offset);
+                       if (_infscroll_request_sent) {
+                               return;
+                       }
+               } else {
+                       _feed_cur_page = 0;
+                       _infscroll_disable = 0;
+               }
+
+               if (getActiveFeedId() != feed_id) {
+                       _feed_cur_page = 0;
+                       active_post_id = 0;
+                       _infscroll_disable = 0;
+               }
+
                loading_set_progress(100);
 
                clean_feed_selections();
                                line_num++;
                        }
 
+                       if (line_num - offset*30 < 30) {
+                               _infscroll_disable = 1;
+                       }
+
                        rs.close();
        
                        if (offset == 0) {
 
                remove_splash();
 
+               _infscroll_request_sent = 0;
 
        } catch (e) {
                exception_error("viewfeed_offline", e);