X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=src%2Ffilter_zoom.cpp;h=44986d65392234d86cce0855c197e6045a3cc7d7;hb=ec6d4b11a9ea36bb2b02f8def619d3eaa59e00e3;hp=01a3a5e15fb190727110d5a7d5ff9fa2a65815ad;hpb=4b7d3f1086745b31b3532862508fb3ad44420058;p=metaproxy-moved-to-github.git diff --git a/src/filter_zoom.cpp b/src/filter_zoom.cpp index 01a3a5e..44986d6 100644 --- a/src/filter_zoom.cpp +++ b/src/filter_zoom.cpp @@ -473,13 +473,14 @@ yf::Zoom::BackendPtr yf::Zoom::Frontend::get_backend_from_databases( if (m_backend && m_backend->m_frontend_database == database) return m_backend; - bool db_args = false; + std::string db_args; + std::string cf_parm; std::string torus_db; size_t db_arg_pos = database.find(','); if (db_arg_pos != std::string::npos) { torus_db = database.substr(0, db_arg_pos); - db_args = true; + db_args = database.substr(db_arg_pos+1); } else torus_db = database; @@ -534,7 +535,6 @@ yf::Zoom::BackendPtr yf::Zoom::Frontend::get_backend_from_databases( BackendPtr b(new Backend(sptr)); - std::string cf_parm; b->xsp = xsp; b->m_frontend_database = database; std::string authentication = sptr->authentication; @@ -583,10 +583,10 @@ yf::Zoom::BackendPtr yf::Zoom::Frontend::get_backend_from_databases( { url = sptr->target; } - if (cf_parm.length() && !db_args) - { + if (db_args.length()) + url += "," + db_args; + else if (cf_parm.length()) url += "," + cf_parm; - } yaz_log(YLOG_LOG, "url=%s", url.c_str()); b->connect(url, error, addinfo); if (*error == 0)