Changed timmons to helmet, but this should be loaded from the registry.
[reactos.git] / reactos / ChangeLog
1 2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
2
3 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): Treat a write attempt with
4 a return value of STATUS_END_OF_FILE as a successful write.
5 * ntoskrnl/cc/copy.c (WriteCacheSegment): Ditto.
6
7 2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
8
9 * ntoskrnl/cm/regfile.c (CmiRemoveSubKey): Kill warnings.
10 (CmiMergeFree): Ditto.
11
12 2003-02-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
13
14 * include/structs.h (OSVERSIONINFOEXA): Expand definition of
15 OSVERSIONINFOA.
16 (OSVERSIONINFOEXW): Expand definition of OSVERSIONINFOW.
17 * lib/msafd/misc/helpers.c (LocateHelperDLL): Cast AddressFamily,
18 SocketType, and Protocol to INT.
19 * lib/ws2_32/misc/catalog.c (LocateProvider): Ditto.
20
21 2003-01-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
22
23 * ntoskrnl/dbg/profile.c (KdbProfilerThreadMain): Make STDCALL.
24
25 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
26
27 * drivers/net/tcpip/makefile (TCP_OBJECTS): Add transport/tcp/tcpcore.o,
28 transport/tcp/tcp_input.o, transport/tcp/tcp_ipv4.o,
29 transport/tcp/tcp_output.o, and transport/tcp/tcp_timer.o.
30 * drivers/net/tcpip/transport/tcp/tcp.c (TCPStartup): Call tcp_init().
31 * drivers/net/tcpip/include/linux.h: New file.
32 * drivers/net/tcpip/include/tcpcore.h: Ditto.
33 * drivers/net/tcpip/include/tcpdef.h: Ditto.
34 * drivers/net/tcpip/transport/tcp/tcp_input.c: Ditto.
35 * drivers/net/tcpip/transport/tcp/tcp_ipv4.c: Ditto.
36 * drivers/net/tcpip/transport/tcp/tcp_output.c: Ditto.
37 * drivers/net/tcpip/transport/tcp/tcp_timer.c: Ditto.
38 * drivers/net/tcpip/transport/tcp/tcpcore.c: Ditto.
39
40 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
41
42 * lib/kernel32/k32.h: New file.
43 * lib/kernel32/makefile (TARGET_CFLAGS): Add -I./.
44 (TARGET_PCH): Set to k32.h.
45 * lib/kernel32/except/except.c: Use <k32.h>.
46 * lib/kernel32/file/backup.c: Ditto.
47 * lib/kernel32/file/cnotify.c: Ditto.
48 * lib/kernel32/file/copy.c: Ditto.
49 * lib/kernel32/file/create.c: Ditto.
50 * lib/kernel32/file/curdir.c: Ditto.
51 * lib/kernel32/file/delete.c: Ditto.
52 * lib/kernel32/file/deviceio.c: Ditto.
53 * lib/kernel32/file/dir.c: Ditto.
54 * lib/kernel32/file/dosdev.c: Ditto.
55 * lib/kernel32/file/file.c: Ditto.
56 * lib/kernel32/file/find.c: Ditto.
57 * lib/kernel32/file/iocompl.c: Ditto.
58 * lib/kernel32/file/lfile.c: Ditto.
59 * lib/kernel32/file/lock.c: Ditto.
60 * lib/kernel32/file/mailslot.c: Ditto.
61 * lib/kernel32/file/move.c: Ditto.
62 * lib/kernel32/file/npipe.c: Ditto.
63 * lib/kernel32/file/pipe.c: Ditto.
64 * lib/kernel32/file/rw.c: Ditto.
65 * lib/kernel32/file/tape.c: Ditto.
66 * lib/kernel32/file/volume.c: Ditto.
67 * lib/kernel32/mem/global.c: Ditto.
68 * lib/kernel32/mem/heap.c: Ditto.
69 * lib/kernel32/mem/isbad.c: Ditto.
70 * lib/kernel32/mem/local.c: Ditto.
71 * lib/kernel32/mem/procmem.c: Ditto.
72 * lib/kernel32/mem/section.c: Ditto.
73 * lib/kernel32/mem/virtual.c: Ditto.
74 * lib/kernel32/misc/atom.c: Ditto.
75 * lib/kernel32/misc/comm.c: Ditto.
76 * lib/kernel32/misc/console.c: Ditto.
77 * lib/kernel32/misc/debug.c: Ditto.
78 * lib/kernel32/misc/dllmain.c: Ditto.
79 * lib/kernel32/misc/env.c: Ditto.
80 * lib/kernel32/misc/error.c: Ditto.
81 * lib/kernel32/misc/handle.c: Ditto.
82 * lib/kernel32/misc/ldr.c: Ditto.
83 * lib/kernel32/misc/profile.c: Ditto.
84 * lib/kernel32/misc/res.c: Ditto.
85 * lib/kernel32/misc/stubs.c: Ditto.
86 * lib/kernel32/misc/sysinfo.c: Ditto.
87 * lib/kernel32/misc/time.c: Ditto.
88 * lib/kernel32/process/cmdline.c: Ditto.
89 * lib/kernel32/process/create.c: Ditto.
90 * lib/kernel32/process/proc.c: Ditto.
91 * lib/kernel32/process/session.c: Ditto.
92 * lib/kernel32/string/lstring.c: Ditto.
93 * lib/kernel32/synch/critical.c: Ditto.
94 * lib/kernel32/synch/event.c: Ditto.
95 * lib/kernel32/synch/intrlck.c: Ditto.
96 * lib/kernel32/synch/mutex.c: Ditto.
97 * lib/kernel32/synch/sem.c: Ditto.
98 * lib/kernel32/synch/timer.c: Ditto.
99 * lib/kernel32/synch/wait.c: Ditto.
100 * lib/kernel32/thread/fiber.c: Ditto.
101 * lib/kernel32/thread/thread.c: Ditto.
102 * lib/kernel32/thread/tls.c: Ditto.
103
104 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
105
106 * apps/testsets/Makefile (TEST_SETS): Remove ldr.
107 * include/msvcrt/ctype.h (towupper): Make returntype wchar_t.
108
109 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
110
111 * tools/rtouch.c: Include <sys/utime.h>, not <utime.h>.
112
113 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
114
115 * tools/rtouch.c: New file.
116 * rules.mak (ROS_USE_PCH): Default to no.
117 (RTOUCH): Define.
118 * tools/Makefile: Add rtouch utility.
119 * tools/helper.mk: Support precompiled headers.
120
121 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
122
123 * ntoskrnl/dbg/profile.c: New file.
124 * ntoskrnl/Makefile (OBJECTS_KDBG): Add dbg/profile.o.
125 * ntoskrnl/dbg/kdb.h: Define NTOS_MODE_KERNEL. Include <ntos.h>.
126 (LdrGetAddressInformation, KdbInitProfiling, KdbInitProfiling2,
127 KdbDisableProfiling, KdbEnableProfiling, KdbProfileInterrupt) Prototype.
128 * ntoskrnl/kd/kdebug.c (KdInitSystem): Add /PROFILE option if KDBG=1.
129 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Call KdbInitProfiling2()
130 if KDBG=1.
131 * ntoskrnl/ke/i386/irq.c: Include <../dbg/kdb.h> if KDBG=1.
132 (KiInterruptDispatch): Call KdbProfileInterrupt() on timer interrupt
133 if KDBG=1.
134
135 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
136
137 * drivers/fs/vfat/create.c (VfatSupersedeFile): Only notify cache manager
138 about change in file size if caching is initiated on the file stream.
139
140 2003-01-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
141
142 * boot.bat: Use DOS end-of-line characters.
143
144 2003-01-02 Casper S. Hornstrup <chorns@users.sourceforge.net>
145
146 * ntoskrnl/ke/timer.c (KeExpireTimers): Avoid signed/unsigned comparison
147 warning.
148 * lib/user32/controls/scrollbar.c (SCROLL_DrawScrollBar): Put a statement
149 at end.
150
151 2002-12-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
152
153 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Only uninitialize caching
154 when initialized.
155 * drivers/fs/vfat/fcb.c (vfatReleaseFCB): Ditto.
156 * lib/kernel32/mem/section.c (CreateFileMappingW): Pass NULL as
157 MaximumSize to NtCreateSection if dwMaximumSizeHigh and dwMaximumSizeLow
158 are both 0.
159 * ntoskrnl/cc/pin.c (CcMapData): Assert if Bcb is NULL.
160 * ntoskrnl/cc/view.c (CcRosReleaseCacheSegment, CcRosLookupCacheSegment,
161 CcRosMarkDirtyCacheSegment, CcRosUnmapCacheSegment,
162 CcRosCreateCacheSegment, CcRosGetCacheSegmentChain,
163 CcRosGetCacheSegment, CcRosRequestCacheSegment, CcFlushCache,
164 CcRosDeleteFileCache, CcRosReferenceCache, CcRosDereferenceCache,
165 CcRosReleaseFileCache, CcGetFileObjectFromSectionPtrs): Ditto.
166 * ntoskrnl/mm/section.c (MiReadPage): Assert if Fcb->Bcb is NULL.
167 (MmCreateDataFileSection): Make sure caching is initialized for the file
168 stream.
169
170 2002-11-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
171
172 * include/ddk/ldrtypes.h: Move ...
173 * include/ntos/ldrtypes.h: ... here.
174 * include/ddk/ntddk.h: Include ldrtypes.h at new location.
175
176 2002-11-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
177
178 * drivers/bus/acpi/ospm/osl.c (acpi_os_readable, acpi_os_writable):
179 Match prototypes.
180 * include/ascii.h (AbortSystemShutdownA): Correct prototype.
181 * include/debug.h (assert): Wrap in #ifndef assert.
182 * include/funcs.h (AbortSystemShutdown): Remove duplicate prototype.
183 * include/ddk/rtltypes.h: Move ...
184 * include/ntos/rtltypes.h: ... here.
185 * include/ddk/rtl.h: Move ...
186 * include/ntos/rtl.h: ... here.
187 * include/ddk/zwtypes.h: Move ...
188 * include/ntos/zwtypes.h: ... here.
189 * include/ddk/zw.h: Move ...
190 * include/ntos/zw.h: ... here.
191 | include/ddk/cmfuncs.h: Remove file; Move NtCreateKey to ntos/zw.h.
192 * include/ntos.h: #include ntos/rtltypes.h, ntos/rtl.h, ntos/zwtypes.h,
193 and ntos/zw.h.
194 * include/unicode.h: (AbortSystemShutdownW): Correct prototype.
195 * include/ddk/ntddk.h: Include headers at new location; Don't include
196 removed files.
197 * include/defines.h: Wrap definitions in w32api in #ifndef __USE_W32API.
198 * include/ntos/zwtypes.h: Ditto.
199 * include/napi/lpc.h: Ditto.
200 * include/napi/shared_data.h: Ditto.
201 * include/napi/teb.h: Ditto.
202 * include/napi/types.h: Ditto.
203 * include/ntdll/ldr.h: Ditto.
204 * include/ntdll/rtl.h: Ditto.
205 * include/ntos/console.h: Ditto.
206 * include/ntos/disk.h: Ditto.
207 * include/ntos/except.h: Ditto.
208 * include/ntos/file.h: Ditto.
209 * include/ntos/gditypes.h: Ditto.
210 * include/ntos/heap.h: Ditto.
211 * include/ntos/keyboard.h: Ditto.
212 * include/ntos/mm.h: Ditto.
213 * include/ntos/ntdef.h: Ditto.
214 * include/ntos/ps.h: Ditto.
215 * include/ntos/registry.h: Ditto.
216 * include/ntos/security.h: Ditto.
217 * include/ntos/synch.h: Ditto.
218 * include/ntos/time.h: Ditto.
219 * include/ntos/types.h: Ditto.
220 * include/ntos/port.h: Ditto.
221 * lib/advapi32/misc/shutdown.c (AbortSystemShutdownW,
222 AbortSystemShutdownA): Correct prototype.
223 * lib/advapi32/reg/reg.c: #include ntos.h.
224 * lib/advapi32/sec/misc.c: Ditto.
225 * lib/advapi32/sec/sid.c: Ditto.
226 * lib/advapi32/service/sctrl.c: Ditto.
227 * lib/advapi32/token/token.c: Ditto.
228 * lib/kernel32/misc/dllmain.c: Ditto.
229 * ntoskrnl/ex/napi.c: Ditto.
230 * ntoskrnl/rtl/i386/exception.c: Ditto.
231 * lib/advapi32/sec/ac.c: Ditto.
232 (FindFirstFreeAce, GetAce): Change PACE* to PACE_HEADER*.
233 * lib/advapi32/service/scm.c (EnumServicesStatusExA,
234 EnumServicesStatusExW, QueryServiceStatusEx): Correct prototype.
235 * lib/ntdll/rtl/ppb.c (RtlDestroyProcessParameters): Match prototype.
236 * ntoskrnl/dbg/errinfo.c (DbgGetErrorText): Use %08x, not %08lx.
237 * ntoskrnl/io/arcname.c (IoCreateSystemRootLink): Use %u, not %lu.
238 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Ditto.
239 * (_main): Use %d, not %ld.
240 * ntoskrnl/include/internal/i386/ke.h: Add #pragma GCC system_header.
241 * include/ddk/ntdef.h (NTSYSAPI, NTAPI, NTKERNELAPI): Define to STDCALL;
242 Check if already defined.
243 * include/base.h (STDCALL, CDECL, CALLBACK, PASCAL): Move to ntos/types.h.
244
245 2002-11-13 Rick Gaiser <RickG81@Wanadoo.nl>
246
247 * drivers/bus/isapnp/isapnp.c (FindNextReadPort): Increment Port before
248 checking wether port address is in NE2000 address space range and returning
249 port address value.
250
251 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
252
253 * drivers/bus/acpi/include/acpi.h: Include platform/types.h.
254 * drivers/bus/acpi/include/actypes.h: (UINT8, BOOLEAN, UCHAR, UINT16,
255 INT32, UINT32, UINT64): Disable, use the OS defined types instead.
256 * drivers/bus/acpi/include/platform/types.h: Remove all types,
257 include ntos.h instead.
258 * drivers/bus/acpi/ospm/include/acpisys.h: Don't include
259 platform/types.h.
260
261 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
262
263 * include/defines.h: Fix warnings when bulding with gcc 3.3.
264 * include/ddk/status.h: Ditto.
265 * include/freetype/internal/ftdebug.h: Ditto.
266 * include/net/ndis.h: Ditto.
267 * lib/msafd/misc/helpers.c: Ditto.
268 * lib/user32/windows/defwnd.c: Ditto.
269 * lib/user32/windows/window.c: Ditto.
270 * ntoskrnl/cm/ntfunc.c: Ditto.
271 * ntoskrnl/cm/regfile.c: Ditto.
272 * ntoskrnl/cm/regobj.c: Ditto.
273 * ntoskrnl/dbg/errinfo.c: Ditto.
274 * ntoskrnl/ex/hashtab.c: Ditto.
275 * ntoskrnl/include/internal/mm.h: Ditto.
276 * ntoskrnl/io/irp.c: Ditto.
277 * ntoskrnl/kd/gdbstub.c: Ditto.
278 * ntoskrnl/ke/queue.c: Ditto.
279 * ntoskrnl/ke/sem.c: Ditto.
280 * ntoskrnl/ldr/resource.c: Ditto.
281 * ntoskrnl/mm/balance.c: Ditto.
282 * ntoskrnl/mm/freelist.c: Ditto.
283 * ntoskrnl/mm/mdl.c: Ditto.
284 * ntoskrnl/mm/npool.c: Ditto.
285 * ntoskrnl/mm/section.c: Ditto.
286 * ntoskrnl/rtl/error.c: Ditto.
287 * ntoskrnl/rtl/mem.c: Ditto.
288 * ntoskrnl/rtl/string.c: Ditto.
289 * ntoskrnl/rtl/time.c: Ditto.
290 * ntoskrnl/rtl/unicode.c: Ditto.
291 * ntoskrnl/rtl/wstring.c: Ditto.
292 * ntoskrnl/rtl/i386/exception.c: Ditto.
293 * subsys/win32k/freetype/src/base/ftinit.c: Ditto.
294
295 2002-11-03 Casper S. Hornstrup <chorns@users.sourceforge.net>
296
297 * apps/tests/lpc/lpcclt.c: Change LPC_MESSAGE_HEADER to LPC_MESSAGE.
298 * include/csrss/csrss.h: Ditto.
299 * include/lsass/lsass.h: Ditto.
300 * include/napi/dbg.h: Ditto.
301 * include/napi/lpc.h: Ditto.
302 * lib/kernel32/misc/console.c: Ditto.
303 * lib/ntdll/csr/lpc.c: Ditto.
304 * lib/ntdll/dbg/debug.c: Ditto.
305 * lib/secur32/lsa.c: Ditto.
306 * ntoskrnl/dbg/user.c: Ditto.
307 * ntoskrnl/include/internal/port.h: Ditto.
308 * ntoskrnl/lpc/connect.c: Ditto.
309 * ntoskrnl/lpc/reply.c: Ditto.
310 * ntoskrnl/ps/process.c: Ditto.
311 * subsys/csrss/api/conio.c: Ditto.
312 * subsys/csrss/api/process.c: Ditto.
313 * subsys/csrss/api/user.c: Ditto.
314
315 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
316
317 * lib/msvcrt/except/seh.s: Fix end-of-line formatting.
318 * lib/ntdll/rtl/i386/exception.c: Ditto.
319 * lib/ntdll/rtl/i386/except.s: Ditto.
320 * ntoskrnl/rtl/i386/except.s: Ditto.
321 * ntoskrnl/rtl/i386/seh.s: Ditto.
322
323 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
324
325 * lib/msvcrt/Makefile (OBJECTS_EXCEPT): Add except/seh.o; Remove
326 except/exhand3.o.
327 * lib/msvcrt/except/exhand2.c (MsvcrtDebug): New function.
328 * lib/msvcrt/except/unwind.c (PEXCEPTION_FRAME): Remove.
329 (_global_unwind2): Correct prototype.
330 * lib/ntdll/makefile (RTL_I386_OBJECTS, ARCH_OBJECTS): New groups.
331 (TARGET_OBJECTS): Add ARCH_OBJECTS group.
332 * lib/ntdll/rtl/exception.c (KiUserExceptionDispatcher): Set
333 NumberParameters in exception record.
334 (RtlRaiseStatus): Remove.
335 * ntoskrnl/Makefile (OBJECTS_RTL): Remove rtl/seh.o.
336 (OBJECTS_RTL_I386): Add rtl/i386/except.o, rtl/i386/exception.o, and
337 rtl/i386/seh.o.
338 * ntoskrnl/ke/catch.c (RtlpExecuteHandlerForException,
339 RtlpDumpExceptionRegistrations, RtlpDispatchException,
340 RtlpExecuteHandler, RtlpExceptionHandler, RtlpUnwindHandler,
341 RtlpExecuteHandlerForException, RtlpExecuteHandlerForUnwind,
342 RtlUnwind): Remove.
343 (RtlpDispatchException): Add prototype.
344 * ntoskrnl/ke/i386/usertrap.c (ExceptionTypeStrings): Remove.
345 * ntoskrnl/ps/create.c (PsCreateTeb): Mark end of exception
346 registration list.
347 * tools/helper.mk (TARGET_ASFLAGS): Add -g if DBG = 1.
348 * lib/msvcrt/except/exhand3.c: Remove.
349 * ntoskrnl/rtl/seh.c: Ditto.
350 * lib/msvcrt/except/seh.s: New file.
351 * lib/ntdll/rtl/i386/except.s: Ditto.
352 * lib/ntdll/rtl/i386/exception.c: Ditto.
353 * ntoskrnl/rtl/i386/except.s: Ditto.
354 * ntoskrnl/rtl/i386/exception.c: Ditto.
355 * ntoskrnl/rtl/i386/seh.s: Ditto.
356
357 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
358
359 * lib/kernel32/process/create.c (_except_handler): New function.
360 (BaseProcessStart): Ditto.
361 (KlCreateFirstThread): Return INVALID_HANDLE_VALUE on error; Call
362 BaseProcessStart() before process entry point.
363 * lib/kernel32/thread/thread.c (_except_handler): New function.
364 (ThreadStartup): Protect thread using SEH constructs.
365
366 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
367
368 * include/ddk/zw.h (NtProcessStartup): Use standard calling convention.
369 * subsys/csrss/csrss.c (NtProcessStartup): Ditto.
370 * subsys/smss/smss.c (NtProcessStartup): Ditto.
371 * subsys/system/autochk/autochk.c (NtProcessStartup): Ditto.
372 * subsys/system/usetup/usetup.c (NtProcessStartup): Ditto.
373
374 2002-10-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
375
376 * apps/tests/tokentest/tokentest.c (ROS_ACE_HEADER): Move field
377 AccessMask ...
378 (ROS_ACE): ... here.
379 (DisplayDacl): Make pAce an ROS_ACE*; Use new path for AceType; Use
380 sizeof(ACE) instead of sizeof(ACE_HEADER).
381 * include/ntos/security.h (ACE_HEADER): Move field AccessMask ...
382 (ACE): ... here.
383 * lib/ntdll/rtl/acl.c: Use new path for AccessMask.
384 * ntoskrnl/se/semgr.c: Ditto.
385 * ntoskrnl/se/acl.c (SepInitDACLs): Use new path for AccessMask; Use
386 sizeof(ACE) instead of sizeof(ACE_HEADER).
387 * ntoskrnl/se/token.c (SepCreateSystemProcessToken): Use sizeof(ACE)
388 instead of sizeof(ACE_HEADER).
389
390 2002-10-20 Casper S. Hornstrup <chorns@users.sourceforge.net>
391
392 * include/napi/teb.h (RTL_USER_PROCESS_PARAMETERS): Use field names
393 as described in Windows NT/2000 Native API Reference.
394 * lib/kernel32/file/file.c: Use new field names.
395 * lib/kernel32/misc/console.c: Ditto.
396 * lib/kernel32/process/create.c: Ditto.
397 * lib/kernel32/process/proc.c: Ditto.
398 * lib/ntdll/rtl/path.c: Ditto.
399 * lib/ntdll/rtl/ppb.c: Ditto.
400 * lib/ntdll/rtl/process.c: Ditto.
401
402 2002-10-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
403
404 * include/ntos.h: Include relevant files.
405 * include/internal/ke.h: Include files relative to
406 ntoskrnl/include.
407 * include/internal/arch/ke.h: Ditto.
408
409 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
410
411 * drivers/dd/floppy/floppy.c: Changed PAGESIZE to PAGE_SIZE.
412 * drivers/fs/cdfs/fcb.c: Ditto.
413 * drivers/fs/cdfs/fsctl.c: Ditto.
414 * drivers/fs/cdfs/rw.c: Ditto.
415 * drivers/fs/ext2/dir.c: Ditto.
416 * drivers/fs/ext2/inode.c: Ditto.
417 * drivers/fs/ext2/rw.c: Ditto.
418 * drivers/fs/ext2/super.c: Ditto.
419 * drivers/fs/minix/blockdev.c: Ditto.
420 * drivers/fs/minix/cache.c: Ditto.
421 * drivers/fs/minix/inode.c: Ditto.
422 * drivers/fs/minix/rw.c: Ditto.
423 * drivers/fs/ntfs/fcb.c: Ditto.
424 * drivers/fs/ntfs/ntfs.h: Ditto.
425 * drivers/fs/vfat/create.c: Ditto.
426 * drivers/fs/vfat/direntry.c: Ditto.
427 * drivers/fs/vfat/dirwr.c: Ditto.
428 * drivers/fs/vfat/fat.c: Ditto.
429 * drivers/fs/vfat/fcb.c: Ditto.
430 * drivers/fs/vfat/fsctl.c: Ditto.
431 * drivers/fs/vfat/rw.c: Ditto.
432 * drivers/storage/class2/class2.c: Ditto.
433 * drivers/storage/scsiport/scsiport.c: Ditto.
434 * hal/halx86/adapter.c: Ditto.
435 * hal/halx86/mp.c: Ditto.
436 * include/ddk/mmfuncs.h: Ditto.
437 * include/ddk/mmtypes.h: Ditto.
438 * include/ddk/i386/pagesize.h: Ditto.
439 * include/ntdll/pagesize.h: Ditto.
440 * lib/kernel32/process/create.c: Ditto.
441 * lib/kernel32/thread/thread.c: Ditto.
442 * lib/ntdll/ldr/utils.c: Ditto.
443 * lib/ntdll/rtl/env.c: Ditto.
444 * lib/ntdll/rtl/heap.c: Ditto.
445 * lib/ntdll/rtl/ppb.c: Ditto.
446 * lib/ntdll/rtl/process.c: Ditto.
447 * lib/ntdll/rtl/thread.c: Ditto.
448 * ntoskrnl/cc/copy.c: Ditto.
449 * ntoskrnl/cc/view.c: Ditto.
450 * ntoskrnl/ex/sysinfo.c: Ditto.
451 * ntoskrnl/include/internal/i386/mm.h: Ditto.
452 * ntoskrnl/io/mdl.c: Ditto.
453 * ntoskrnl/ke/kthread.c: Ditto.
454 * ntoskrnl/ke/i386/kernel.c: Ditto.
455 * ntoskrnl/ldr/init.c: Ditto.
456 * ntoskrnl/ldr/loader.c: Ditto.
457 * ntoskrnl/mm/anonmem.c: Ditto.
458 * ntoskrnl/mm/cont.c: Ditto.
459 * ntoskrnl/mm/freelist.c: Ditto.
460 * ntoskrnl/mm/iospace.c: Ditto.
461 * ntoskrnl/mm/kmap.c: Ditto.
462 * ntoskrnl/mm/marea.c: Ditto.
463 * ntoskrnl/mm/mdl.c: Ditto.
464 * ntoskrnl/mm/mminit.c: Ditto.
465 * ntoskrnl/mm/ncache.c: Ditto.
466 * ntoskrnl/mm/npool.c: Ditto.
467 * ntoskrnl/mm/pagefile.c: Ditto.
468 * ntoskrnl/mm/pageop.c: Ditto.
469 * ntoskrnl/mm/section.c: Ditto.
470 * ntoskrnl/mm/slab.c: Ditto.
471 * ntoskrnl/mm/i386/page.c: Ditto.
472 * ntoskrnl/ob/handle.c: Ditto.
473 * ntoskrnl/ps/create.c: Ditto.
474 * ntoskrnl/ps/process.c: Ditto.
475 * ntoskrnl/ps/w32call.c: Ditto.
476 * subsys/win32k/include/object.h: Ditto.
477
478 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
479
480 * lib/ntdll/string/ctype.c: Undefine __MSVCRT__ to not have mingw
481 runtime import _pctype.
482
483 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
484
485 * lib/user32/misc/desktop.c (string.h): Include.
486 * lib/user32/misc/resources.c: Ditto.
487 * lib/user32/misc/winhelp.c: Ditto.
488 * lib/user32/windows/accel.c: Ditto.
489 * lib/user32/windows/bitmap.c: Ditto.
490 * subsys/win32k/freetype/ctype.c: Undefine __MSVCRT__ and _pctype to not
491 have mingw runtime import _pctype.
492
493 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
494
495 * ntoskrnl/cc/view.c (alloca): Prototype.
496 * ntoskrnl/rtl/ctype.c: Undefine __MSVCRT__ to not have mingw runtime
497 import _pctype.
498
499 2002-08-26 David Welch <welch@computer2.darkstar.org>
500
501 * lib/gdi32/misc/dllmain.c (GdiDllInitialize): Don't initialize
502 win32k.sys for each process.
503 * subsys/csrss/init.c (CsrServerInitialization): Initialize
504 win32k.sys as well.
505
506 2002-08-26 David Welch <welch@computer2.darkstar.org>
507
508 * ntoskrnl/ps/process.c (NtCreateProcess): Reference the
509 parent process's handle using ExGetPreviousMode.
510
511 2002-08-26 David Welch <welch@computer2.darkstar.org>
512
513 * lib/user32/misc/dllmain.c (Init): Initialize gdi32 as well.
514
515 2002-08-26 David Welch <welch@computer2.darkstar.org>
516
517 * iface/addsys/genw32k.c (main, process): Generate a set of
518 stubs for csrss as well.
519
520 2002-08-26 David Welch <welch@computer2.darkstar.org>
521
522 * lib/kernel32/process/create.c (CreateProcessW): Initialize
523 all the members of the new process's PPB.
524
525 2002-08-17 David Welch <welch@computer2.darkstar.org>
526
527 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): Ensure the
528 process isn't freed in the middle of our operations.
529
530 2002-08-17 David Welch <welch@computer2.darkstar.org>
531
532 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation): Fixed.
533
534 2002-08-17 David Welch <welch@computer2.darkstar.org>
535
536 * ntoskrnl/ps/create.c (PiDeleteThread): Don't dereference
537 the thread's process while holding the thread list lock.
538
539 2002-08-17 David Welch <welch@computer2.darkstar.org>
540
541 * ntoskrnl/mm/section.c (MmMapViewOfSection): Check there is
542 enough space for all parts of an image before mapping it; if
543 there isn't enough space free at the preferred base address
544 then try to choose a different one.
545
546 2002-08-17 David Welch <welch@computer2.darkstar.org>
547
548 * ntoskrnl/mm/mpw.c (MmInitMpwThread): Run the MPW thread at
549 idle priority.
550
551 2002-08-17 David Welch <welch@computer2.darkstar.org>
552
553 * ntoskrnl/mm/kmap.c (ExUnmapPage, ExAllocatePageWithPhysPage,
554 MiFreeNonPagedPoolRegion, MiAllocNonPagedPoolRegion): Maintain
555 a hint of the next free page; makes running with whole page
556 allocation more bearable.
557
558 2002-08-17 David Welch <welch@computer2.darkstar.org>
559
560 * ntoskrnl/mm/anonmem.c (MmPageOutVirtualMemory): Show an
561 out of swap space message if we are out of swap space.
562 * ntoskrnl/mm/section.c (MmPageOutSectionView): Show an
563 out of swap space message if we are out of swap space.
564 * ntoskrnl/mm/pagefile.c (MmAllocSwapPage): Don't automatically
565 show an out of swap space message on failure.
566 * ntoskrnl/mm/pagefile.c (MmShowOutOfSpaceMessagePagingFile): New
567 function to notify the user that the pagefile is full.
568
569 2002-08-17 David Welch <welch@computer2.darkstar.org>
570
571 * drivers/lib/zlib/Makefile: Create a dummy zlib.sym
572
573 2002-08-16 David Welch <welch@computer2.darkstar.org>
574
575 * ntoskrnl/mm/npool.c (ExAllocateWholePageBlock): Converted
576 to use PHYSICAL_ADDRESS type for page address.
577
578 2002-08-16 David Welch <welch@computer2.darkstar.org>
579
580 * subsys/win32k/ntuser/class.c (W32kCreateClass): Corrected
581 typo when calculating the offset into the class object to
582 put the class name string.
583
584 2002-08-16 David Welch <welch@computer2.darkstar.org>
585
586 * ntoskrnl/ps/thread.c (PsDispatchThreadNoLock): Don't call
587 the reaper function directly; set an event to wake up a seperate
588 reaper thread.
589 * ntoskrnl/ps/thread.c (PsReaperThreadMain): New function that
590 waits for a notification and then calls PsReapThreads.
591 * ntoskrnl/ps/thread.c (PsInitThreadManagement): Create the
592 reaper thread.
593
594 2002-08-15 David Welch <welch@computer2.darkstar.org>
595
596 * lib/advapi32/misc/dllmain.c (DllMain): Removed debug message.
597
598 2002-08-14 David Welch <welch@computer2.darkstar.org>
599
600 * subsys/smss/init.c (SmPagingFilesQueryRoutine): If possible
601 take the size of the paging file from the registry.
602
603 2002-08-14 David Welch <welch@computer2.darkstar.org>
604
605 * ntoskrnl/mm/section.c (MmCreateDataFileSection): Extend the
606 section if necessary.
607
608 2002-08-14 David Welch <welch@computer2.darkstar.org>
609
610 * ntoskrnl/mm/pagefile.c (NtCreatePagingFile): Set the file
611 size using the FileAllocationInformation class.
612
613 2002-08-14 David Welch <welch@computer2.darkstar.org>
614
615 * ntoskrnl/mm/anonmem.c (MmWritePageVirtualMemory): Implemented
616 function to write anonymous memory pages to the swap file.
617 * ntoskrnl/mm/anonmem.c (MmFreeVirtualMemoryPage): Free any
618 swap page associated with the page.
619 * ntoskrnl/mm/mpw.c (MmWriteDirtyPages): New function to find
620 pages to write to disk.
621 * ntoskrnl/mm/mpw.c (MmMpwThreadMain): Implemented MPW functionality.
622 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): New function
623 to write a single page back to disk.
624 * ntoskrnl/mm/rmap.c (MmSetCleanAllRmaps, MmSetDirtyAllRmaps,
625 MmIsDirtyPageRmap): New rmap function to support the MPW thread.
626 * ntoskrnl/mm/section.c (MmWritePageSectionView): Implemented
627 function to write back section pages.
628 * ntoskrnl/mm/section.c (MmFreeSectionPage): Free any swap
629 entry associated with the page; mark pages shared with
630 the cache as dirty if necessary.
631
632 2002-08-14 David Welch <welch@computer2.darkstar.org>
633
634 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set name of
635 the module into the module text structure.
636
637 2002-08-14 David Welch <welch@computer2.darkstar.org>
638
639 * ntoskrnl/io/rw.c (NtReadFile, NtWriteFile): Use the correct
640 test for whether to wait for the completion of i/o.
641
642 2002-08-14 David Welch <welch@computer2.darkstar.org>
643
644 * ntoskrnl/cm/ntfunc.c (NtFlushKey): Request synchronous i/o
645 from NtOpenFile.
646 * ntoskrnl/cm/regfile (CmiInitPermanentRegistryHive): Request
647 synchronous i/o from NtCreateFile.
648 * ntoskrnl/dbg/kdb_stabs.c (LdrpLoadModuleSymbols): Request
649 synchronous i/o from NtOpenFile.
650 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Request synchronous i/o
651 from NtOpenFile.
652
653 2002-08-14 David Welch <welch@computer2.darkstar.org>
654
655 * ntoskrnl/cc/view.c (CcRosSuggestFreeCacheSegment): Maintain the
656 correct reference count.
657
658 2002-08-14 David Welch <welch@computer2.darkstar.org>
659
660 * ntoskrnl/cc/view.c (CcRosFlushCacheSegment): New function to
661 write back a modified cache segment.
662 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): New function to
663 flush some dirty pages from the cache.
664 * ntoskrnl/cc/view.c (CcRosMarkDirtyCacheSegment): New function to
665 mark a cache segment modified while mapped into memory as dirty.
666
667 2002-08-14 David Welch <welch@computer2.darkstar.org>
668
669 * ntoskrnl/cc/pin.c (CcMapData, CcUnpinData, CcSetDirtyPinnedData):
670 Store the dirty status in the BCB; don't write back dirty data
671 immediately.
672
673 2002-08-14 David Welch <welch@computer2.darkstar.org>
674
675 * include/ntos/mm.h: Added SEC_XXXX defines from 'Windows NT/2000
676 Native API Reference'
677
678 2002-08-14 David Welch <welch@computer2.darkstar.org>
679
680 * drivers/fs/vfat/ea.c (VfatSetExtendedAttributes): Empty
681 placeholder for extended attribute functions.
682
683 2002-08-14 David Welch <welch@computer2.darkstar.org>
684
685 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation):
686 Added function to set allocation size.
687
688 2002-08-14 David Welch <welch@computer2.darkstar.org>
689
690 * drivers/fs/vfat/fcb.c (vfatFCBInitializeCache): Renamed
691 to vfatFCBInitializeCacheFromVolume.
692 * drivers/fs/vfat/fcb.c (vfatMakeFCBFromDirEntry): Don't
693 initialise the cache with a file object representing the
694 volume unless the FCB is for a directory.
695
696 2002-08-14 David Welch <welch@computer2.darkstar.org>
697
698 * drivers/fs/vfat/create.c (VfatPagingFileCreate): Added a
699 new function for handling paging file only code.
700 * drivers/fs/vfat/create.c (VfatSupersedeFile): Added a
701 new function for doing a file supersede.
702 * drivers/fs/vfat/create.c (VfatCreateFile): Reformatted and
703 adjusted control flow. Set allocation size and extended attributes
704 on create.
705 * drivers/fs/vfat/create.c (VfatCreate): Removed goto.
706
707 2002-08-14 David Welch <welch@computer2.darkstar.org>
708
709 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Renamed
710 updEntry to VfatUpdateEntry.
711 * drivers/fs/vfat/close.c (VfatCloseFile): Renamed
712 updEntry to VfatUpdateEntry.
713 * drivers/fs/vfat/dirwr.c (updEntry): Renamed to
714 VfatUpdateEntry.
715 * drivers/fs/vfat/dirwr.c (addEntry): Renamed to
716 VfatAddEntry.
717
718 2002-08-14 David Welch <welch@computer2.darkstar.org>
719
720 * apps/tests/sectest/sectest.c (main): Fixed formatting.
721
722 2002-08-10 David Welch <welch@computer2.darkstar.org>
723
724 * ntoskrnl/mm/i386/page.c (MmSetPageProtect): Fixed
725 behaviour when called on the system address space.
726
727 2002-08-10 David Welch <welch@computer2.darkstar.org>
728
729 * ntoskrnl/mm/virtual.c (MmQueryAnonMem, MmProtectAnonMem,
730 NtAllocateVirtualMemory, NtFreeVirtualMemory): Renamed
731 segments to regions; moved region code to seperate file.
732 Implemented NtQueryVirtualMemory and NtProtectVirtualMemory
733 for anonymous memory areas.
734
735 2002-08-10 David Welch <welch@computer2.darkstar.org>
736
737 * ntoskrnl/mm/anonmem.c: Moved functions relating to
738 areas created with NtAllocateVirtualMemory to a
739 seperate file.
740
741 2002-08-10 David Welch <welch@computer2.darkstar.org>
742
743 * ntoskrnl/mm/section.c (MmQuerySectionView): Implemented
744 NtQueryVirtualMemory for section views.
745
746 2002-08-10 David Welch <welch@computer2.darkstar.org>
747
748 * ntoskrnl/mm/section.c (MmAccessFaultSectionView,
749 MmNotPresentFaultSectionView, MmProtectSectionView,
750 MmMapViewOfSegment, MmAlterViewAttributes): Implemented
751 NtProtectVirtualMemory for section views.
752
753 2002-08-10 David Welch <welch@computer2.darkstar.org>
754
755 * ntoskrnl/ke/main.c: Removed SEH test code.
756
757 2002-08-10 David Welch <welch@computer2.darkstar.org>
758
759 * lib/ntdll/ldr/utils.c (LdrFixupImports): Remove the readonly
760 protection from the IAT before writing to it.
761
762 2002-08-10 David Welch <welch@computer2.darkstar.org>
763
764 * lib/ntdll/ldr/utils.c (LdrAdjustDllName): Properly null terminate
765 the base name of the DLL.
766
767 2002-08-10 David Welch <welch@computer2.darkstar.org>
768
769 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set the text segment
770 of modules to readonly after loading.
771
772 2002-08-09 David Welch <welch@computer2.darkstar.org>
773
774 * ntoskrnl/ps/create.c (NtCreateThread): Call PsSuspendThread
775 if NtCreateThread has CreateSuspended as TRUE.
776 * ntoskrnl/ps/suspend.c (PsSuspendThread, PsResumeThread,
777 PiSuspendThreadKernelRoutine): Fixed suspend functionality.
778
779 2002-08-09 David Welch <welch@computer2.darkstar.org>
780
781 * ntoskrnl/ke/i386/usertrap.c (print_user_address): Copy
782 the LDR variable from the right address.
783
784 2002-08-09 David Welch <welch@computer2.darkstar.org>
785
786 * ntoskrnl/ke/apc.c (KiDeliverNormalApc): Check for
787 kernel APCs pending on exit from the kernel.
788 * ntoskrnl/ke/apc.c (KiDeliverNormalApc, KiDeliverUserApc,
789 KiDeliverApc): Set the APC's inserted flag to FALSE after
790 removing it from the thread's queue.
791
792 2002-08-09 David Welch <welch@computer2.darkstar.org>
793
794 * lib/kernel32/thread/thread.c (ThreadStartup): Don't
795 call DLL entrypoints; this is done by LdrInitializeThunk.
796 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
797 DLLs in initialization order; take the loader lock before
798 calling.
799
800 2002-08-09 David Welch <welch@computer2.darkstar.org>
801
802 * apps/tests/thread/thread.c (main): Test suspend and
803 resume functionality.
804
805 2002-08-08 David Welch <welch@computer2.darkstar.org>
806
807 * ntoskrnl/mm/section (NtQuerySection): Return the
808 right result length.
809
810 2002-08-08 David Welch <welch@computer2.darkstar.org>
811
812 * ntoskrnl/ke/usertrap.c (print_user_address): Check for
813 a NULL LDR structure in the PEB; copy the LDR pointer in
814 safely.
815
816 2002-08-08 David Welch <welch@computer2.darkstar.org>
817
818 * ntoskrnl/ke/apc.c (KiDeliverUserApc): Deliver all present
819 APCs; release the APC spinlock while acccessing user memory.
820
821 2002-08-08 David Welch <welch@computer2.darkstar.org>
822
823 * include/internal/ps.h: Adjusted offsets into the ETHREAD
824 structure.
825 * include/internal/ps.h: Removed redundant members from the
826 KTHREAD structure.
827 * ntoskrnl/ke/kthread.c (KeInitializeThread): Removed
828 redundant members from the KTHREAD structure.
829
830 2002-08-08 David Welch <welch@computer2.darkstar.org>
831
832 * ntoskrnl/dbg/kdb.c (KdbEnterDebuggerException): New
833 function to enter the debugger on an exception.
834 * ntoskrnl/kd/kdebug.c (KdInitSystem): Initialize the
835 local kernel debugger if enabled.
836 * ntoskrnl/ke/catch.c (KiDispatchException): Enter the
837 local kernel debugger on an exception.
838
839 2002-08-08 David Welch <welch@computer2.darkstar.org>
840
841 * include/ntdll/ldr.h: Added definition for a DLL entrypoint.
842 * lib/kernel32/process/create.c (KlCreateFirstThread): Put
843 the argument to the NtProcessStartup function on the stack.
844 * lib/kernel32/process/create.c (KlInitPeb): Read the
845 base address of the new image from the PEB.
846 * lib/kernel32/process/create.c (CreateProcessW): Start the
847 first thread at the entrypoint of the new image.
848 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): If the
849 function is called after the initial startup then just call the
850 entrypoints for the loaded DLLs with DLL_THREAD_ATTACH. Don't
851 call the entrypoint of the image.
852 * lib/ntdll/rtl/process.c (RtlpCreateFirstThread): Put the
853 argument to the NtProcessStartup function on the stack.
854 * lib/ntdll/rtl/process.c (KlInitPeb): Read the base address of
855 the new image from the PEB.
856 * lib/ntdll/rtl/process.c (RtlCreateUserProcess): Start the
857 first thread at the entrypoint of the new image.
858 * ntoskrnl/ke/i386/bthread.S (PsBeginThreadWithContextInternal):
859 Use the system call path to begin a usermode thread.
860 * ntoskrnl/ke/i386/thread.c (Ke386InitThreadWithContext): Convert
861 the supplied context into a trap frame.
862 * ntoskrnl/ldr/init.c (LdrLoadInitialProcess): Put the PEB argument
863 to the NtProcessStartup function on the new stack; start the
864 first thread at the entrypoint of the image.
865 * ntoskrnl/ps/create.c (NtCreateThread): Create an APC to call
866 LdrInitializeThunk in the context of a new thread before its
867 entrypoint.
868
869 2002-08-08 David Welch <welch@computer2.darkstar.org>
870
871 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Uninitialise
872 the cache on file cleanup.
873 * drivers/fs/vfat/fcb.c (vfatReleaseFcb): Don't uninitialise
874 the cache on file close.
875 * ntoskrnl/cc/copy.c: Renamed zero page global variable.
876 * ntoskrnl/cc/view.c: Added cache delete function.
877
878 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
879
880 * rules.mak (RSYM): Define.
881 * include/ddk/zwtypes.h (DebugDbgLoadSymbols): Add to enum
882 _DEBUG_CONTROL_CODE.
883 * include/ntdll/ldr.h (LDR_SYMBOL_INFO, LdrpLoadUserModuleSymbols): Add.
884 (LdrLoadModuleSymbols): Remove.
885 * include/ntos/kdbgsyms.h (ST_FILENAME, ST_FUNCTION,
886 ST_LINENUMBER): Add.
887 (SYMBOL). Make Name an ANSI_STRING.
888 (IMAGE_SYMBOL_INFO, AreSymbolsParsed): Add.
889 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
890 LdrpLoadUserModuleSymbols() not LdrLoadModuleSymbols().
891 * lib/ntdll/ldr/utils.c (LdrLoadModuleSymbols): Rename to
892 LdrpLoadUserModuleSymbols.
893 (LdrpLoadUserModuleSymbols): Use DebugDbgLoadSymbols debug control code.
894 (LdrLoadDll): assert if out of memory.
895 (LdrLoadDll): Call
896 LdrpLoadUserModuleSymbols(), not LdrLoadModuleSymbols().
897 * lib/ntdll/string/ctype.c (_pctype): #undef.
898 * ntoskrnl/dbg/dbgctrl.c (NtSystemDebugControl): Call
899 LdrLoadUserModuleSymbols on DebugDbgLoadSymbols.
900 * ntoskrnl/include/internal/ldr.h (LdrGetAddressInformation): Add.
901 * ntoskrnl/include/internal/module.h (MODULE_TEXT_SECTION): Make SymbolInfo
902 an IMAGE_SYMBOL_INFO.
903 * ntoskrnl/ke/i386/exp.c (LdrGetAddressInformation): Add prototype.
904 (print_address): Change #ifdef KDBG to #ifdef DBG.
905 (KiDoubleFaultHandler, KiDumpTrapFrame, KeDumpStackFrames): Dump
906 one stack frame per line.
907 * ntoskrnl/ke/i386/multiboot.S: Create pagetables for more kernel
908 address space so larger modules can be passed from the boot loader.
909 * ntoskrnl/ke/i386/usertrap.c (LdrGetAddressInformation): Add prototype.
910 (print_user_address): Print symbols using LdrGetAddressInformation().
911 * ntoskrnl/ldr/loader.c (SYMBOLFILE_HEADER, IMAGE_SYMBOL_INFO_CACHE,
912 STAB_ENTRY, N_FUN, N_SLINE, N_SO, SymbolListHead): Add.
913 (TAG_SYM_BUF): Remove.
914 (LdrInitDebug): Remove unneeded code.
915 (LdrInit1): Prepare for loading symbols.
916 (LdrpReadLine, HexL, LdrpParseLine, LdrpLoadModuleSymbolsFromBuffer,
917 LdrpLoadUserModuleSymbolsFromBuffer): Remove.
918 (LdrpParseImageSymbols, LdrpGetFileName, LdrpGetFunctionName,
919 LdrpGetLineNumber, LdrGetAddressInformation, LdrpLookupUserSymbolInfo): Add.
920 (LdrpLoadModuleSymbols, LdrInitializeBootStartDriver): Change to use new
921 symbol structures.
922 (LdrLoadUserModuleSymbols): Cache symbol buffers.
923 (LdrUnloadModuleSymbols): Implement.
924 (LdrLoadModule, LdrUnloadModule): Change #ifdef KDBG to #ifdef DBG.
925 (LdrPEProcessModule): Split a line into two lines.
926 (LdrPEProcessModule): Setup for loading symbols.
927 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Open with FILE_SHARE_READ.
928 * ntoskrnl/ps/process.c (PiFreeSymbols): Call LdrUnloadModuleSymbols() to
929 free symbols.
930 (PiDeleteProcess): Change #ifdef KDBG to #ifdef DBG.
931 * ntoskrnl/rtl/ctype.c (_pctype): #undef.
932 * ntoskrnl/rtl/string.c (strncpy): Terminate destination string.
933 * tools/Makefile (rsym): Add target.
934 * tools/helper.mk: Include config and use -g if DBG = 1.
935
936 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
937
938 * Makefile (install_before): Install system.hiv to correct location.
939
940 2002-07-04 David Welch <welch@computer2.darkstar.org>
941
942 * subsys/win32k/include/callback.h: Fixed callback argument
943 definitions.
944 * subsys/win32k/ntuser/winpos.c: Implemented some more of the windows
945 sizing/moving code.
946 * subsys/win32k/ntuser/painting.c: Implemented some more of the
947 window painting code.
948 * subsys/win32k/objects/coord.c: Implemented LPtoDP and DPtoLP.
949 * subsys/win32k/objects/region.c: Added stubs for some more
950 region functions.
951
952 2002-07-04 David Welch <welch@computer2.darkstar.org>
953
954 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the
955 process desktop handle as well.
956
957 2002-07-04 David Welch <welch@computer2.darkstar.org>
958
959 * ntoskrnl/se/token.c: Don't call the ZwXXX variant of
960 system calls when in system context.
961
962 2002-07-04 David Welch <welch@computer2.darkstar.org>
963
964 * ntoskrnl/Makefile: Added file with MDA output code.
965 * ntoskrnl/kd/kdebug.c: Recognize MDA as a destination for
966 debug output.
967
968 2002-07-04 David Welch <welch@computer2.darkstar.org>
969
970 * lib/user32/windows/defwnd.c: Implemented some more of the
971 default window handler.
972
973 2002-07-04 David Welch <welch@computer2.darkstar.org>
974
975 * lib/user32/misc/stubs.c: Removed some stubs to seperate files.
976
977 2002-07-04 David Welch <welch@computer2.darkstar.org>
978
979 * lib/user32/user32.def: Export ScreenToClient otherwise we
980 get problems when code in user32 tries to call it.
981
982 2002-07-04 David Welch <welch@computer2.darkstar.org>
983
984 * include/win32k/region.h: Added prototypes for some missing
985 region functions.
986
987 2002-07-04 David Welch <welch@computer2.darkstar.org>
988
989 * include/win32k/ntuser.h: Added prototypes for some missing
990 NtUserXXX functions.
991
992 2002-07-04 David Welch <welch@computer2.darkstar.org>
993
994 * include/user32/wininternal.h: Added some constants for
995 private GetDCEx styles that WINE needs.
996
997 2002-07-04 David Welch <welch@computer2.darkstar.org>
998
999 * include/user32/callback.h: Fixed callbacks for messages with
1000 parameters.
1001
1002 2002-07-04 David Welch <welch@computer2.darkstar.org>
1003
1004 * include/napi/win32.h (W32THREAD): Added pointer to the
1005 thread's desktop.
1006 * include/napi/win32.h (W32PROCESS): Removed handle table,
1007 added a pointer to the process's window station.
1008 * subsys/win32k/ntuser/guicheck.c (W32kGuiCheck): Reference
1009 a process's window station on the first win32k system call. Reference
1010 a thread's desktop on the first win32k system call.
1011
1012 2002-07-04 David Welch <welch@computer2.darkstar.org>
1013
1014 * include/messages.h: Added some missing WM_XXX constants.
1015
1016 2002-07-04 David Welch <welch@computer2.darkstar.org>
1017
1018 * drivers/dd/ide/makefile: Compiling with debugging messages
1019 needs libgcc to be linked in.
1020
1021 2002-07-04 David Welch <welch@computer2.darkstar.org>
1022
1023 * iface/addsys/genw32k.c: Generate a variable with the
1024 number of system calls.
1025 * iface/native/genntdll.c: Generate a proper stack frame for
1026 the user system call stubs.
1027 * ntoskrnl/ke/i386/syscall.S: Generate a proper stack frame for
1028 the handler for system calls.
1029
1030 2002-07-04 David Welch <welch@computer2.darkstar.org>
1031
1032 * Makefile: Build the GUI startup application.
1033 * subsys/system/gstart/gstart.c: Application to start up
1034 the GUI.
1035
1036 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1037
1038 * tools/helper.mk: Make an import library a proper target
1039 depending on the .def file.
1040
1041 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1042
1043 * subsys/win32k/ntuser/window.c (NtUserGetWindowLong): Began
1044 implementation.
1045
1046 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1047
1048 * subsys/win32k/misc/object.c (ObmCreateHandle): Return the
1049 correct handle value.
1050
1051 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1052
1053 * subsys/win32k/makefile: Make win32k depend on the file containing
1054 the service table.
1055
1056 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1057
1058 * ntoskrnl/ke/i386/stkswitch.S (KeSwitchStackAndRet,
1059 KePushAndStackSwitchAndSysRet): Push one value only.
1060 * ntoskrnl/ps/w32call.c (NtCallbackReturn, NtW32Call): Moved
1061 these functions to a new file. Restore the old trap frame after
1062 returning from a callback.
1063
1064 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1065
1066 * lib/user32/windows/message.c (CallWindowProcA, CallWindowProcW):
1067 Convert message to Unicode or ASCII if necessary.
1068
1069 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1070
1071 * include/user32/callback.h: Added WM_CREATE and WM_NCCALCSIZE
1072 callbacks.
1073 * lib/user32/windows/window.c (User32SendCREATEMessageForKernel,
1074 User32SendNCCREATEMessageForKernel): Implemented.
1075 * subsys/win32k/ntuser/callback.c (W32kSendCREATEMessage):
1076 Implemented.
1077
1078 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1079
1080 * include/structs.h: Added Unicode and ASCII versions of
1081 CREATESTRUCT.
1082
1083 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1084
1085 * tools/helper.mk: Make the install target depend on all the
1086 files to be installed.
1087
1088 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1089
1090 * ntoskrnl/ps/thread.c (NtCallbackReturn): Set TSS.Esp0 to the
1091 top of the old stack.
1092 * ntoskrnl/ps/thread.c (NtW32Call): Set TSS.Esp0 to the top of
1093 the new stack. Free the callback stack correctly. Don't copy
1094 portion of the trap frame that doesn't exist in non-v86-mode
1095 interrupts.
1096 * ntoskrnl/ps/thread.c (PsFreeCallbackStack): New function to
1097 free a stack allocated with PsAllocateCallbackStack.
1098
1099 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1100
1101 * drivers/dd/null/makefile: Commented out local LDFLAGS as
1102 these cause bad relocations in the stripped image.
1103
1104 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1105
1106 * config: Corrected spelling error.
1107
1108 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1109
1110 * subsys/system/winlogon/winlogon.c (WinMain): Check for
1111 failure when creating a window system.
1112
1113 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1114
1115 * ntoskrnl/ob/handle.c (ObDuplicateObject): Added this internal
1116 function for duplicating objects.
1117 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the parent
1118 process's window station to the child process.
1119 * ntoskrnl/ps/process.c (PsInitProcessManagement): Initialize the
1120 first process's window station.
1121
1122 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1123
1124 * ntoskrnl/mm/marea.c (MmCreateMemoryArea): Initialise
1125 page operation structure members.
1126 * ntoskrnl/mm/pageop.c (MmReleasePageOp, MmGetPageOp): Increment
1127 or decrement the page operation count in the memory area.
1128 * ntoskrnl/mm/virtual.c (MmNotPresentFaultVirtualMemory,
1129 MmPageOutVirtualMemory): Check for a deleted memory area before
1130 handling the fault.
1131 * ntoskrnl/mm/virtual.c (MmFreeVirtualMemory): Wait for all
1132 page operations to finish before freeing the memory area.
1133
1134 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1135
1136 * ntoskrnl/ke/i386/syscall.S (interrupt_handler2e): Corrected
1137 test for previous mode, upper 16-bit of CS on the stack after an
1138 interrupt are arbitary.
1139
1140 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1141
1142 * lib/user32/misc/winsta.c: Cleaned up indentation.
1143
1144 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1145
1146 * apps/tests/winhello/winhello.c (WinMain, MainWndProc):
1147 Cleaned up formatting, some more error checks.
1148
1149 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1150
1151 * ntoskrnl/mm/virtual.c (MmSecureVirtualMemory,
1152 MmUnsecureVirtualMemory, NtQueryVirtualMemory): Corrected indentation.
1153
1154 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1155
1156 * ntoskrnl/ke/i386/exp.c (KiDoubleFaultHandler): Print CR3
1157 correctly.
1158
1159 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1160
1161 * ntoskrnl/include/internal/ps.h: Added KTHREAD_STACK_LIMIT definition.
1162 * ntoskrnl/ke/i386/tskswitch.S (Ki386ContextSwitch): Force all the
1163 pages of the kernel stack to be accessible from this process.
1164
1165 2002-06-04 David Welch <welch@cwcom.net>
1166
1167 * ntoskrnl/cc/view.c (ReadCacheSegmentChain): Changes to use
1168 PHYSICAL_ADDRESS type for physical addresses.
1169 * ntoskrnl/cc/copy.c (CcRosCreateCacheSegment): Changes to use
1170 PHYSICAL_ADDRESS type for physical addresses.
1171 * ntoskrnl/cc/copy.c (CcFreeCachePage): Changes to use
1172 PHYSICAL_ADDRESS type for physical addresses.
1173 * ntoskrnl/include/internal/mm.h: Changed prototypes to use
1174 PHYSICAL_ADDRESS type for physical addresses.
1175 * ntoskrnl/include/internal/ps.h (KPROCESS): Changed type of
1176 page directory base to PHYSICAL_ADDRESS.
1177 * ntoskrnl/include/internal/i386/mm.h: Changed prototypes to use
1178 PHYSICAL_ADDRESS type for physical addresses.
1179 * ntoskrnl/ke/kthread.c (KeFreeStackPage): Changes to use
1180 PHYSICAL_ADDRESS type for physical addresses.
1181 * ntoskrnl/ke/kthread.c (KeInitializeThread): Changes to use
1182 PHYSICAL_ADDRESS type for physical addresses.
1183 * ntoskrnl/ke/process.c (KeAttachProcess, KeDetachProcess): Changes
1184 to use PHYSICAL_ADDRESS type for physical addresses.
1185 * ntoskrnl/ke/kernel.c (PcrPages, KeApplicationProcessorInit): Changes
1186 to use PHYSICAL_ADDRESS type for physical addresses.
1187 * ntoskrnl/mm/balance.c (MM_ALLOCATION_REQUEST): Changes to use
1188 PHYSICAL_ADDRESS type for physical addresses.
1189 * ntoskrnl/mm/balance.c (MmReleasePageMemoryConsumer): Changes to use
1190 PHYSICAL_ADDRESS type for physical addresses.
1191 * ntoskrnl/mm/balance.c (MmRequestPageMemoryConsumer): Changes to use
1192 PHYSICAL_ADDRESS type for physical addresses.
1193 * ntoskrnl/mm/cont.c (MmFreeContinuousPage): Changes to use
1194 PHYSICAL_ADDRESS type for physical addresses.
1195 * ntoskrnl/mm/cont.c (MmAllocateContinuousAlignedMemory): Changes to
1196 use PHYSICAL_ADDRESS type for physical addresses.
1197 * ntoskrnl/mm/freelist.c (MmTransferOwnershipPage,
1198 MmGetLRUFirstUserPage, MmGetLRUNextUserPage, MmGetContinuousPages,
1199 MmInitializePageList, MmSetFlagsPage, MmSetRmapListHeadPage,
1200 MmGetRmapListHeadPage, MmMarkPageMapped, MmMarkPageUnmapped,
1201 MmGetFlagsPage, MmSetSavedSwapEntryPage, MmGetSavedSwapEntryPage,
1202 MmReferencePage, MmGetReferenceCountPage, MmIsUsablePage,
1203 MmDereferencePage, MmGetLockCountPage, MmLockPage, MmUnlockPage,
1204 MmAllocPage): Changes to use PHYSICAL_ADDRESS type for physical
1205 addresses.
1206 * ntoskrnl/mm/iospace.c (MmMapIoSpace): Changes to use
1207 PHYSICAL_ADDRESS type for physical addresses.
1208 * ntoskrnl/mm/kmap.c (ExAllocatePage, MiZeroPage, MiCopyFromUserPage,
1209 ExAllocatePageWithPhysPage): Changes to use PHYSICAL_ADDRESS type for
1210 physical addresses.
1211 * ntoskrnl/mm/marea.c (MmFreeMemoryArea): Changes to use
1212 PHYSICAL_ADDRESS type for physical addresses.
1213 * ntoskrnl/mm/mdl.c (MmUnlockPages, MmMapLockedPages,
1214 MmProbeAndLockPages): Changes to use PHYSICAL_ADDRESS type for
1215 physical addresses.
1216 * ntoskrnl/mm/mm.c (MmSharedDataPagePhysicalAddress,
1217 MmCommitPagedPoolAddress, MmNotPresentFault): Changes to use
1218 PHYSICAL_ADDRESS type for physical addresses.
1219 * ntoskrnl/mm/mminit.c (MmInitVirtualMemory): Changes to use
1220 PHYSICAL_ADDRESS type for physical addresses.
1221 * ntoskrnl/mm/ncache.c (MmAllocateNonCachedMemory,
1222 MmFreeNonCachedPage): Changes to use PHYSICAL_ADDRESS type for
1223 physical addresses.
1224 * ntoskrnl/mm/npool.c (grow_kernel_pool): Changes to use
1225 PHYSICAL_ADDRESS type for physical addresses.
1226 * ntoskrnl/mm/rmap.c (MmPageOutPhysicalAddress, MmInsertRmap,
1227 MmDeleteAllRmaps, MmDeleteRmap): Changes to use
1228 PHYSICAL_ADDRESS type for physical addresses.
1229 * ntoskrnl/mm/section.c (MiReadPage, MmNotPresentFaultSectionView,
1230 MmAccessFaultSectionView, MmPageOutDeleteMapping,
1231 MmPageOutSectionView, MmFreeSectionPage): Changes to use
1232 PHYSICAL_ADDRESS type for physical addresses.
1233 * ntoskrnl/mm/slab.c (ExGrowSlabCache): Changes to use
1234 PHYSICAL_ADDRESS type for physical address.
1235 * ntoskrnl/mm/virtual.c (MmPageOutVirtualMemory,
1236 MmNotPresentFaultVirtualMemory, MmFreeVirtualMemoryPage): Changes to
1237 use PHYSICAL_ADDRESS type for physical address.
1238 * ntoskrnl/mm/wset.c (MmTrimUserMemory): Changes to use
1239 PHYSICAL_ADDRESS type for physical address.
1240 * ntoskrnl/mm/page.c (Mmi386ReleaseMmInfo, MmCopyMmInfo,
1241 MmGetPhysicalAddressForProcess, MmCreateVirtualMapping,
1242 MmCreateVirtualMappingUnsafe, MmCreateVirtualMappingForProcess,
1243 MmDeleteVirtualMapping): Changes to use PHYSICAL_ADDRESS type for
1244 physical address.
1245 * ntoskrnl/ps/process (PsInitProcessManagment): Changes to use
1246 PHYSICAL_ADDRESS type for physical address.
1247 * ntoskrnl/ps/thread.c (PsAllocateCallbackStack): Changes to use
1248 PHYSICAL_ADDRESS type for physical address.
1249
1250 2002-06-04 David Welch <welch@cwcom.net>
1251
1252 * Lots of change since the ChangeLog was last updated.
1253
1254 2001-03-18 David Welch <welch@cwcom.net>
1255
1256 * ntoskrnl/ke/apc.c (KiDeliverApc): Bug fix.
1257 * ntoskrnl/ke/apc.c (KeInsertQueueApc): More comments.
1258 * ntoskrnl/ke/catch.c (KiDispatchException): Bug fix.
1259 * ntoskrnl/ke/timer.c (KeDelayExecutionThread): Don't use removed
1260 function KeAddTimeoutThread.
1261 * ntoskrnl/ke/timer.c (KeAddTimeoutThread): Removed.
1262 * ntoskrnl/ke/wait.c (KeWaitForSingleObject, KeWaitForMultipleObjects):
1263 Don't use KeAddTimeoutThread.
1264 * ntoskrnl/mm/freelist.c (MmAllocateContiguousAlignedMemory): Bug fix
1265 * ntoskrnl/mm/freelist.c (MmAllocatePage): Allocate from the top
1266 memory.
1267
1268 2001-03-17 David Welch <welch@cwcom.net>
1269
1270 * ntoskrnl/ke/catch.c (KiDispatchException): Implementation of
1271 exception handling, user-mode only.
1272
1273 2001-03-16 David Welch <welch@cwcom.net>
1274
1275 * include/ddk/zw.h: Corrected declarations of NtCreateProfile,
1276 NtQueryIntervalProfile, NtSetIntervalProfile.
1277 * include/ddk/zwtypes.h: Added definitions of KPROFILE_SOURCE.
1278 * ntoskrnl/include/internal/ke.h: Added the interrupted EIP as a
1279 parameter to KiUpdateSystemTime for profiling purposes.
1280 * ntoskrnl/include/internal/nt: Added declaration for profiling
1281 support initialization.
1282 * ntoskrnl/ke/timer.c (KiUpdateSystemTime, KeExpireTimers): Call
1283 the profiling code on a timer interrupt with the interrupt EIP.
1284 * ntoskrnl/ke/i386/irq.c (KiDispatchInterrupt): Pass the interrupted
1285 EIP to KiUpdateSystemTime.
1286 * ntoskrnl/mm/virtual.c (NtReadVirtualMemory, NtWriteVirtualMemory):
1287 Release the MDLs used properly.
1288 * ntoskrnl/nt/nt.c: Call the profiling support initialization.
1289 * ntoskrnl/nt/ntevent.c (NtCreateEvent): Don't try copying the
1290 ObjectAttributes parameter if it is NULL.
1291 * ntoskrnl/nt/profile.c: Implemented profiling.
1292
1293 2001-03-16 David Welch <welch@cwcom.net>
1294
1295 * ntoskrnl/include/internal/safe.h: Corrected typo.
1296 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtQueryEvent):
1297 Corrected typos.
1298 * ntoskrnl/rtl/mem.c: Missing header file.
1299
1300 2001-03-16 David Welch <welch@cwcom.net>
1301
1302 * ntoskrnl/include/internal/safe.h: Add definitions for handling
1303 potentially unsafe pointers.
1304
1305 2001-03-16 David Welch <welch@cwcom.net>
1306
1307 * ntoskrnl/include/internal/mm.h: Removed MmSafeCopyToUser and
1308 MmSafeCopyFromUser as source files need these but don't want internal
1309 mm definitions.
1310 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtPulseEvent,
1311 NtQueryEvent, NtResetEvent, NtSetEvent): Copy data to and from
1312 user mode safely.
1313 * ntoskrnl/rtl/mem.c (MmCopyToCaller, MmCopyFromCaller): Helper
1314 functions for copying data to and from potentially unsafe pointers.
1315
1316 2000-12-23 David Welch <welch@cwcom.net>
1317
1318 * All task switching is done in software.
1319 * Beginnings of v86 mode support.
1320
1321 2000-12-22 David Welch <welch@cwcom.net>
1322
1323 * ntoskrnl/ps/kill.c (PiTerminateProcessThreads): Drop
1324 PiThreadListLock before calling PsTerminateOtherThread
1325
1326 2000-12-16 David Welch <welch@cwcom.net>
1327
1328 * ntoskrnl/ex/fmutex.c (ExReleaseFastMutexUnsafe): Only set the
1329 fast mutex's owner back to NULL if it is being released
1330
1331 2000-12-10 David Welch <welch@cwcom.net>
1332
1333 * ntoskrnl/ke/i386/vm86_sup.S (Ki386RetToV86Mode): Added function
1334 to do the raw switch to v86 mode.
1335 * ntoskrnl/include/internal/vm86.h: Definitions for the v86 mode
1336 support.
1337
1338 2000-12-10 David Welch <welch@cwcom.net>
1339
1340 * ntoskrnl/ke/i386/trap.s (PsBeginThreadWithContextInternal): Moved
1341 to ntoskrnl/ke/i386/bswitch.S.
1342 * ntoskrnl/ke/i386/trap.s (interrupt_handler2e): Moved to
1343 ntoskrnl/ke/i386/syscall.S.
1344 * ntoskrnl/ke/i386/trap.s (old_interrupt_handler2e): Removed.
1345
1346 2000-12-04 David Welch <welch@cwcom.net>
1347
1348 * ntoskrnl/ke/i386/irq.c (KiInterruptDispatch): Record the last PC
1349 value for a rescheduled thread.
1350 * ntoskrnl/ke/i386/irqhand.s: Construct a primitive trap frame
1351 in interrupt handlers.
1352
1353 2000-08-30 David Welch <welch@cwcom.net>
1354
1355 * Added calibration of KeStallExecutionProcessor timing
1356 (code from linux 2.2.16).
1357
1358 * Corrected compilation bugs in user32 library.
1359
1360 * Corrected compilation bugs related to anonymous structs
1361 in ndis code.
1362
1363 * Pass command line to kernel from loadros.
1364
1365 * Corrected PIC mask calculation.
1366
1367 2000-05-27 David Welch <welch@cwcom.net>
1368
1369 * Fixed issue with closing non-existent or already closed
1370 handle.
1371
1372 2000-01-26 David Welch <welch@cwcom.net>
1373
1374 * ZwCreateProcess now maps ntdll rather than the user-mode
1375 code.
1376
1377 1999-09-06 David Welch <welch@cwcom.net>
1378
1379 * Implemented ZwOpenProcess.
1380
1381 * Partially implemented killing other threads (possible memory
1382 leaks).
1383
1384 * Made a start on a proper implemention of APCs (based on
1385 article in NT insider).
1386
1387 1998-12-08 David Welch <welch@cwcom.net>
1388
1389 * Corrected bug in shell (Read two keypresses and assumed they
1390 where the key going up and down respectively).
1391
1392 * Corrected race in dpc handling.
1393
1394 * Took out cleanup sections in ZwReadFile (now handled by the
1395 APC).
1396
1397 * Disabled broken code in kernel32.
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407