[gitg/wip/commit: 4/28] Allow fetching all status files in one time



commit 9c23d9f829f6df186e69a726e144954cf65d3647
Author: Jesse van den Kieboom <jessevdk gmail com>
Date:   Sat Jun 29 14:44:31 2013 +0200

    Allow fetching all status files in one time

 libgitg/gitg-stage-status-enumerator.vala |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)
---
diff --git a/libgitg/gitg-stage-status-enumerator.vala b/libgitg/gitg-stage-status-enumerator.vala
index 5b22299..737a2cf 100644
--- a/libgitg/gitg-stage-status-enumerator.vala
+++ b/libgitg/gitg-stage-status-enumerator.vala
@@ -88,7 +88,7 @@ public class StageStatusEnumerator : Object
                                {
                                        d_files += new StageStatusFile(path, flags);
 
-                                       if (d_callback != null && d_files.length >= d_callback_num)
+                                       if (d_callback != null && d_callback_num != -1 && d_files.length >= 
d_callback_num)
                                        {
                                                var cb = (owned)d_callback;
                                                d_callback = null;
@@ -109,6 +109,14 @@ public class StageStatusEnumerator : Object
                lock (d_files)
                {
                        d_cancellable = null;
+
+                       if (d_callback != null && d_callback_num == -1)
+                       {
+                               var cb = (owned)d_callback;
+                               d_callback = null;
+
+                               Idle.add((owned)cb);
+                       }
                }
 
                return null;
@@ -118,6 +126,11 @@ public class StageStatusEnumerator : Object
        {
                int n = 0;
 
+               if (num == -1)
+               {
+                       num = d_files.length - d_offset;
+               }
+
                StageStatusFile[] ret = new StageStatusFile[int.min(num, d_files.length - d_offset)];
                ret.length = 0;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]