X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Ffilter_zoom.cpp;h=617144c6d2b3aaa0bacf65ef76647f44df54c8df;hb=6f5c65bac85dca97e514041d015ab10b669fac4a;hp=194fb8bcb70496726ab89f57d39b89394209e6ec;hpb=53f4ad9ff2a693396570c9374f24b4b1b6023e64;p=metaproxy-moved-to-github.git diff --git a/src/filter_zoom.cpp b/src/filter_zoom.cpp index 194fb8b..617144c 100644 --- a/src/filter_zoom.cpp +++ b/src/filter_zoom.cpp @@ -1878,7 +1878,7 @@ static bool wait_conn(COMSTACK cs, int secs) yaz_poll_add(pfd.input_mask, yaz_poll_except); if (cs->io_pending && CS_WANT_WRITE) yaz_poll_add(pfd.input_mask, yaz_poll_write); - else if (cs->io_pending & CS_WANT_READ) + if (cs->io_pending & CS_WANT_READ) yaz_poll_add(pfd.input_mask, yaz_poll_read); pfd.fd = cs_fileno(cs); @@ -1919,6 +1919,8 @@ bool yf::Zoom::Impl::check_proxy(const char *proxy) if (!wait_conn(conn, proxy_timeout)) break; } + if (ret == 0) + outcome = true; } } cs_close(conn); @@ -1943,8 +1945,8 @@ bool yf::Zoom::Frontend::retry(mp::Package &package, package.log("zoom", YLOG_WARN, "search failed: trying next proxy"); return true; } - error = YAZ_BIB1_INIT_AC_AUTHENTICATION_SYSTEM_ERROR; - *addinfo = odr_strdup(odr, "proxy failure"); + error = YAZ_BIB1_PROXY_FAILURE; + *addinfo = odr_strdup(odr, b->m_proxy.c_str()); } else if (same_retries == 0 && proxy_retries == 0) {