From 083c7bb25cd48fc6f59894e62eae4edcf186e0b8 Mon Sep 17 00:00:00 2001 From: Will White Date: Mon, 29 Aug 2011 18:51:20 -0400 Subject: [PATCH] Fix error handling for corrupt MBTiles. --- lib/mbtiles.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/mbtiles.js b/lib/mbtiles.js index 93f7c91..0b3bca5 100644 --- a/lib/mbtiles.js +++ b/lib/mbtiles.js @@ -58,10 +58,10 @@ function MBTiles(uri, callback) { } var mbtiles = cache[key]; - if (!mbtiles.open) { + if (!mbtiles.open && !mbtiles.error) { mbtiles.once('open', callback); } else { - callback(null, mbtiles); + callback(mbtiles.error || null, mbtiles); } return undefined; } @@ -74,6 +74,7 @@ MBTiles.prototype._open = function(uri) { var mbtiles = this; function error(err) { process.nextTick(function() { + mbtiles.error = err; mbtiles.emit('open', err); }); }