[prev in list] [next in list] [prev in thread] [next in thread]
List: apache-cvs
Subject: svn commit: r450188 - /httpd/httpd/trunk/modules/cache/mod_disk_cache.c
From: minfrin () apache ! org
Date: 2006-09-26 20:35:43
Message-ID: 20060926203543.2756D1A981A () eris ! apache ! org
[Download RAW message or body]
Author: minfrin
Date: Tue Sep 26 13:35:42 2006
New Revision: 450188
URL: http://svn.apache.org/viewvc?view=rev&rev=450188
Log:
Allocate the temporary copy file buffer from a pool.
Modified:
httpd/httpd/trunk/modules/cache/mod_disk_cache.c
Modified: httpd/httpd/trunk/modules/cache/mod_disk_cache.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/cache/mod_disk_cache.c?view=diff&rev=450188&r1=450187&r2=450188
==============================================================================
--- httpd/httpd/trunk/modules/cache/mod_disk_cache.c (original)
+++ httpd/httpd/trunk/modules/cache/mod_disk_cache.c Tue Sep 26 13:35:42 2006
@@ -985,7 +985,8 @@
}
-static apr_status_t copy_body(apr_file_t *srcfd, apr_off_t srcoff,
+static apr_status_t copy_body(apr_pool_t *p,
+ apr_file_t *srcfd, apr_off_t srcoff,
apr_file_t *destfd, apr_off_t destoff,
apr_off_t len)
{
@@ -993,7 +994,11 @@
apr_size_t size;
apr_finfo_t finfo;
apr_time_t starttime = apr_time_now();
- char buf[CACHE_BUF_SIZE];
+
+ char *buf = apr_palloc(p, CACHE_BUF_SIZE);
+ if (!buf) {
+ return APR_ENOMEM;
+ }
if(srcoff != 0) {
rc = apr_file_seek(srcfd, APR_SET, &srcoff);
@@ -1178,7 +1183,7 @@
e = APR_BRIGADE_FIRST(bb);
a = e->data;
- rv = copy_body(a->fd, e->start, dobj->tfd, 0,
+ rv = copy_body(r->pool, a->fd, e->start, dobj->tfd, 0,
dobj->file_size);
if(rv != APR_SUCCESS) {
ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic