Merge pull request #45 from mapbox/space-in-path-fix
fix error when mbtiles path contains a space
This commit is contained in:
@@ -31,8 +31,11 @@ MBTiles.schema = fs.readFileSync(__dirname + '/schema.sql', 'utf8');
|
||||
// - callback: Will be called when the resources have been acquired
|
||||
// or acquisition failed.
|
||||
require('util').inherits(MBTiles, require('events').EventEmitter)
|
||||
function MBTiles(uri, callback) {
|
||||
if (typeof uri === 'string') uri = url.parse(uri, true);
|
||||
function MBTiles(uri, callback) {
|
||||
if (typeof uri === 'string') {
|
||||
uri = url.parse(uri, true);
|
||||
uri.pathname = qs.unescape(uri.pathname);
|
||||
}
|
||||
else if (typeof uri.query === 'string') uri.query = qs.parse(uri.query);
|
||||
|
||||
if (!uri.pathname) {
|
||||
|
||||
BIN
test/fixtures/with spaces.mbtiles
vendored
Normal file
BIN
test/fixtures/with spaces.mbtiles
vendored
Normal file
Binary file not shown.
14
test/spaces.test.js
Normal file
14
test/spaces.test.js
Normal file
@@ -0,0 +1,14 @@
|
||||
var tape = require('tape');
|
||||
var MBTiles = require('..');
|
||||
|
||||
tape('opens mbtiles file with spaces', function(assert) {
|
||||
new MBTiles(__dirname + '/fixtures/with spaces.mbtiles', function(err, mbtiles) {
|
||||
assert.ifError(err);
|
||||
mbtiles.getInfo(function(err, info) {
|
||||
assert.ifError(err);
|
||||
assert.deepEqual(info.level1, {level2:'property'});
|
||||
assert.deepEqual(info.custom, ['custom list']);
|
||||
assert.end();
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user