diff options
author | Igor Sysoev <igor@sysoev.ru> | 2003-10-27 08:53:49 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2003-10-27 08:53:49 +0000 |
commit | 10fc9ef77503ec4db5f5006557aeffc1939043ca (patch) | |
tree | 48dd22fcf5c6defd2960156f24a8b07757a7c6da /src/core/ngx_file.c | |
parent | 6414b96ebc50f42bf878aa84839921ab0aa9f4df (diff) | |
download | nginx-10fc9ef77503ec4db5f5006557aeffc1939043ca.tar.gz nginx-10fc9ef77503ec4db5f5006557aeffc1939043ca.zip |
nginx-0.0.1-2003-10-27-11:53:49 import
Diffstat (limited to 'src/core/ngx_file.c')
-rw-r--r-- | src/core/ngx_file.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/core/ngx_file.c b/src/core/ngx_file.c index 2383e5c52..84e86fffc 100644 --- a/src/core/ngx_file.c +++ b/src/core/ngx_file.c @@ -7,6 +7,27 @@ static int ngx_temp_number; static int ngx_random; +int ngx_write_chain_to_temp_file(ngx_temp_file_t *tf, ngx_chain_t *chain) +{ + int rc; + + if (tf->file.fd == NGX_INVALID_FILE) { + rc = ngx_create_temp_file(&tf->file, &tf->path, tf->pool, + tf->persistent); + + if (rc == NGX_ERROR || rc == NGX_AGAIN) { + return rc; + } + + if (!tf->persistent && tf->warn) { + ngx_log_error(NGX_LOG_WARN, tf->file.log, 0, tf->warn); + } + } + + return ngx_write_chain_to_file(&tf->file, chain, tf->file.offset, tf->pool); +} + + int ngx_create_temp_file(ngx_file_t *file, ngx_path_t *path, ngx_pool_t *pool, int persistent) { |