Fix bug #3487: Mix of result sets ..
authorAdam Dickmeiss <adam@indexdata.dk>
Tue, 15 Jun 2010 10:49:27 +0000 (12:49 +0200)
committerAdam Dickmeiss <adam@indexdata.dk>
Tue, 15 Jun 2010 10:49:27 +0000 (12:49 +0200)
In filter virt_db, when result sets are replaced we pick an existing
backend and check for result set naming and number of result sets on
this backend.

src/filter_virt_db.cpp

index 56ba946..e8b30f5 100644 (file)
@@ -293,7 +293,9 @@ void yf::VirtualDB::Frontend::search(mp::Package &package, Z_APDU *apdu_req)
         for (; map_it != m_backend_list.end(); map_it++)
         {
             BackendPtr tmp = *map_it;
-            if (tmp->m_frontend_databases == databases)
+            if (tmp->m_frontend_databases == databases &&
+                (tmp->m_named_result_sets ||
+                 tmp->m_number_of_sets == 0))
                 break;
         }
         if (map_it != m_backend_list.end())