modules/proxy/mod_proxy_fcgi.c:215: error: UNINITIALIZED_VALUE
  The value read from old_timeout was never initialized.

modules/proxy/mod_proxy_fcgi.c:215:15: 
213. 
214.     if (!blocking) {
215.         arv = apr_socket_timeout_set(s, old_timeout);
                   ^
216.         if ((arv != APR_SUCCESS) && (rv == APR_SUCCESS)) {
217.             return arv;

static apr_status_t send_data(proxy_conn_rec *conn,
                              struct iovec *vec,
                              int nvec,
                              apr_size_t *len,
                              int blocking)
{
    apr_status_t rv = APR_SUCCESS, arv;
    apr_size_t written = 0, to_write = 0;
    int i, offset;
    apr_interval_time_t old_timeout;
    apr_socket_t *s = conn->sock;
    if (!blocking) {
        arv = apr_socket_timeout_get(s, &old_timeout);
        if (arv != APR_SUCCESS) {
            return arv;
        }
        arv = apr_socket_timeout_set(s, 0);
        if (arv != APR_SUCCESS) {
            return arv;
        }
    }
    for (i = 0; i < nvec; i++) {
        to_write += vec[i].iov_len;
    }
    offset = 0;
    while (to_write) {
        apr_size_t n = 0;
        rv = apr_socket_sendv(s, vec + offset, nvec - offset, &n);
        if ((rv != APR_SUCCESS) && !APR_STATUS_IS_EAGAIN(rv)) {
            break;
        }
        if (n > 0) {
            written += n;
            if (written >= to_write)
                break;
            for (i = offset; i < nvec; ) {
                if (n >= vec[i].iov_len) {
                    offset++;
                    n -= vec[i++].iov_len;
                } else {
                    vec[i].iov_len -= n;
                    vec[i].iov_base = (char *) vec[i].iov_base + n;
                    break;
                }
            }
        }
    }
    conn->worker->s->transferred += written;
    *len = written;
    if (!blocking) {
        arv = apr_socket_timeout_set(s, old_timeout);
        if ((arv != APR_SUCCESS) && (rv == APR_SUCCESS)) {
            return arv;
        }
    }
    return rv;
}
['static apr_status_t send_data(proxy_conn_rec *conn,\n                              struct iovec *vec,\n                              int nvec,\n                              apr_size_t *len,\n                              int blocking)\n{\n    apr_status_t rv = APR_SUCCESS, arv;\n    apr_size_t written = 0, to_write = 0;\n    int i, offset;\n    apr_interval_time_t old_timeout;\n    apr_socket_t *s = conn->sock;\n    if (!blocking) {\n        arv = apr_socket_timeout_get(s, &old_timeout);\n        if (arv != APR_SUCCESS) {\n            return arv;\n        }\n        arv = apr_socket_timeout_set(s, 0);\n        if (arv != APR_SUCCESS) {\n            return arv;\n        }\n    }\n    for (i = 0; i < nvec; i++) {\n        to_write += vec[i].iov_len;\n    }\n    offset = 0;\n    while (to_write) {\n        apr_size_t n = 0;\n        rv = apr_socket_sendv(s, vec + offset, nvec - offset, &n);\n        if ((rv != APR_SUCCESS) && !APR_STATUS_IS_EAGAIN(rv)) {\n            break;\n        }\n        if (n > 0) {\n            written += n;\n            if (written >= to_write)\n                break;\n            for (i = offset; i < nvec; ) {\n                if (n >= vec[i].iov_len) {\n                    offset++;\n                    n -= vec[i++].iov_len;\n                } else {\n                    vec[i].iov_len -= n;\n                    vec[i].iov_base = (char *) vec[i].iov_base + n;\n                    break;\n                }\n            }\n        }\n    }\n    conn->worker->s->transferred += written;\n    *len = written;\n    if (!blocking) {\n        arv = apr_socket_timeout_set(s, old_timeout);\n        if ((arv != APR_SUCCESS) && (rv == APR_SUCCESS)) {\n            return arv;\n        }\n    }\n    return rv;\n}']