Commit graph

122 commits

Author SHA1 Message Date
Alexandre Julliard
e599584a68 ntdll: Make the heap structure more compatible with the NT layout. 2007-10-02 11:23:40 +02:00
Alexandre Julliard
80a6bb1d8b ntdll: Convert the subheap list to a standard list. 2007-10-02 11:23:38 +02:00
Alexandre Julliard
1d063ae18d ntdll: Remove assumptions that the subheap is at the beginning of the memory block. 2007-10-02 11:23:36 +02:00
Alexandre Julliard
d73dbecf68 ntdll: Clear heap blocks also for WARN_ON(heap). 2007-10-01 19:55:20 +02:00
Detlef Riekenberg
a45badf5c0 ntdll: Make RtlCompactHeap more silent. 2007-08-28 11:55:22 +02:00
Dmitry Timoshkov
e142779b09 ntdll: Fix compilation warnings in 64-bit mode. 2007-05-23 13:10:20 +02:00
Alexandre Julliard
cc54b7d9bd ntdll: Avoid overflows in heap allocations. Based on a patch by Rob Shearman. 2007-05-22 11:59:18 +02:00
Andrew Talbot
a22c7a6c34 kernel32: Constify a variable. 2007-05-03 14:23:31 +02:00
Vitaliy Margolen
5b4cfac3bf ntdll: Take size of the arena from the current pointer before advancing. 2007-04-12 16:41:01 +02:00
Alexandre Julliard
fd09846864 ntdll: Make test for heap boundaries more strict in HEAP_FindSubHeap. 2007-04-05 22:06:38 +02:00
Jan Zerebecki
aaf9a151c1 ntdll: Add DebugInfo to critical sections. 2007-03-12 13:38:35 +01:00
Alexandre Julliard
6f2dd76750 ntdll: Clear the DebugInfo field when a shared heap critical section is made global. 2007-02-06 18:02:16 +01:00
Alexandre Julliard
a10c40df23 ntdll: Added support for the HEAP_CREATE_ENABLE_EXECUTE flag. 2006-12-05 15:43:13 +01:00
Eric Pouech
f36fb2369e ntdll: Added debug support for notifying block allocation / freeing. 2006-10-20 13:50:04 +02:00
Hans Leidekker
f7b0ba7aa7 ntdll: Win64 printf format warning fixes. 2006-10-18 12:35:26 +02:00
Alexandre Julliard
d49884c3e9 ntdll: Simplify the sanity checks in RtlFreeHeap and RtlReAllocateHeap. 2006-07-21 13:22:13 +02:00
Alexandre Julliard
4ed286b431 ntdll: Set a proper HEAP_MIN_DATA_SIZE on 64-bit platforms. 2006-07-21 11:53:52 +02:00
Alexandre Julliard
1316334952 ntdll: Add a few more free list entries to the heap. 2006-07-21 11:53:24 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Ge van Geldorp
1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Francois Gouget
a8c7284f92 Assorted spelling fixes. 2005-09-26 10:58:41 +00:00
Alexandre Julliard
2cf740619f Fixed some trace format strings (reported by Gerald Pfeifer). 2005-09-18 11:15:16 +00:00
Alexandre Julliard
06ea6e6e3f Fixed a few pointer truncation bugs for 64-bit platforms. 2005-09-16 18:54:19 +00:00
Alexandre Julliard
20a1a203c6 Use a more portable scheme for storing the name of a critical
section.
2005-09-09 10:19:44 +00:00
Alexandre Julliard
7721b267f5 Fixed some confusion over whether HEAP_MIN_BLOCK_SIZE includes the
arena headers of not.
Free list sizes are constant so there's no need to store them in the
heap structure.
2005-08-15 20:49:47 +00:00
Alexandre Julliard
03c3b4e7e0 Converted the process heap list to a standard list. 2005-08-12 18:25:16 +00:00
Alexandre Julliard
c50597c94d Converted the heap free lists to standard lists. 2005-08-12 16:05:46 +00:00
Alexandre Julliard
5e787ba521 Hack to make the main heap critical section have a proper debug info
structure.
2005-08-03 16:03:15 +00:00
Dmitry Timoshkov
9bea3bfc96 Avoid unnecessary casts. 2005-07-15 11:44:46 +00:00
Dmitry Timoshkov
1dc18952ae Use SIZE_T type for size variables in NTDLL when appropriate. 2005-07-15 10:01:30 +00:00
Robert Shearman
38ba5fe0e0 - Make the value returned from HeapSize always match the requested
size passed into HeapAllocate/HeapReAllocate.
- Add a test for this behaviour.
2005-07-11 13:20:40 +00:00
Mike McCormack
6b636e3e7b Use RTL_CRITICAL_SECTION instead of CRITICAL_SECTION. 2005-06-25 18:00:57 +00:00
Alexandre Julliard
ddb002437b Don't require execute permission on the process heap. 2005-06-21 20:54:31 +00:00
Mike McCormack
04f9f1b066 Don't include winbase.h or winerror.h when not necessary. 2005-06-21 09:52:40 +00:00
Mike McCormack
5b2d5fd758 Use HANDLE instead of HKEY in the NT API. 2005-06-17 13:58:33 +00:00
Mike McCormack
65ad7da1f7 Fix some declaration and write string warnings. 2005-06-16 10:45:25 +00:00
Alexandre Julliard
bd000a0203 Removed some unnecessary inclusions of thread.h 2005-06-06 20:13:08 +00:00
Alexandre Julliard
e18ca98857 Removed last dependencies on 16-bit headers from ntdll. 2005-05-18 18:37:30 +00:00
Uwe Bonnes
bfb6d642dd Dump HeapWalk entries. 2005-03-03 13:50:21 +00:00
Jon Griffiths
eb5bf7dd38 Documentation spelling fixes. 2005-02-25 14:07:56 +00:00
Ivan Leo Puoti
d3edafe1e2 Replace GetCurrentProcess() with NtCurrentProcess() in ntdll. 2005-02-22 19:33:50 +00:00
Dmitry Timoshkov
a27be2db55 Make HeapFree(NULL) case faster by retrieving heap pointer after the
memory block pointer test.
2005-01-24 11:27:27 +00:00
Alexandre Julliard
1fd6264244 Fixed the FIXME in RtlNtStatusToDosError, and implemented
RtlGetLastNtStatus and RtlSetLastWin32ErrorAndNtStatusFromNtStatus.
2005-01-04 12:09:32 +00:00
Robert Shearman
2050591370 Fix NtAllocateVirtualMemory declaration and fix users of the
function.
2004-10-11 20:59:06 +00:00
Eric Pouech
db52588754 Const correctness. 2004-06-15 00:47:00 +00:00
Alexandre Julliard
9e73f55af3 Store the last error code at the TEB offset used by NT instead of the
Win9x one.
2003-11-25 01:53:23 +00:00
Dimitrie O. Paun
c762f5d7af RtlHeapReAllocate() should not allocate memory.
Add small test to make sure it doesn't return.
Don't import ntdll for tests, we need to load it dynamically.
2003-11-25 01:02:02 +00:00
Alexandre Julliard
410e6b7b39 Changed the init code to make libwine load only ntdll and transfer
control to it, and then have ntdll load kernel32 using the normal
loader mechanisms.
Get rid of BUILTIN32_LoadExeModule.
2003-10-10 00:12:17 +00:00
Pavel Roskin
91f234f267 Eliminate dependency on SetLastError(). 2003-10-08 19:10:33 +00:00
Alexandre Julliard
e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard
06e34ffc12 Minor tracing fix. 2003-08-12 20:34:06 +00:00
Eric Pouech
c962a6997c - in kernel32, replaced all {Enter|Leave}CriticalSection calls with
ntdll counterparts
- {Enter|Leave}CriticalSection is now a pure forward from kernel32 to
  ntdll (we now longer can use {Enter|Leave}CriticalSection in kernel32)
- replaced a few kernel32 heap management calls from ntdll, with
  RtlHeap* equivalents
2003-06-23 18:12:28 +00:00
Alexandre Julliard
6bc5091160 Start to make use of the proper PEB structure for process
information.
2003-05-22 03:44:01 +00:00
Dmitry Timoshkov
7baa67cbcb Added missing return in HEAP_ValidateInUseArena. 2003-05-12 03:32:07 +00:00
Alexandre Julliard
46adbecd13 Insert the last free block of a subheap at the end of the free list to
avoid using uncomitted space unless really necessary.
2003-04-14 21:44:21 +00:00
Alexandre Julliard
c44555bb37 Added support for marking heap blocks as inaccessible/uninitialized if
valgrind is installed, based on a patch by Adam Gundy.
2003-04-02 01:42:06 +00:00
Jon Griffiths
cd4234aa49 Documentation updates. 2003-03-18 18:35:48 +00:00
Alexandre Julliard
43690e9e47 Removed no longer needed inclusion of heap.h. 2003-01-24 00:54:58 +00:00
Dimitrie O. Paun
297f3d898d Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them. 2003-01-07 20:36:20 +00:00
Patrik Stridvall
75dee506ae Replace 0x%p with %p. 2002-12-05 19:56:15 +00:00
Andrew John Hughes
ed800c69c8 Build ntdll with -DSTRICT. 2002-11-21 03:45:01 +00:00
Alexandre Julliard
69d7cb5681 Avoid calling some kernel functions. 2002-09-18 23:13:35 +00:00
Alexandre Julliard
341b7dceb4 Implemented the ntdll virtual memory functions, and made the kernel
functions use them.
2002-09-17 18:54:42 +00:00
Francois Gouget
bba4bb1bc4 Remove references to PCVOID and LPUINT.
Remove types that don't exist on Windows.
2002-09-17 01:35:09 +00:00
Patrik Stridvall
9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Alexandre Julliard
a6cff2b3c8 We have to use the Rtl variant of Enter/LeaveCriticalSection inside
ntdll.
2002-07-31 17:56:54 +00:00
Alexandre Julliard
82696f43ee Make sure allocated blocks are aligned on an 8-byte boundary. 2002-07-01 18:41:47 +00:00
Alexandre Julliard
4301d3e5c6 Restored MakeCriticalSectionGlobal that got lost somewhere. 2002-06-13 21:46:46 +00:00
Vincent Béron
9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard
7fbd74ea55 Replaced the GET/PUT_UA macros by memcpy. Fixed a few big-endian
issues.
2002-05-23 02:53:10 +00:00
Alexandre Julliard
0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Alexandre Julliard
b0f586178a Moved heap functions to ntdll.
Got rid of internal heap flags.
Reimplemented MapLS to not depend on the segptr heap.
2001-12-19 19:16:27 +00:00