|
|
|
@ -248,6 +248,7 @@ static liHandlerResult proxy_handle(liVRequest *vr, gpointer param, gpointer *co
|
|
|
|
|
liBackendWait *bwait = (liBackendWait*) *context;
|
|
|
|
|
liBackendConnection *bcon = NULL;
|
|
|
|
|
proxy_context *ctx = (proxy_context*) param;
|
|
|
|
|
liBackendResult bres;
|
|
|
|
|
|
|
|
|
|
if (li_vrequest_is_handled(vr)) return LI_HANDLER_GO_ON;
|
|
|
|
|
|
|
|
|
@ -258,16 +259,15 @@ static liHandlerResult proxy_handle(liVRequest *vr, gpointer param, gpointer *co
|
|
|
|
|
return LI_HANDLER_ERROR;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch (li_backend_get(vr, ctx->pool, &bcon, &bwait)) {
|
|
|
|
|
bres = li_backend_get(vr, ctx->pool, &bcon, &bwait);
|
|
|
|
|
*context = bwait;
|
|
|
|
|
switch (bres) {
|
|
|
|
|
case LI_BACKEND_SUCCESS:
|
|
|
|
|
assert(NULL == bwait);
|
|
|
|
|
assert(NULL != bcon);
|
|
|
|
|
*context = bwait;
|
|
|
|
|
break;
|
|
|
|
|
case LI_BACKEND_WAIT:
|
|
|
|
|
assert(NULL != bwait);
|
|
|
|
|
*context = bwait;
|
|
|
|
|
|
|
|
|
|
return LI_HANDLER_WAIT_FOR_EVENT;
|
|
|
|
|
case LI_BACKEND_TIMEOUT:
|
|
|
|
|
li_vrequest_backend_dead(vr);
|
|
|
|
|