commit 6d4a43583891e239f09ee57f17111d60c8fd05cc
parent 77ea5bf3f97366cbd2b206d1093fcada05f8c2ff
Author: Simon Kornblith <simon@simonster.com>
Date: Mon, 9 Apr 2012 01:59:49 -0400
Small tweaks for server
Diffstat:
2 files changed, 24 insertions(+), 11 deletions(-)
diff --git a/chrome/content/zotero/xpcom/server.js b/chrome/content/zotero/xpcom/server.js
@@ -33,7 +33,8 @@ Zotero.Server = new function() {
404:"Not Found",
412:"Precondition Failed",
500:"Internal Server Error",
- 501:"Method Not Implemented"
+ 501:"Method Not Implemented",
+ 504:"Gateway Timeout"
};
/**
@@ -381,6 +382,12 @@ Zotero.Server.DataListener.prototype._processEndpoint = function(method, postDat
* returns HTTP data from a request
*/
Zotero.Server.DataListener.prototype._requestFinished = function(response) {
+ if(this._requestFinished) {
+ Zotero.debug("Request already finished; not sending another response");
+ return;
+ }
+ this._requestFinished = true;
+
// close input stream
this.iStream.close();
diff --git a/chrome/content/zotero/xpcom/utilities_translate.js b/chrome/content/zotero/xpcom/utilities_translate.js
@@ -211,17 +211,21 @@ Zotero.Utilities.Translate.prototype.processDocuments = function(urls, processor
try {
exception(e);
} catch(e) {
- try {
- Zotero.Browser.deleteHiddenBrowser(hiddenBrowser);
- } catch(e) {}
+ if(hiddenBrowser) {
+ try {
+ Zotero.Browser.deleteHiddenBrowser(hiddenBrowser);
+ } catch(e) {}
+ }
translate.complete(false, e);
}
}
} else {
var myException = function(e) {
- try {
- Zotero.Browser.deleteHiddenBrowser(hiddenBrowser);
- } catch(e) {}
+ if(hiddenBrowser) {
+ try {
+ Zotero.Browser.deleteHiddenBrowser(hiddenBrowser);
+ } catch(e) {}
+ }
translate.complete(false, e);
}
}
@@ -268,10 +272,12 @@ Zotero.Utilities.Translate.prototype.processDocuments = function(urls, processor
function() {
if(done) done();
var handler = function() {
- try {
- Zotero.Browser.deleteHiddenBrowser(hiddenBrowser);
- translate.removeHandler("done", handler);
- } catch(e) {}
+ if(hiddenBrowser) {
+ try {
+ Zotero.Browser.deleteHiddenBrowser(hiddenBrowser);
+ } catch(e) {}
+ }
+ translate.removeHandler("done", handler);
};
translate.setHandler("done", handler);
translate.decrementAsyncProcesses("Zotero.Utilities.Translate#processDocuments");