Fixed a concurrency bug in gtasks sync, fixed setting of gtasks last_sync dates on individual tasks

pull/14/head
Sam Bosley 14 years ago
parent d3ce02dffc
commit a2940ebbc4

@ -77,7 +77,7 @@ public final class GtasksMetadataService extends SyncMetadataService<GtasksTaskC
}
@Override
public void findLocalMatch(GtasksTaskContainer remoteTask) {
public synchronized void findLocalMatch(GtasksTaskContainer remoteTask) {
if(remoteTask.task.getId() != Task.NO_ID)
return;
TodorooCursor<Metadata> cursor = metadataDao.query(Query.select(Metadata.PROPERTIES).

@ -230,7 +230,7 @@ public final class GtasksSyncService {
}
task.setValue(Task.MODIFICATION_DATE, DateUtilities.now());
gtasksMetadata.setValue(GtasksMetadata.LAST_SYNC, DateUtilities.now());
gtasksMetadata.setValue(GtasksMetadata.LAST_SYNC, DateUtilities.now() + 1000L);
metadataService.save(gtasksMetadata);
Flags.set(Flags.GTASKS_SUPPRESS_SYNC);
taskDao.saveExisting(task);

@ -208,7 +208,7 @@ public class GtasksSyncV2Provider extends SyncV2Provider {
gtasksMetadataService.findLocalMatch(container);
container.gtaskMetadata.setValue(GtasksMetadata.GTASKS_ORDER, Long.parseLong(t.getPosition()));
container.gtaskMetadata.setValue(GtasksMetadata.PARENT_TASK, gtasksMetadataService.localIdForGtasksId(t.getParent()));
container.gtaskMetadata.setValue(GtasksMetadata.LAST_SYNC, DateUtilities.now());
container.gtaskMetadata.setValue(GtasksMetadata.LAST_SYNC, DateUtilities.now() + 1000L);
write(container);
callback.incrementProgress(10);
}

Loading…
Cancel
Save