diff --git a/src/image.class.js b/src/image.class.js index 7d75130b..46847776 100644 --- a/src/image.class.js +++ b/src/image.class.js @@ -352,8 +352,15 @@ var instance = new fabric.Image(img, object); callback && callback(instance); - img = img.onload = null; - }; + img = img.onload = img.onerror = null; + }; + + /** @ignore */ + img.onerror = function(e) { + fabric.log('Error loading ' + img.src); + callback && callback(null, true); + img = img.onload = img.onerror = null; + }; img.src = src; }; diff --git a/src/util/misc.js b/src/util/misc.js index 8026e745..5e714d7c 100644 --- a/src/util/misc.js +++ b/src/util/misc.js @@ -223,8 +223,10 @@ } var klass = getKlass(o.type); if (klass.async) { - klass.fromObject(o, function (o) { - enlivenedObjects[index] = o; + klass.fromObject(o, function (o, error) { + if (!error) { + enlivenedObjects[index] = o; + } onLoaded(); }); }