diff --git a/src/core/core.js b/src/core/core.js index d930c024f..fb84f0e73 100755 --- a/src/core/core.js +++ b/src/core/core.js @@ -57,20 +57,19 @@ // High pixel density displays - multiply the size of the canvas height/width by the device pixel ratio, then scale. Chart.helpers.retinaScale(this); + if (config) { + this.controller = new Chart.Controller(this); + } + // Always bind this so that if the responsive state changes we still work var _this = this; Chart.helpers.addResizeListener(context.canvas.parentNode, function() { - if (config.options.responsive) { + if (_this.controller && _this.controller.config.options.responsive) { _this.controller.resize(); } }); - if (config) { - this.controller = new Chart.Controller(this); - return this.controller; - } - - return this; + return this.controller ? this.controller : this; };