summaryrefslogtreecommitdiff
path: root/mmap
diff options
context:
space:
mode:
authordgaudet <dgaudet@13f79535-47bb-0310-9956-ffa450edef68>2000-06-10 01:41:06 +0000
committerdgaudet <dgaudet@13f79535-47bb-0310-9956-ffa450edef68>2000-06-10 01:41:06 +0000
commit435681e018dbc8e58e253eeaa77a0aa45ea2c17d (patch)
tree89a71870d2c9abc97e0b0304ac891d60d3812dbf /mmap
parenteb7ec824ee3bb42f679828fec1f14b18620d034e (diff)
downloadlibapr-435681e018dbc8e58e253eeaa77a0aa45ea2c17d.tar.gz
don't seek when setting up an mmap
PR: Obtained from: Submitted by: Reviewed by: git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@60159 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'mmap')
-rw-r--r--mmap/unix/mmap.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/mmap/unix/mmap.c b/mmap/unix/mmap.c
index 504970a7e..a4800ddbb 100644
--- a/mmap/unix/mmap.c
+++ b/mmap/unix/mmap.c
@@ -95,8 +95,9 @@ ap_status_t ap_mmap_create(ap_mmap_t **new, ap_file_t *file, ap_off_t offset,
return APR_EBADF;
(*new) = (ap_mmap_t *)ap_pcalloc(cont, sizeof(ap_mmap_t));
- ap_seek(file, APR_SET, &offset);
#ifdef BEOS
+ /* XXX: mmap shouldn't really change the seek offset */
+ ap_seek(file, APR_SET, &offset);
pages = ((size -1) / B_PAGE_SIZE) + 1;
aid = create_area(areaname, &mm , B_ANY_ADDRESS, pages * B_PAGE_SIZE,
@@ -112,7 +113,7 @@ ap_status_t ap_mmap_create(ap_mmap_t **new, ap_file_t *file, ap_off_t offset,
(*new)->area = aid;
#else
- mm = mmap(NULL, size, PROT_READ, MAP_SHARED, file->filedes ,0);
+ mm = mmap(NULL, size, PROT_READ, MAP_SHARED, file->filedes, offset);
if (mm == (caddr_t)-1) {
/* we failed to get an mmap'd file... */