[gobject-introspection] sourcescanner: Do some fast path checks on the filename



commit 8c0ca4717d834a6c578579656683c55ea22a06f4
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Tue Oct 15 15:28:42 2013 -0400

    sourcescanner: Do some fast path checks on the filename
    
    Going through the VFS layer is substantially slower, so check against
    the base filenames first. This speeds things up on case-sensitive
    filesystems.

 giscanner/sourcescanner.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/giscanner/sourcescanner.c b/giscanner/sourcescanner.c
index 830d21c..9715029 100644
--- a/giscanner/sourcescanner.c
+++ b/giscanner/sourcescanner.c
@@ -269,6 +269,11 @@ already_has_current_file (GISourceScanner *scanner)
   GFile *current_file;
 
   g_assert (scanner->current_filename);
+
+  for (l = scanner->filenames; l != NULL; l = l->next)
+    if (strcmp (scanner->current_filename, l->data) == 0)
+      return TRUE;
+
   current_file = g_file_new_for_path (scanner->current_filename);
 
   for (l = scanner->filenames; l != NULL; l = l->next)


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