From 813b5e78b0624e42bb2649694cd694f5c793d563 Mon Sep 17 00:00:00 2001 From: benbro Date: Wed, 18 Jul 2012 21:41:36 +0300 Subject: [PATCH] Prevent the error callback from being called twice --- src/core.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/core.js b/src/core.js index 409ae060d..27d5551d1 100644 --- a/src/core.js +++ b/src/core.js @@ -52,8 +52,12 @@ function getPdf(arg, callback) { if ('progress' in params) xhr.onprogress = params.progress || undefined; - if ('error' in params) + var calledErrorBack = false; + + if ('error' in params && !calledErrorBack) { + calledErrorBack = true; xhr.onerror = params.error || undefined; + } xhr.onreadystatechange = function getPdfOnreadystatechange(e) { if (xhr.readyState === 4) { @@ -61,7 +65,8 @@ function getPdf(arg, callback) { var data = (xhr.mozResponseArrayBuffer || xhr.mozResponse || xhr.responseArrayBuffer || xhr.response); callback(data); - } else if (params.error) { + } else if (params.error && !calledErrorBack) { + calledErrorBack = true; params.error(e); } }