From 2e868d1e12eda66b25bb4792ff465d56798829ee Mon Sep 17 00:00:00 2001 From: Thaddee Tyl Date: Wed, 19 Nov 2014 09:15:37 +0100 Subject: [PATCH] Coerce text to string. Caused issues with numbers being .replace()'d. --- INSTALL.md | 2 +- badge.js | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 9839e44..efb7e46 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -19,7 +19,7 @@ npm install gh-badges ```js var badge = require('gh-badges'); badge({ text: [ "build", "passed" ], colorscheme: "green" }, - function(svg) { + function(svg, err) { // svg is a String… of your badge. }); ``` diff --git a/badge.js b/badge.js index 4b59036..84c4350 100644 --- a/badge.js +++ b/badge.js @@ -52,6 +52,10 @@ function makeImage(data, cb) { if (!(data.template + '-' + data.format in templates)) { data.template = 'default'; } + // String coercion. + data.text[0] = '' + data.text[0]; + data.text[1] = '' + data.text[1]; + var template = templates[data.template + '-' + data.format]; if (data.colorscheme) { data.colorA = colorscheme[data.colorscheme].colorA; @@ -63,7 +67,12 @@ function makeImage(data, cb) { ]; addEscapers(data); - var result = template(data); + try { + var result = template(data); + } catch(e) { + cb('', e); + return; + } if (data.format === 'json') { cb(result);