Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Make IsGistNewer compare against latestDownload Instead of comparing the gist's latestUpload time against the local latestUpload time, this function should compare the gist time against the local latestDownload time in order to determine if the cloud settings are newer than the local settings. Also, on an upload, set the local latestDownload time to the same time as the upload since the settings are effectively "downloaded" on an upload. This protects against the following scenario: - Machine A uploads settings to cloud - Machine B downloads these settings - Machine B changes settings and uploads them to the cloud - Machine A downloads the settings - Machine A changes settings and tries to upload them The last upload attempt fails because A's last upload time is before the cloud's last upload time, even though A downloaded the settings. A forced upload is needed in order to upload the settings. It therefore makes sense to compare against the local download time. * Fix changed files check to work with snippets When checking for the existance of files in the gist, use the settings file "gistName" to lookup the file in the gist instead of "fileName" in order to find any files in a subdir. The gist uses "|" as a separator in the "gistName" for files in a subdir and so using a plain filename does not match. This fixes the case where a user has snippets and does an upload with no changes to settings or snippets. The snippets are already up in the gist. The code that checks for files that are local and not in the gist fails to match the fileName to the gistName and incorrectly concludes that the file is not in the gist. This causes the upload code to upload all the files even if there were no changes, resulting in an "empty" gist revision with only the upload timestamp changed. * Fix uploadCancelled status bar message timeouts
- Loading branch information