* Copyright (c) 1998-2000, Index Data.
* See the file LICENSE for details.
*
- * $Id: yaz-proxy.h,v 1.6 2002-09-10 11:58:13 adam Exp $
+ * $Id: yaz-proxy.h,v 1.7 2002-09-10 13:01:14 adam Exp $
*/
#include <yaz++/yaz-z-assoc.h>
int m_init_flag;
Yaz_Z_Query *m_last_query;
Yaz_Z_Databases m_last_databases;
+ char *m_last_resultSetId;
int m_last_ok;
int m_last_resultCount;
int m_sr_transform;
* Copyright (c) 1998-2001, Index Data.
* See the file LICENSE for details.
*
- * $Id: yaz-proxy.cpp,v 1.34 2002-09-10 11:58:13 adam Exp $
+ * $Id: yaz-proxy.cpp,v 1.35 2002-09-10 13:00:58 adam Exp $
*/
#include <assert.h>
if (m_client->m_last_ok && m_client->m_last_query &&
m_client->m_last_query->match(this_query) &&
+ !strcmp(m_client->m_last_resultSetId, sr->resultSetName) &&
m_client->m_last_databases.match(this_databases))
{
delete this_query;
delete m_client->m_last_query;
m_client->m_last_query = this_query;
m_client->m_last_ok = 0;
+
+ xfree (m_client->m_last_resultSetId);
+ m_client->m_last_resultSetId = xstrdup (sr->resultSetName);
+
m_client->m_last_databases.set(sr->num_databaseNames,
(const char **) sr->databaseNames);
}
m_waiting = 2; // for debugging purposes only.
odr_destroy(m_init_odr);
delete m_last_query;
+ xfree (m_last_resultSetId);
}
void Yaz_Proxy::timeoutNotify()
m_prev = 0;
m_init_flag = 0;
m_last_query = 0;
+ m_last_resultSetId = 0;
m_last_resultCount = 0;
m_last_ok = 0;
m_sr_transform = 0;