search conjunctive on multiple string with iterateResolvablesByKindsAndStrings
authorKlaus Kaempf <kkaempf@suse.de>
Mon, 20 Aug 2007 12:28:16 +0000 (12:28 +0000)
committerKlaus Kaempf <kkaempf@suse.de>
Mon, 20 Aug 2007 12:28:16 +0000 (12:28 +0000)
zypp/cache/ResolvableQuery.cc
zypp/cache/ResolvableQuery.h

index 636b13d..9979d0c 100644 (file)
@@ -208,7 +208,7 @@ struct ResolvableQuery::Impl
       std::string s( *it_s );
 
       if (it_s != strings.begin())
-        sqlcmd += "OR";
+        sqlcmd += "AND";
 
 //FIXME: Implement MATCH_RESSUMM and MATCH_RESDESC
 
index 4395baf..1904107 100644 (file)
@@ -250,10 +250,11 @@ namespace zypp
       /**
        * \short Iterate resolvables by Kinds and Strings
        * \param kinds kinds to match, will be ORed
-       * \param names names to match, will be ORed
+       * \param names names to match, will be ANDed
        * \param flags  MATCH_xxx, see above
        * \param fnc callback to send the data to. (Will be called once per result)
        *
+       * Beware: Searching for multiple strings with MATCH_EXACT will _not_ find anything, except if all strings are identical ...
        */
       void iterateResolvablesByKindsAndStrings( const std::vector<zypp::Resolvable::Kind> & kinds,
                   const std::vector<std::string> &strings, int flags, ProcessResolvable fnc );