summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <svoj@april.(none)>2006-04-24 20:19:32 +0500
committerunknown <svoj@april.(none)>2006-04-24 20:19:32 +0500
commit3f63edb362e89df761e575842ac39ef4c86a664c (patch)
tree73179356b0d3181794bf75382c580f42b9fb752f
parent9aa91f2a17539fd2f1abf0a664bcb26d3607824f (diff)
downloadmariadb-git-3f63edb362e89df761e575842ac39ef4c86a664c.tar.gz
after merge fix
-rw-r--r--storage/myisam/mi_dynrec.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/storage/myisam/mi_dynrec.c b/storage/myisam/mi_dynrec.c
index 36d88bd362a..9d76a1fb9a5 100644
--- a/storage/myisam/mi_dynrec.c
+++ b/storage/myisam/mi_dynrec.c
@@ -67,6 +67,11 @@ static int _mi_cmp_buffer(File file, const byte *buff, my_off_t filepos,
my_bool mi_dynmap_file(MI_INFO *info, my_off_t size)
{
DBUG_ENTER("mi_dynmap_file");
+ if (size > (my_off_t) (~((size_t) 0)) - MEMMAP_EXTRA_MARGIN)
+ {
+ DBUG_PRINT("warning", ("File is too large for mmap"));
+ DBUG_RETURN(1);
+ }
info->s->file_map= (byte*)
my_mmap(0, (size_t)(size + MEMMAP_EXTRA_MARGIN),
info->s->mode==O_RDONLY ? PROT_READ :