Commit e5484342 by Andrew Nesbitt

Merge pull request #374 from rvagg/maps-fix

sourceMaps non-string option while sourceComments='map' causes crash
parents 3ff1d6f9 750ead4e
...@@ -5,7 +5,8 @@ var assign = require('object-assign'); ...@@ -5,7 +5,8 @@ var assign = require('object-assign');
function requireBinding() { function requireBinding() {
var v8 = 'v8-' + /[0-9]+\.[0-9]+/.exec(process.versions.v8)[0]; var v8 = 'v8-' + /[0-9]+\.[0-9]+/.exec(process.versions.v8)[0];
var candidates = [ var candidates = [
[__dirname, 'build', 'Release', 'obj.target', 'binding.node'], [__dirname, 'build', 'Release', 'binding.node'],
[__dirname, 'build', 'Debug', 'binding.node'],
[__dirname, 'bin', process.platform + '-' + process.arch + '-' + v8, 'binding.node'] [__dirname, 'bin', process.platform + '-' + process.arch + '-' + v8, 'binding.node']
]; ];
var candidate; var candidate;
...@@ -42,6 +43,7 @@ var prepareOptions = function (options) { ...@@ -42,6 +43,7 @@ var prepareOptions = function (options) {
var error; var error;
var stats; var stats;
var sourceComments; var sourceComments;
var sourceMap;
options = options || {}; options = options || {};
success = options.success; success = options.success;
...@@ -52,6 +54,11 @@ var prepareOptions = function (options) { ...@@ -52,6 +54,11 @@ var prepareOptions = function (options) {
if (options.sourceMap && !sourceComments) { if (options.sourceMap && !sourceComments) {
sourceComments = 'map'; sourceComments = 'map';
} }
sourceMap = options.sourceMap;
if (typeof sourceMap !== 'string' && sourceComments === 'map') {
sourceMap = '';
}
prepareStats(options, stats); prepareStats(options, stats);
return { return {
...@@ -63,7 +70,7 @@ var prepareOptions = function (options) { ...@@ -63,7 +70,7 @@ var prepareOptions = function (options) {
style: SASS_OUTPUT_STYLE[options.output_style || options.outputStyle] || 0, style: SASS_OUTPUT_STYLE[options.output_style || options.outputStyle] || 0,
comments: SASS_SOURCE_COMMENTS[sourceComments] || 0, comments: SASS_SOURCE_COMMENTS[sourceComments] || 0,
stats: stats, stats: stats,
sourceMap: options.sourceMap, sourceMap: sourceMap,
precision: parseInt(options.precision) || 5, precision: parseInt(options.precision) || 5,
success: function onSuccess(css, sourceMap) { success: function onSuccess(css, sourceMap) {
finishStats(stats, sourceMap); finishStats(stats, sourceMap);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment