From 588c24b0a230f617fc9e9d16b06331ef8f72d3df Mon Sep 17 00:00:00 2001 From: Dani Palou Date: Fri, 27 Nov 2015 09:17:05 +0100 Subject: [PATCH] MOBILE-1331 prefetch: Fix infinite spinners in prefetch all --- www/core/lib/filepool.js | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/www/core/lib/filepool.js b/www/core/lib/filepool.js index 0b9731d0b5d..a5c53569ff6 100644 --- a/www/core/lib/filepool.js +++ b/www/core/lib/filepool.js @@ -1997,19 +1997,26 @@ angular.module('mm.core') }, function() { return undefined; // No previous status. }).then(function(previousStatus) { - return db.insert(mmFilepoolPackagesStore, { - id: packageId, - component: component, - componentId: componentId, - status: status, - previous: previousStatus, - revision: revision, - timemodified: timemodified, - updated: new Date().getTime() - }).then(function(result) { + var promise; + if (previousStatus === status) { + // The package already has this status, no need to change it. + promise = $q.when(); + } else { + promise = db.insert(mmFilepoolPackagesStore, { + id: packageId, + component: component, + componentId: componentId, + status: status, + previous: previousStatus, + revision: revision, + timemodified: timemodified, + updated: new Date().getTime() + }); + } + + return promise.then(function() { // Success inserting, trigger event. self._triggerPackageStatusChanged(siteId, component, componentId, status); - return result; }); }); });