Index: wp-admin/js/theme.dev.js
===================================================================
--- wp-admin/js/theme.dev.js	(revision 20117)
+++ wp-admin/js/theme.dev.js	(working copy)
@@ -68,8 +68,6 @@
 var ThemeScroller;
 (function($){
 	ThemeScroller = {
-		nonce: '',
-		nextPage: 2, // By default, assume we're on the first page.
 		querying: false,
 		scrollPollingDelay: 500,
 		failedRetryDelay: 4000,
@@ -82,8 +80,7 @@
 		 * @access private
 		 */
 		init: function() {
-			var self = this,
-				startPage;
+			var self = this;
 
 			// Get out early if we don't have the required arguments.
 			if ( typeof ajaxurl === 'undefined' ||
@@ -95,11 +92,8 @@
 
 			// Handle inputs
 			this.nonce = $('#_ajax_fetch_list_nonce').val();
+			this.nextPage = ( theme_list_args.paged + 1 );
 
-			startPage = theme_list_args.paged;
-			if ( startPage !== undefined )
-				this.nextPage = ( startPage + 1 );
-
 			// Cache jQuery selectors
 			this.$outList = $('#availablethemes');
 			this.$spinner = $('div.tablenav.bottom').children( 'img.ajax-loading' );
@@ -110,8 +104,7 @@
 			 * If there are more pages to query, then start polling to track
 			 * when user hits the bottom of the current page
 			 */
-			if ( theme_list_args.total_pages !== undefined &&
-				 theme_list_args.total_pages >= this.nextPage )
+			if ( theme_list_args.total_pages >= this.nextPage )
 				this.pollInterval =
 					setInterval( function() {
 						return self.poll();
@@ -144,9 +137,7 @@
 		 * @param results Array with results from this.ajax() query.
 		 */
 		process: function( results ) {
-			if ( ( results === undefined ) ||
-				 ( results.rows === undefined ) ||
-				 ( results.rows.indexOf( 'no-items' ) != -1 ) ) {
+			if ( results === undefined ) {
 				clearInterval( this.pollInterval );
 				return;
 			}
