083588e211
When non-conflicting changes were automatically merged, the local object would be correctly marked as unsynced, but the merged object rather than the remote object would be saved to the sync cache. When the object was then uploaded, it matched the cache version exactly, so an empty patch object (other than an unchanged dateModified, which is always included) would be uploaded and the local change wouldn't make it to the server. The empty patch would result in an 'unchanged' response, which would cause the empty patch object to be saved to the sync cache (which is a bug that I'll fix separately). If the local object was modified again, the patch would include all fields (since the cache object was empty) and the local change would be uploaded, but there could also be unnecessary conflicts due to it looking like all local fields had been modified. This patch causes the remote object to be saved to the sync cache instead, so the local change looks like a local edit and is correctly uploaded. |
||
---|---|---|
.. | ||
components | ||
content | ||
resource | ||
tests | ||
chrome.manifest | ||
install.rdf | ||
runtests.sh |