bffc60d14c
improvements (as well as dozens of portability fixes by myself) and, with the patch for [1] finally works on FreeBSD again, unlike all versions after 20040505. PR: 73092 [1] Submitted by: Simon 'corecode' Schubert <corecode@fs.ei.tum.de> [1]
29 lines
1.3 KiB
Text
29 lines
1.3 KiB
Text
Index: dlls/ntdll/virtual.c
|
|
===================================================================
|
|
RCS file: /home/wine/wine/dlls/ntdll/virtual.c,v
|
|
retrieving revision 1.41
|
|
diff -u -3 -p -r1.41 virtual.c
|
|
--- dlls/ntdll/virtual.c 11 Oct 2004 20:59:06 -0000 1.41
|
|
+++ dlls/ntdll/virtual.c 3 Dec 2004 04:06:42 -0000
|
|
@@ -119,6 +119,12 @@ static CRITICAL_SECTION csVirtual = { &c
|
|
/* Note: these are Windows limits, you cannot change them. */
|
|
# define ADDRESS_SPACE_LIMIT ((void *)0xc0000000) /* top of the total available address space */
|
|
# define USER_SPACE_LIMIT ((void *)0x80000000) /* top of the user address space */
|
|
+# ifdef __FreeBSD__
|
|
+# define LOW_SPACE_LIMIT ((void *)0x110000) /* lower address space limit */
|
|
+# else
|
|
+# define LOW_SPACE_LIMIT NULL
|
|
+# endif
|
|
+
|
|
#else
|
|
static UINT page_shift;
|
|
static UINT page_mask;
|
|
@@ -600,7 +606,7 @@ static NTSTATUS map_view( struct file_vi
|
|
|
|
for (;;)
|
|
{
|
|
- if ((ptr = wine_anon_mmap( NULL, view_size, VIRTUAL_GetUnixProt(vprot), 0 )) == (void *)-1)
|
|
+ if ((ptr = wine_anon_mmap( LOW_SPACE_LIMIT, view_size, VIRTUAL_GetUnixProt(vprot), 0 )) == (void *)-1)
|
|
{
|
|
if (errno == ENOMEM) return STATUS_NO_MEMORY;
|
|
return STATUS_INVALID_PARAMETER;
|