Fail on turbo-carto specific errors

This will try to fallback on postcss errors so it still targets
carto parser in those cases.

Closes #434
This commit is contained in:
Raul Ochoa
2016-05-13 12:10:05 +02:00
parent 503636f9fb
commit 61765d20e1
2 changed files with 101 additions and 4 deletions
+10 -4
View File
@@ -38,12 +38,18 @@ TurboCartoAdapter.prototype._parseCartoCss = function (username, layer, callback
}
this.turboCartoParser.process(username, layer.options.cartocss, layer.options.sql, function (err, cartocss) {
// Ignore turbo-carto errors and continue
if (!err && cartocss) {
layer.options.cartocss = cartocss;
// Only return turbo-carto errors
if (err && err.name === 'TurboCartoError') {
err = new Error('turbo-carto: ' + err.message);
err.http_status = 400;
return callback(err);
}
callback(null, layer);
// Try to continue in the rest of the cases
if (cartocss) {
layer.options.cartocss = cartocss;
}
return callback(null, layer);
});
};