Fix a few more potential file sync errors

This commit is contained in:
Dan Stillman 2013-04-03 05:50:33 -04:00
parent 2bdc6fd9f4
commit e3e94f91ea
3 changed files with 16 additions and 4 deletions

View File

@ -1658,7 +1658,6 @@ Zotero.Sync.Storage = new function () {
if (fileList.length == 0) {
Zotero.debug('No files to add -- removing zip file');
tmpFile.remove(null);
request.stop();
return false;
}
@ -1670,9 +1669,10 @@ Zotero.Sync.Storage = new function () {
zw.processQueue(observer, null);
return true;
}
// DEBUG: Do we want to catch this?
catch (e) {
Zotero.debug(e, 1);
request.error(e);
Components.utils.reportError(e);
return false;
}
}
@ -1851,9 +1851,10 @@ Zotero.Sync.Storage.ZipWriterObserver.prototype = {
var entry = this._zipWriter.getEntry(fileName);
if (!entry) {
var msg = "ZIP entry '" + fileName + "' not found for request '" + this._data.request.name + "'";
Components.utils.reportError(msg);
Zotero.debug(msg, 1);
this._zipWriter.close();
this._data.request.error(msg);
this._callback(false);
return;
}
originalSize += entry.realSize;

View File

@ -960,6 +960,10 @@ Zotero.Sync.Storage.WebDAV = (function () {
var created = Zotero.Sync.Storage.createUploadFile(
request,
function (data) {
if (!data) {
deferred.resolve(false);
return;
}
deferred.resolve(
Q.fcall(function () {
return processUploadFile(data);

View File

@ -873,12 +873,19 @@ Zotero.Sync.Storage.ZFS = (function () {
var item = Zotero.Sync.Storage.getItemFromRequestName(request.name);
if (Zotero.Attachments.getNumFiles(item) > 1) {
var deferred = Q.defer();
Zotero.Sync.Storage.createUploadFile(
var created = Zotero.Sync.Storage.createUploadFile(
request,
function (data) {
if (!data) {
deferred.resolve(false);
return;
}
deferred.resolve(processUploadFile(data));
}
);
if (!created) {
return Q(false);
}
return deferred.promise;
}
else {