Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.trac.core/src/org/eclipse/mylyn/internal/trac/core/TracRepositoryConnector.java')
-rw-r--r--org.eclipse.mylyn.trac.core/src/org/eclipse/mylyn/internal/trac/core/TracRepositoryConnector.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.trac.core/src/org/eclipse/mylyn/internal/trac/core/TracRepositoryConnector.java b/org.eclipse.mylyn.trac.core/src/org/eclipse/mylyn/internal/trac/core/TracRepositoryConnector.java
index 62b656a67..309908c5b 100644
--- a/org.eclipse.mylyn.trac.core/src/org/eclipse/mylyn/internal/trac/core/TracRepositoryConnector.java
+++ b/org.eclipse.mylyn.trac.core/src/org/eclipse/mylyn/internal/trac/core/TracRepositoryConnector.java
@@ -180,6 +180,17 @@ public class TracRepositoryConnector extends AbstractRepositoryConnector {
return false;
}
+ if (ids.size() == 1) {
+ // getChangedTickets() is expected to always return at least one ticket because
+ // the repository synchronization timestamp is set to the most recent modification date
+ Integer id = ids.iterator().next();
+ Date lastChanged = client.getTicketLastChanged(id);
+ if (since.equals(lastChanged)) {
+ // repository didn't actually change
+ return false;
+ }
+ }
+
for (AbstractTask task : tasks) {
Integer id = getTicketId(task.getTaskId());
if (ids.contains(id)) {

Back to the top