diff options
| author | Vincent-Michael <Vincent_Michael@gmx.de> | 2014-08-26 19:21:22 +0200 |
|---|---|---|
| committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2014-08-26 19:21:22 +0200 |
| commit | 741f3dde2e880baf3439fe60f7166cea14b70196 (patch) | |
| tree | c7f49c46c258d1a587dee4b4367f5436a833c93e /dep/mysqllite/mysys/my_mmap.c | |
| parent | 67fc6a9b42879bc6ea9010293780d4f82d9cb09e (diff) | |
| parent | febb26d4b711762b1ee605705e7fa949b9871df1 (diff) | |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts:
dep/PackageList.txt
src/server/game/Spells/Auras/SpellAuras.cpp
Diffstat (limited to 'dep/mysqllite/mysys/my_mmap.c')
| -rw-r--r-- | dep/mysqllite/mysys/my_mmap.c | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/dep/mysqllite/mysys/my_mmap.c b/dep/mysqllite/mysys/my_mmap.c deleted file mode 100644 index 82ee1562bc2..00000000000 --- a/dep/mysqllite/mysys/my_mmap.c +++ /dev/null @@ -1,88 +0,0 @@ -/* Copyright (C) 2000-2003 MySQL AB - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; version 2 of the License. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ - -#include "mysys_priv.h" - -#ifdef HAVE_SYS_MMAN_H - -/* - system msync() only syncs mmap'ed area to fs cache. - fsync() is required to really sync to disc -*/ -int my_msync(int fd, void *addr, size_t len, int flags) -{ - msync(addr, len, flags); - return my_sync(fd, MYF(0)); -} - -#elif defined(_WIN32) - -static SECURITY_ATTRIBUTES mmap_security_attributes= - {sizeof(SECURITY_ATTRIBUTES), 0, TRUE}; - -void *my_mmap(void *addr, size_t len, int prot, - int flags, File fd, my_off_t offset) -{ - HANDLE hFileMap; - LPVOID ptr; - HANDLE hFile= (HANDLE)my_get_osfhandle(fd); - DBUG_ENTER("my_mmap"); - DBUG_PRINT("mysys", ("map fd: %d", fd)); - - if (hFile == INVALID_HANDLE_VALUE) - DBUG_RETURN(MAP_FAILED); - - hFileMap=CreateFileMapping(hFile, &mmap_security_attributes, - PAGE_READWRITE, 0, (DWORD) len, NULL); - if (hFileMap == 0) - DBUG_RETURN(MAP_FAILED); - - ptr=MapViewOfFile(hFileMap, - prot & PROT_WRITE ? FILE_MAP_WRITE : FILE_MAP_READ, - (DWORD)(offset >> 32), (DWORD)offset, len); - - /* - MSDN explicitly states that it's possible to close File Mapping Object - even when a view is not unmapped - then the object will be held open - implicitly until unmap, as every view stores internally a handler of - a corresponding File Mapping Object - */ - CloseHandle(hFileMap); - - if (ptr) - { - DBUG_PRINT("mysys", ("mapped addr: %p", ptr)); - DBUG_RETURN(ptr); - } - - DBUG_RETURN(MAP_FAILED); -} - -int my_munmap(void *addr, size_t len) -{ - DBUG_ENTER("my_munmap"); - DBUG_PRINT("mysys", ("unmap addr: %p", addr)); - DBUG_RETURN(UnmapViewOfFile(addr) ? 0 : -1); -} - -int my_msync(int fd, void *addr, size_t len, int flags) -{ - return FlushViewOfFile(addr, len) ? 0 : -1; -} - -#else -#warning "no mmap!" -#endif - |
