diff --git a/lib/cartodb/models/mapconfig/adapter/mapconfig-buffer-size-adapter.js b/lib/cartodb/models/mapconfig/adapter/mapconfig-buffer-size-adapter.js index 3296d0ea..aead2d91 100644 --- a/lib/cartodb/models/mapconfig/adapter/mapconfig-buffer-size-adapter.js +++ b/lib/cartodb/models/mapconfig/adapter/mapconfig-buffer-size-adapter.js @@ -11,6 +11,10 @@ MapConfigBufferSizeAdapter.prototype.getMapConfig = function (user, requestMapCo this.formats.forEach(function (format) { if (Number.isFinite(context.templateParams.buffersize[format])) { + if (requestMapConfig.buffersize === undefined) { + requestMapConfig.buffersize = {}; + } + requestMapConfig.buffersize[format] = context.templateParams.buffersize[format]; } }); diff --git a/test/acceptance/buffer-size-format.js b/test/acceptance/buffer-size-format.js index d5157585..c32f62d1 100644 --- a/test/acceptance/buffer-size-format.js +++ b/test/acceptance/buffer-size-format.js @@ -396,7 +396,24 @@ describe('buffer size per format for named maps w/o placeholders', function () { assert: function (tile, callback) { assert.utfgridEqualsFile(tile, this.fixturePath, 2, callback); } - } + }, + { + desc: 'should get png tile using buffer-size 0' + + ' overriden by template params with no buffersize in mapconfig', + coords: { z: 7, x: 64, y: 48 }, + format: 'png', + placeholders: { + buffersize: { + png: 0 + } + }, + fixturePath: './test/fixtures/buffer-size/tile-7.64.48-buffer-size-0.png', + template: createBufferSizeTemplate('named-no-buffer-size-mapconfig-png-0', undefined, {}), + assert: function (tile, callback) { + assert.imageIsSimilarToFile(tile, this.fixturePath, IMAGE_TOLERANCE_PER_MIL, callback); + } + }, + ]; testCases.forEach(function (test) {