nginx-0.0.1-2002-12-21-20:14:50 import
diff --git a/src/core/ngx_config_file.c b/src/core/ngx_config_file.c
index b2b4b81..d161c54 100644
--- a/src/core/ngx_config_file.c
+++ b/src/core/ngx_config_file.c
@@ -183,7 +183,6 @@
                 return NGX_ERROR;
             }
 
-            cf->conf_file.file.offset += n;
             h->pos.mem = h->start + (h->pos.mem - start);
             start = h->start;
             h->last.mem = h->pos.mem + n;
diff --git a/src/core/ngx_file.h b/src/core/ngx_file.h
index d32c89b..e827aff 100644
--- a/src/core/ngx_file.h
+++ b/src/core/ngx_file.h
@@ -13,6 +13,8 @@
     ngx_str_t        name;
     ngx_file_info_t  info;
 
+    off_t            offset;
+
     ngx_log_t       *log;
 
     unsigned         info_valid:1;
diff --git a/src/os/unix/ngx_files.c b/src/os/unix/ngx_files.c
index 7a5caa5..c9e62b2 100644
--- a/src/os/unix/ngx_files.c
+++ b/src/os/unix/ngx_files.c
@@ -16,6 +16,8 @@
         return NGX_ERROR;
     }
 
+    file->offset += n;
+
     return n;
 }
 
diff --git a/src/os/win32/ngx_files.c b/src/os/win32/ngx_files.c
index ce0d3dd..47bf56d 100644
--- a/src/os/win32/ngx_files.c
+++ b/src/os/win32/ngx_files.c
@@ -12,5 +12,7 @@
         return NGX_ERROR;
     }
 
+    file->offset += n;
+
     return n;
 }