]> granicus.if.org Git - php/commitdiff
change to a pool-based bucket instead of a transient one.
authorIan Holsman <ianh@php.net>
Thu, 27 Mar 2003 05:31:49 +0000 (05:31 +0000)
committerIan Holsman <ianh@php.net>
Thu, 27 Mar 2003 05:31:49 +0000 (05:31 +0000)
sapi/apache2handler/sapi_apache2.c

index 2fadfedeaf1e8ae7600a0ed6a3d321a404131e94..809aa66270a3431c865225f6b73e74aca66151cf 100644 (file)
@@ -73,6 +73,7 @@ php_apache_sapi_ub_write(const char *str, uint str_length TSRMLS_DC)
        apr_bucket_brigade *brigade;
        request_rec *r;
        php_struct *ctx;
+       char *copy_str;
 
        if (str_length == 0) {
                return 0;
@@ -82,8 +83,9 @@ php_apache_sapi_ub_write(const char *str, uint str_length TSRMLS_DC)
        r = ctx->r;
        brigade = ctx->brigade;
        
-       bucket = apr_bucket_transient_create(str, str_length,
-                                                r->connection->bucket_alloc);
+       copy_str = apr_pmemdup( r->pool, str, str_length+1);
+       bucket = apr_bucket_pool_create(copy_str, str_length, r->pool, r->connection->bucket_alloc);
+                                                
        APR_BRIGADE_INSERT_TAIL(brigade, bucket);
 
        if (ap_pass_brigade(r->output_filters, brigade) != APR_SUCCESS) {