Add a fast-exit path for SchedulerImpl.runRepeatingTasks()
Resolves issue 4627

Patch by: andrew.teirney
Review by: bobv


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@7730 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/core/client/impl/SchedulerImpl.java b/user/src/com/google/gwt/core/client/impl/SchedulerImpl.java
index ea8b598..5454bb5 100644
--- a/user/src/com/google/gwt/core/client/impl/SchedulerImpl.java
+++ b/user/src/com/google/gwt/core/client/impl/SchedulerImpl.java
@@ -159,8 +159,12 @@
   private static JsArray<Task> runRepeatingTasks(JsArray<Task> tasks) {
     assert tasks != null : "tasks";
 
-    boolean canceledSomeTasks = false;
     int length = tasks.length();
+    if (length == 0) {
+      return null;
+    }
+
+    boolean canceledSomeTasks = false;
     double start = Duration.currentTimeMillis();
 
     while (Duration.currentTimeMillis() - start < TIME_SLICE) {