Skip to content

Commit 9c6254f

Browse files
committed
Removed use of Promises from SQLitePlugin.js
1 parent f781c40 commit 9c6254f

1 file changed

Lines changed: 23 additions & 12 deletions

File tree

www/SQLitePlugin.js

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -270,19 +270,30 @@
270270
console.log('closing db with no transaction lock state');
271271
}
272272

273-
var dbname = this.dbname;
274-
var closePromises = connections.map(function (connectionName) {
275-
return new Promise(function (resolve, reject) {
276-
cordova.exec(resolve, reject, "SQLitePlugin", "close", [
277-
{
278-
dbname: dbname,
279-
connectionName: connectionName
280-
}
281-
]);
282-
});
283-
});
273+
var closedConnections = 0;
274+
var closeConnectionSuccessCb = function () {
275+
closedConnections++;
276+
if (closedConnections == connections.length) {
277+
return success();
278+
}
279+
};
284280

285-
Promise.all(closePromises).then(success).catch(error);
281+
var closeErrorOccurred = false;
282+
var closeConnectionErrorCb = function (e) {
283+
if (!closeErrorOccurred) {
284+
closeErrorOccurred = true;
285+
return error(e);
286+
}
287+
};
288+
289+
for (var i = 0; i < connections.length; i++) {
290+
cordova.exec(closeConnectionSuccessCb, closeConnectionErrorCb, "SQLitePlugin", "close", [
291+
{
292+
dbname: this.dbname,
293+
connectionName: connections[i]
294+
}
295+
]);
296+
}
286297
} else {
287298
console.log('cannot close: database is not open');
288299
if (error) {

0 commit comments

Comments
 (0)