singular match case: no "other" attributes retrieved => no match
authorAleš Křenek <ljocha@ics.muni.cz>
Mon, 17 Dec 2007 14:32:25 +0000 (14:32 +0000)
committerAleš Křenek <ljocha@ics.muni.cz>
Mon, 17 Dec 2007 14:32:25 +0000 (14:32 +0000)
org.glite.jp.primary/src/feed.c

index be9ab1f..aebebdd 100644 (file)
@@ -561,12 +561,13 @@ static int feed_query_callback(
        }
 
 /* filter on non-meta query items */
-       if (other)
-               for (i=0; i<f->nother_qry; i++) {
-                       for (j=0; other[j].name; j++) 
-                               if (check_qry_item(ctx,f->other_qry+i,other+j)) break;
-                       if (!other[j].name) goto cleanup; /* no match is not an error */
-               }
+       if (f->nother_qry && !other) goto cleanup;      /* unknown values can't match */
+
+       for (i=0; i<f->nother_qry; i++) {
+               for (j=0; other[j].name; j++) 
+                       if (check_qry_item(ctx,f->other_qry+i,other+j)) break;
+               if (!other[j].name) goto cleanup; /* no match is not an error */
+       }
 
 /* extract attributes to be fed, stack the job for a batch feed */
        for (i=0; meta && meta[i].name; i++)