Commit 64672272 authored by Brian Pane's avatar Brian Pane
Browse files

Remove the generation of flush bucket in mod_logio, now that

the nonblocking ap_core_output_filter knows how to defer the
call to the logio hook until the last bucket is actually
written to the network.
(backport from async-dev branch to 2.3 trunk)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@327888 13f79535-47bb-0310-9956-ffa450edef68
parent 144a1333
Loading
Loading
Loading
Loading
+1 −17
Changes for modules/loggers/mod_logio.c: 1 added line, 17 removed lines.
Original line number Diff line number Diff line
@@ -100,7 +100,7 @@ static int logio_transaction(request_rec *r)
}

/*
 * Logging of input and output filters...
 * Logging of input filter...
 */

static apr_status_t logio_in_filter(ap_filter_t *f,
@@ -122,19 +122,6 @@ static apr_status_t logio_in_filter(ap_filter_t *f,
    return status;
}

static apr_status_t logio_out_filter(ap_filter_t *f,
                                     apr_bucket_brigade *bb) {
    apr_bucket *b = APR_BRIGADE_LAST(bb);

    /* End of data, make sure we flush */
    if (APR_BUCKET_IS_EOS(b)) {
        APR_BUCKET_INSERT_BEFORE(b,
                                 apr_bucket_flush_create(f->c->bucket_alloc));
    }

    return ap_pass_brigade(f->next, bb);
}

/*
 * The hooks...
 */
@@ -145,7 +132,6 @@ static int logio_pre_conn(conn_rec *c, void *csd) {
    ap_set_module_config(c->conn_config, &logio_module, cf);

    ap_add_input_filter(logio_filter_name, NULL, NULL, c);
    ap_add_output_filter(logio_filter_name, NULL, NULL, c);

    return OK;
}
@@ -174,8 +160,6 @@ static void register_hooks(apr_pool_t *p)

    ap_register_input_filter(logio_filter_name, logio_in_filter, NULL,
                             AP_FTYPE_NETWORK - 1);
    ap_register_output_filter(logio_filter_name, logio_out_filter, NULL,
                              AP_FTYPE_NETWORK - 1);

    APR_REGISTER_OPTIONAL_FN(ap_logio_add_bytes_out);
}