From: Adam Dickmeiss Date: Thu, 4 Aug 2011 08:57:41 +0000 (+0200) Subject: zoom: throw diagnostic for records for some udb X-Git-Tag: v1.3.5~4 X-Git-Url: http://sru.miketaylor.org.uk/?a=commitdiff_plain;h=03a9487db98a9e9cdf41f22a0cdae3fcaae8fc74;p=metaproxy-moved-to-github.git zoom: throw diagnostic for records for some udb --- diff --git a/src/filter_zoom.cpp b/src/filter_zoom.cpp index e8863ff..3aae72c 100644 --- a/src/filter_zoom.cpp +++ b/src/filter_zoom.cpp @@ -661,8 +661,17 @@ yf::Zoom::BackendPtr yf::Zoom::Frontend::get_backend_from_databases( if (ptr->type == XML_ELEMENT_NODE && !strcmp((const char *) ptr->name, "record")) { + if (sptr) + { + *error = YAZ_BIB1_UNSPECIFIED_ERROR; + *addinfo = (char*) odr_malloc(odr, 40 + database.length()), + sprintf(*addinfo, "multiple records for udb=%s", + database.c_str()); + xmlFreeDoc(doc); + BackendPtr b; + return b; + } sptr = m_p->parse_torus_record(ptr); - break; } } }