]> arthur.barton.de Git - netatalk.git/blobdiff - etc/afpd/spotlight.c
Spotlight: enhance behaviour for long running queries
[netatalk.git] / etc / afpd / spotlight.c
index 8644d465d24e629c1aa956141af6ba8ab9c607d0..d2539b8358e25684e3d4c568ee8cce9df55c73ea 100644 (file)
@@ -402,7 +402,7 @@ static bool create_result_handle(slq_t *slq)
 static bool add_results(sl_array_t *array, slq_t *slq)
 {
     sl_filemeta_t *fm;
-    uint64_t status = 0;
+    uint64_t status;
 
     /* FileMeta */
     fm = talloc_zero(array, sl_filemeta_t);
@@ -410,6 +410,19 @@ static bool add_results(sl_array_t *array, slq_t *slq)
         return false;
     }
 
+    switch (slq->slq_state) {
+    case SLQ_STATE_RUNNING:
+        /*
+         * Wtf, why 35? Taken from an AFP capture.
+         */
+        status = 35;
+        break;
+
+    default:
+        status = 0;
+        break;
+    }
+
     dalloc_add_copy(array, &status, uint64_t);
     dalloc_add(array, slq->query_results->cnids, sl_cnids_t);
     if (slq->query_results->num_results > 0) {