Author: akv
Date: 2010-01-17 21:49:54 +0100 (Sun, 17 Jan 2010)
New Revision: 3025

Modified:
   branches/rawstudio-ng-color/src/rs-library.c
Log:
Only return files that exists when searching in library.

Modified: branches/rawstudio-ng-color/src/rs-library.c
===================================================================
--- branches/rawstudio-ng-color/src/rs-library.c        2010-01-17 20:28:19 UTC 
(rev 3024)
+++ branches/rawstudio-ng-color/src/rs-library.c        2010-01-17 20:49:54 UTC 
(rev 3025)
@@ -658,7 +658,8 @@
        gint n, num_tags = g_list_length(tags);
        GList *photos = NULL;
        GTimer *gt = g_timer_new();
-       
+       gchar *filename;
+
        sqlite3_prepare_v2(db, "create temp table filter (photo integer)", -1, 
&stmt, NULL);
        rc = sqlite3_step(stmt);
        sqlite3_finalize(stmt);
@@ -688,7 +689,11 @@
        sqlite3_prepare_v2(db, "select library.filename from library,result 
where library.id = result.photo and result.count = ?1 order by 
library.filename;", -1, &stmt, NULL);
         rc = sqlite3_bind_int(stmt, 1, num_tags);
        while (sqlite3_step(stmt) == SQLITE_ROW)
-               photos = g_list_append(photos, g_strdup((gchar *) 
sqlite3_column_text(stmt, 0)));
+       {
+               filename = g_strdup((gchar *) sqlite3_column_text(stmt, 0));
+               if (g_file_test(filename, G_FILE_TEST_EXISTS))
+                       photos = g_list_append(photos, filename);
+       }                                      
        sqlite3_finalize(stmt);
 
        /* Empty filter */


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to