commit 60afa6b00ded878e3ef56948caaf6b2d9b46db23
parent f55fba3dcf87be97d07a5f662525c86b1b49b860
Author: Simon Kornblith <simon@simonster.com>
Date: Wed, 30 Dec 2009 06:00:27 +0000
Fix DOI translator hang on error
Diffstat:
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/chrome/content/zotero/xpcom/translate.js b/chrome/content/zotero/xpcom/translate.js
@@ -881,7 +881,17 @@ Zotero.Translate.prototype._generateSandbox = function() {
var safeTranslator = new Object();
safeTranslator.setSearch = function(arg) { return translation.setSearch(arg) };
safeTranslator.setDocument = function(arg) { return translation.setDocument(arg) };
- safeTranslator.setHandler = function(arg1, arg2) { translation.setHandler(arg1, arg2) };
+ safeTranslator.setHandler = function(arg1, arg2) {
+ translation.setHandler(arg1,
+ function(obj, item) {
+ try {
+ arg2(obj, item);
+ } catch(e) {
+ me.error(false, e);
+ }
+ }
+ );
+ };
safeTranslator.setString = function(arg) { translation.setString(arg) };
safeTranslator.setTranslator = function(arg) { return translation.setTranslator(arg) };
safeTranslator.getTranslators = function() { return translation.getTranslators() };