From de9aacd0270b7a8914672bff8a278552994a0155 Mon Sep 17 00:00:00 2001 From: Tim Su Date: Fri, 16 Mar 2012 17:03:33 -0700 Subject: [PATCH] Handle infinite loop when parent is child --- .../com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java index c46a02443..2d03c64fc 100644 --- a/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java +++ b/astrid/plugin-src/com/todoroo/astrid/gtasks/GtasksTaskListUpdater.java @@ -139,7 +139,8 @@ public class GtasksTaskListUpdater extends OrderedListUpdater { private void orderAndIndentHelper(String listId, AtomicLong order, long parent, int indentLevel) { TodorooCursor metadata = metadataDao.query(Query.select(Metadata.PROPERTIES) .where(Criterion.and(Metadata.KEY.eq(GtasksMetadata.METADATA_KEY), - GtasksMetadata.LIST_ID.eq(listId), GtasksMetadata.PARENT_TASK.eq(parent))) + GtasksMetadata.LIST_ID.eq(listId), GtasksMetadata.PARENT_TASK.eq(parent), + GtasksMetadata.INDENT.lt(indentLevel == 0 ? 1 : indentLevel))) .orderBy(Order.asc(Functions.cast(GtasksMetadata.GTASKS_ORDER, "INTEGER")))); //$NON-NLS-1$ try { if (metadata.getCount() > 0) {