reactos.git
11 years ago- Make symdump and ctm msvc-aware
Stefan Ginsberg [Mon, 3 Aug 2009 17:08:45 +0000 (17:08 +0000)]
- Make symdump and ctm msvc-aware

svn path=/trunk/; revision=42367

11 years ago- Remove WIP comment -- the fix is correct
Stefan Ginsberg [Mon, 3 Aug 2009 17:08:17 +0000 (17:08 +0000)]
- Remove WIP comment -- the fix is correct

svn path=/trunk/; revision=42366

11 years ago- Fix some msvc issues in rostests
Stefan Ginsberg [Mon, 3 Aug 2009 16:59:43 +0000 (16:59 +0000)]
- Fix some msvc issues in rostests

svn path=/trunk/; revision=42365

11 years agoUse ALL_X macros in fstat, fixes one msvcrt file winetest
Gregor Schneider [Mon, 3 Aug 2009 16:57:20 +0000 (16:57 +0000)]
Use ALL_X macros in fstat, fixes one msvcrt file winetest

svn path=/trunk/; revision=42364

11 years ago- Fix mbslwr: increment pointer in both cases (prevents infinite loops)
Gregor Schneider [Mon, 3 Aug 2009 16:15:40 +0000 (16:15 +0000)]
- Fix mbslwr: increment pointer in both cases (prevents infinite loops)
- Check for null character pointers, apply somewhat readable formatting
- Add some useful header information
See issue #4755 for more details.

svn path=/trunk/; revision=42363

11 years ago- strmini.h: Include windef.h so CDECL gets defined for msvc version of DEFINE_GUIDEX...
Stefan Ginsberg [Mon, 3 Aug 2009 13:46:37 +0000 (13:46 +0000)]
- strmini.h: Include windef.h so CDECL gets defined for msvc version of DEFINE_GUIDEX in ks.h
- Fix misc msvc issues in paint, setup, mmsys and mmebuddy
- Simplify the way kernel32 is built, reverting the "test" from 14241

svn path=/trunk/; revision=42362

11 years ago - Revert r42358 due to what seems to be issues handling cleanup IRPs
Cameron Gutman [Mon, 3 Aug 2009 07:07:21 +0000 (07:07 +0000)]
 - Revert r42358 due to what seems to be issues handling cleanup IRPs

svn path=/trunk/; revision=42360

11 years ago - Fix a typo
Cameron Gutman [Mon, 3 Aug 2009 06:57:21 +0000 (06:57 +0000)]
 - Fix a typo

svn path=/trunk/; revision=42359

11 years ago - Check if the handle is valid before closing it
Cameron Gutman [Mon, 3 Aug 2009 03:41:34 +0000 (03:41 +0000)]
 - Check if the handle is valid before closing it
 - Remove (unused) TdiCloseDevice
 - Don't reference the Connection/Address File object twice (it is already referenced in TdiOpenDevice)

svn path=/trunk/; revision=42358

11 years agoMore gdi xlate tests.
Timo Kreuzer [Mon, 3 Aug 2009 02:27:08 +0000 (02:27 +0000)]
More gdi xlate tests.

svn path=/trunk/; revision=42357

11 years ago - Keep waiting for a reply if we get one that is not ours or invalid
Cameron Gutman [Mon, 3 Aug 2009 02:15:17 +0000 (02:15 +0000)]
 - Keep waiting for a reply if we get one that is not ours or invalid
 - Make sure the packet we got is from our target otherwise discard it

svn path=/trunk/; revision=42356

11 years ago - Don't hold the spin lock when calling the request completion handler
Cameron Gutman [Mon, 3 Aug 2009 00:23:55 +0000 (00:23 +0000)]
 - Don't hold the spin lock when calling the request completion handler

svn path=/trunk/; revision=42355

11 years ago - Copy the datagram data to all matching receive requests instead of just the first...
Cameron Gutman [Sun, 2 Aug 2009 23:17:39 +0000 (23:17 +0000)]
 - Copy the datagram data to all matching receive requests instead of just the first one we find
 - Fix (completely broken) datagram truncation

svn path=/trunk/; revision=42354

11 years agoasm version of DIB_32BPP_ColorFill:
Timo Kreuzer [Sun, 2 Aug 2009 22:31:29 +0000 (22:31 +0000)]
asm version of DIB_32BPP_ColorFill:
- Add frame pointer
- Get rid of algin_draw, 32bpp surfaces must be DWORD aligned
- Optimize the loop
- Add comments

svn path=/trunk/; revision=42353

11 years agoRemove r42305 hack, preserve racial purity of KiSystemStartupReal.
Dmitry Gorbachev [Sun, 2 Aug 2009 21:27:26 +0000 (21:27 +0000)]
Remove r42305 hack, preserve racial purity of KiSystemStartupReal.

svn path=/trunk/; revision=42352

11 years agoAdd a new hack.
Dmitry Gorbachev [Sun, 2 Aug 2009 21:27:01 +0000 (21:27 +0000)]
Add a new hack.

svn path=/trunk/; revision=42351

11 years agoLove Nystrom (=lovenystrom=at=hotmail=dot=com=), bug #4727
Dmitry Gorbachev [Sun, 2 Aug 2009 21:26:05 +0000 (21:26 +0000)]
Love Nystrom (=lovenystrom=at=hotmail=dot=com=), bug #4727

- Change some 'suspiciously looking' code in bootvid.dll.
- BOOTCHAR_HEIGHT: a new macro to use instead of a plain integer.
- CHAR_GEN_UPSIDE_DOWN: define it for upside down font data.

svn path=/trunk/; revision=42350

11 years ago- Wooops, fix dxg and dxapi build after 42346.
Stefan Ginsberg [Sun, 2 Aug 2009 21:04:13 +0000 (21:04 +0000)]
- Wooops, fix dxg and dxapi build after 42346.

svn path=/trunk/; revision=42349

11 years ago- probe.h: "NTOSKRNL unfortunately doesn't export RtlRaiseStatus!" -- no, but it...
Stefan Ginsberg [Sun, 2 Aug 2009 20:35:19 +0000 (20:35 +0000)]
- probe.h: "NTOSKRNL unfortunately doesn't export RtlRaiseStatus!" -- no, but it does export ExRaiseStatus, so use it instead from win32k instead of "W32kRaiseStatus". Also use ExRaiseAccessViolation instead of RtlRaiseStatus(STATUS_ACCESS_VIOLATION) to save some space.
- ddraw.h: Don't check if WINNT is defined, our winnt.h defines _WINNT_H. Also fix the way CO_E_NOTINITIALIZED is defined.
- Define NT_BUILD_ENVIRONMENT in win32k so the define in ddraw.h doesn't conflict with winerror.h. Not sure if this is correct, but our headers are a mess.
- Add a hack to disable C4276 (caused by napi.h) until a more proper fix is devised.
- Win32K now fully compiles in MSVC.

svn path=/trunk/; revision=42346

11 years agoReadFile: When reading from a console handle with processed input mode enabled, simul...
Jeffrey Morlan [Sun, 2 Aug 2009 18:56:05 +0000 (18:56 +0000)]
ReadFile: When reading from a console handle with processed input mode enabled, simulate EOF if the first character read is ^Z (Bug 4745)

svn path=/trunk/; revision=42345

11 years ago[PORTCLS]
Johannes Anderwald [Sun, 2 Aug 2009 18:20:39 +0000 (18:20 +0000)]
[PORTCLS]
- Fix lots of COM object leaks
- IPortWaveCyclic & IPortTopology drivers now shutdown cleanly
- Implement freeing of all registered physical connections and release of the registered power management interface
[SYSAUDIO]
- Close handles to audio filters

svn path=/trunk/; revision=42344

11 years ago- npapi.h: Correct definitions of function pointer prototypes.
Stefan Ginsberg [Sun, 2 Aug 2009 17:38:27 +0000 (17:38 +0000)]
- npapi.h: Correct definitions of function pointer prototypes.
- ntifs.h & cmdata.h : Don't use array size of 0. Fixes C4200.
- wdm.h: Correct definition of 64-bit SLIST_HEADER. Add explicit casts to avoid /W4 warnings in RtlEnlargedUnsignedDivide.
- winddk.h: Add MSVC intrinsic __readfsbyte for KeGetCurrentProcessorNumber. Misc fixes.
- Fix various msvc issues in cmd, setupapi, usetup, win32csr, winlogon, msafd, ws2_32 and ext2lib, most notably:
  - cmd & doskey: Don't use fishy gcc extension to allocate variable-sized arrays from the stack. Use the heap instead.
- Disable warning C4733 for mingw_main too (was only done for mingw_wmain previously).
- advapi32: Pass the correct handles to TRACE -- spotted by MSVC.
- Set the specified register in ecx in MSVC versions of Ke386Wrmsr and Ke386Rdmsr instead of reading from/writing to a random MSR. Yay /W4.

svn path=/trunk/; revision=42342

11 years agoCleanup in win32k/dib:
Gregor Schneider [Sun, 2 Aug 2009 15:49:17 +0000 (15:49 +0000)]
Cleanup in win32k/dib:
- Replace old headers with new ones, programmers added according to svn blame info
- Apply consistent 2pt indentation because of the many indentation levels in this code; getting rid of a tab and 2/3/4pt mixture
- Rename universal StretchBlt file to reflect content

svn path=/trunk/; revision=42339

11 years agoFix many incompatibilities in DIR switch parsing, including those noted in Bug 4744.
Jeffrey Morlan [Sun, 2 Aug 2009 15:16:03 +0000 (15:16 +0000)]
Fix many incompatibilities in DIR switch parsing, including those noted in Bug 4744.

svn path=/trunk/; revision=42338

11 years ago- Implement KsStreamPointerDelete, KsStreamPointerScheduleTimeout, KsStreamPointerCan...
Johannes Anderwald [Sun, 2 Aug 2009 14:40:15 +0000 (14:40 +0000)]
- Implement KsStreamPointerDelete, KsStreamPointerScheduleTimeout, KsStreamPointerCancelTimeout, KsPinGetFirstCloneStreamPointer, KsStreamPointerGetNextClone
- Partly Implement IKsPin_DispatchDeviceIoControl, IKsPin_Close

svn path=/trunk/; revision=42337

11 years ago[KS]
Johannes Anderwald [Sun, 2 Aug 2009 12:38:08 +0000 (12:38 +0000)]
[KS]
- Acquire Spinlock at dpc level
- Release cancel spinlock at correct level
[PORTCLS]
- Check if current partially processed irp has been cancelled and complete it in that case
- Silence debug flood

svn path=/trunk/; revision=42335

11 years ago[KS]
Johannes Anderwald [Sun, 2 Aug 2009 11:40:38 +0000 (11:40 +0000)]
[KS]
- Implement KsQueryInformationFile
- Properly implement KsStreamIo
- Fix a desastreous bug in KsRemoveIrpFromCancelableQueue
- Implement KsMoveIrpsOnCancelableQueue
[PORTCLS]
- Switch portcls to use the provided ks irp queue function instead of the homegrown IRP_MAPPING routines. Irp queueing is now faster and consumes less memory
- Return an allocated silence buffer when there are no mappings available
- HACK-Remove: Don't pre-complete any audio buffers now anymore. If you experience audio stuttering, let me know
[SYSAUDIO, PORTCLS, KMIXER]
- FastRead / FastWrite routines must store their return values in the status block as KsStreamIo now checks these

svn path=/trunk/; revision=42334

11 years ago[rbuild] Copy files to livecd output directory only if they have changed
Hervé Poussineau [Sun, 2 Aug 2009 08:06:17 +0000 (08:06 +0000)]
[rbuild] Copy files to livecd output directory only if they have changed

svn path=/trunk/; revision=42330

11 years ago[rbuild] Fix wrapping of long lines in generated makefile
Hervé Poussineau [Sun, 2 Aug 2009 08:06:04 +0000 (08:06 +0000)]
[rbuild] Fix wrapping of long lines in generated makefile

svn path=/trunk/; revision=42329

11 years agoAdd regtests/gdi
Timo Kreuzer [Sun, 2 Aug 2009 00:26:51 +0000 (00:26 +0000)]
Add regtests/gdi
Tests for gdi, written in winetest style so it can be easily plugged into sysreg. Currently containing some xlate tests. More to come.

svn path=/trunk/; revision=42328

11 years ago- Properly define dummy unions/structs for MSVC too.
Stefan Ginsberg [Sat, 1 Aug 2009 19:10:16 +0000 (19:10 +0000)]
- Properly define dummy unions/structs for MSVC too.

svn path=/trunk/; revision=42327

11 years agoFloodFill:
Gregor Schneider [Sat, 1 Aug 2009 17:58:28 +0000 (17:58 +0000)]
FloodFill:
- Remove unneeded casts when setting the initial flood start, add debug print for flood region location (silenced)
- Improve memory guards, free memory on error

svn path=/trunk/; revision=42324

11 years agoFloodFill:
Gregor Schneider [Sat, 1 Aug 2009 14:39:40 +0000 (14:39 +0000)]
FloodFill:
-Get rid of global variables for flood control
-Translate the provided color to the surface, not the other way around (improves speed)
-Rename the function to reflect the functionality
-Add comments on how to implement support for hatched brushes and non-standard surfaces
-Thanks to tkreuzer for feedback

svn path=/trunk/; revision=42323

11 years agoGetWindowLongPtr returns a LONG_PTR, so be it
Gregor Schneider [Sat, 1 Aug 2009 11:32:48 +0000 (11:32 +0000)]
GetWindowLongPtr returns a LONG_PTR, so be it

svn path=/trunk/; revision=42322

11 years ago- Handle WM_SETREDRAW messages differently in the DefWndProc, ported from current...
Gregor Schneider [Sat, 1 Aug 2009 11:26:40 +0000 (11:26 +0000)]
- Handle WM_SETREDRAW messages differently in the DefWndProc, ported from current Wine
- Fixes mIRC riched component regression, no more riched20 reverts for releases needed
See issue #4098 for more details.

svn path=/trunk/; revision=42321

11 years agoFix a typo in EngMovePointer
Gregor Schneider [Fri, 31 Jul 2009 19:55:16 +0000 (19:55 +0000)]
Fix a typo in EngMovePointer

svn path=/trunk/; revision=42318

11 years ago- ...mised this one
Stefan Ginsberg [Fri, 31 Jul 2009 18:40:19 +0000 (18:40 +0000)]
- ...mised this one

svn path=/trunk/; revision=42317

11 years agoRemove leftover debug print
Gregor Schneider [Fri, 31 Jul 2009 18:32:33 +0000 (18:32 +0000)]
Remove leftover debug print

svn path=/trunk/; revision=42316

11 years ago- Fix gdi32 build due to missing ";"
Stefan Ginsberg [Fri, 31 Jul 2009 18:30:37 +0000 (18:30 +0000)]
- Fix gdi32 build due to missing ";"

svn path=/trunk/; revision=42315

11 years ago- delayimp.h: Use FORCEINLINE instead of static __inline__
Stefan Ginsberg [Fri, 31 Jul 2009 18:21:24 +0000 (18:21 +0000)]
- delayimp.h: Use FORCEINLINE instead of static __inline__
- winbase.h: Make winbase.h usable by MSVC
- winuser.h: Add missing const specifiers to GetTabbedTextExtentA/W, TabbedTextOutA/W, ToAscii/Ex and ToUnicode/Ex
- Make gdi32, user32, beepmidi and csrss drmk build in msvc
- Fix most msvc issues in win32k -- a few remain
- Make ntoskrnl compile with /W1 again

svn path=/trunk/; revision=42314

11 years ago- Use system wide caret width and height if one of those parameters is zero
Gregor Schneider [Fri, 31 Jul 2009 17:11:21 +0000 (17:11 +0000)]
- Use system wide caret width and height if one of those parameters is zero
- Ref: http://msdn.microsoft.com/en-us/library/ms648399(VS.85).aspx
- Allows to show the caret in riched20a components (Wordpad f.e.)
See issue #1559 for more details.

svn path=/trunk/; revision=42313

11 years agoFix _M_X86 -> _M_IX86.
Dmitry Gorbachev [Fri, 31 Jul 2009 16:32:22 +0000 (16:32 +0000)]
Fix _M_X86 -> _M_IX86.

svn path=/trunk/; revision=42312

11 years ago- Implement Floodfill: iterative four neighbors version
Gregor Schneider [Fri, 31 Jul 2009 15:41:09 +0000 (15:41 +0000)]
- Implement Floodfill: iterative four neighbors version
- Details for this algorithm are described in the comments
- Nice with the paint clone since the bucket fill tool works now

svn path=/trunk/; revision=42311

11 years ago- Partly Implement KsRegisterFilterWithNoKSPins
Johannes Anderwald [Fri, 31 Jul 2009 10:10:26 +0000 (10:10 +0000)]
- Partly Implement KsRegisterFilterWithNoKSPins
- Implement _KsEdit

svn path=/trunk/; revision=42310

11 years agoDon't try to delete non existing XLateObjects (NULL brushes return those for example)
Gregor Schneider [Thu, 30 Jul 2009 21:12:06 +0000 (21:12 +0000)]
Don't try to delete non existing XLateObjects (NULL brushes return those for example)

svn path=/trunk/; revision=42309

11 years ago- Fix a bug in GPF handler, do not hang in it.
Dmitry Gorbachev [Thu, 30 Jul 2009 17:54:21 +0000 (17:54 +0000)]
- Fix a bug in GPF handler, do not hang in it.
- Initialize Esp field in TSS.

svn path=/trunk/; revision=42306

11 years agoAdd a hack in KiSystemStartupReal function until Better Times.
Dmitry Gorbachev [Thu, 30 Jul 2009 17:54:01 +0000 (17:54 +0000)]
Add a hack in KiSystemStartupReal function until Better Times.

svn path=/trunk/; revision=42305

11 years ago- Partly Implement KsCacheMedium
Johannes Anderwald [Thu, 30 Jul 2009 16:51:03 +0000 (16:51 +0000)]
- Partly Implement KsCacheMedium
- Implement KsHandleSizedListQuery
- Remove KsGetChildCreateParameter, it is not exported in NT 5.1 KS

svn path=/trunk/; revision=42303

11 years ago- Implement KsAcquireResetValue, KsCompletePendingRequest, KsAllocateExtraData
Johannes Anderwald [Thu, 30 Jul 2009 14:20:13 +0000 (14:20 +0000)]
- Implement KsAcquireResetValue, KsCompletePendingRequest, KsAllocateExtraData

svn path=/trunk/; revision=42302

11 years ago- Implement KsFreeEventList, KsDisableEvent
Johannes Anderwald [Thu, 30 Jul 2009 09:43:54 +0000 (09:43 +0000)]
- Implement KsFreeEventList, KsDisableEvent

svn path=/trunk/; revision=42298

11 years ago- Implement KsAddEvent, KsDefaultAddEventHandler, KsPinAttachAndGate, KsPinAttachOrGa...
Johannes Anderwald [Thu, 30 Jul 2009 07:31:41 +0000 (07:31 +0000)]
- Implement KsAddEvent, KsDefaultAddEventHandler, KsPinAttachAndGate, KsPinAttachOrGate, KsPinGetAndGate

svn path=/trunk/; revision=42296

11 years ago- Implement KsDeviceSetBusData, KsDeviceGetBusData, KsGetPinFromIrp
Johannes Anderwald [Thu, 30 Jul 2009 06:29:24 +0000 (06:29 +0000)]
- Implement KsDeviceSetBusData, KsDeviceGetBusData, KsGetPinFromIrp

svn path=/trunk/; revision=42295

11 years ago- Add RtlConvertLongToLuid, RtlConvertUlongToLuid
Johannes Anderwald [Thu, 30 Jul 2009 06:26:28 +0000 (06:26 +0000)]
- Add RtlConvertLongToLuid, RtlConvertUlongToLuid

svn path=/trunk/; revision=42294

11 years ago- Fix Class ids.
James Tabor [Thu, 30 Jul 2009 01:37:02 +0000 (01:37 +0000)]
- Fix Class ids.

svn path=/trunk/; revision=42293

11 years agouser32:
Gregor Schneider [Wed, 29 Jul 2009 18:28:11 +0000 (18:28 +0000)]
user32:
- Restructure and simplify CreateCursorFromData
- Call CreateIconFromResourceEx properly allowing it to create colored icons (although it doesn't care about that yet)
- Fix some comment typos
win32k:
- Don't just copy the pointer to an XLATEOBJ, copy instead. The caller will free it, EngSetPointerShape will do so too (causing either double-frees or memory write errors)

svn path=/trunk/; revision=42291

11 years ago- Start Implementing IKsPin interface
Johannes Anderwald [Wed, 29 Jul 2009 09:48:36 +0000 (09:48 +0000)]
- Start Implementing IKsPin interface
- Increment PinInstanceCount when a pin has succcessfully been created
- Implement KsPinAcquireProcessingMutex, KsPinGetConnectedPinDeviceObject, KsPinGetConnectedFileObject, KsPinGetConnectedPinInterface, KsPinGetNextSiblingPin, KsPinGetParentFilter, KsPinRegisterFrameReturnCallback, KsPinRegisterHandshakeCallback, KsPinRegisterIrpCompletionCallback, KsPinRegisterPowerCallbacks, KsPinReleaseProcessingMutex
- Initialize pin dispatch table
- Add create items for allocator, clock, node create requests
- AVStream clients should now be able to instantiated pins, streaming not yet supported

svn path=/trunk/; revision=42283

11 years ago- Add KsGetNextSibling, KsFreeObjectBag
Johannes Anderwald [Wed, 29 Jul 2009 09:33:40 +0000 (09:33 +0000)]
- Add KsGetNextSibling, KsFreeObjectBag

svn path=/trunk/; revision=42282

11 years ago- Fix 41969 -- the wrong flag got set, creating a broken, unusable debug object....
Stefan Ginsberg [Tue, 28 Jul 2009 21:48:49 +0000 (21:48 +0000)]
- Fix 41969 -- the wrong flag got set, creating a broken, unusable debug object. Please make sure you know basic C before trying some clever optimization. Debuggers should now work again...

svn path=/trunk/; revision=42280

11 years ago- Implement KsAcquireControl, KsReleaseControl
Johannes Anderwald [Tue, 28 Jul 2009 19:32:22 +0000 (19:32 +0000)]
- Implement KsAcquireControl, KsReleaseControl
- Add create item for creation of pins and topology nodes
- Implement pin creation handler

svn path=/trunk/; revision=42279

11 years ago- Copy Filter descriptor for each instantiated filter
Johannes Anderwald [Tue, 28 Jul 2009 18:38:13 +0000 (18:38 +0000)]
- Copy Filter descriptor for each instantiated filter
- Implement KsFilterAddTopologyConnections, KsFilterCreatePinFactory

svn path=/trunk/; revision=42278

11 years ago- Implement KsFilterAcquireProcessingMutex, KsFilterReleaseProcessingMutex, KsFilterG...
Johannes Anderwald [Tue, 28 Jul 2009 17:01:36 +0000 (17:01 +0000)]
- Implement KsFilterAcquireProcessingMutex, KsFilterReleaseProcessingMutex, KsFilterGetChildPinCount, KsFilterRegisterPowerCallbacks, KsGetFilterFromIrp

svn path=/trunk/; revision=42277

11 years ago- Add KsPinGetParentFilter prototype
Johannes Anderwald [Tue, 28 Jul 2009 16:42:36 +0000 (16:42 +0000)]
- Add KsPinGetParentFilter prototype

svn path=/trunk/; revision=42276

11 years ago- Implement KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFrom...
Johannes Anderwald [Tue, 28 Jul 2009 16:18:05 +0000 (16:18 +0000)]
- Implement KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent
- Create object bag for IKsFilter, IKsFilterFactory and IKsDevice

svn path=/trunk/; revision=42275

11 years ago- Implement KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFrom...
Johannes Anderwald [Tue, 28 Jul 2009 13:52:57 +0000 (13:52 +0000)]
- Implement KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent

svn path=/trunk/; revision=42268

11 years ago- Implement KoDriverInitialize, KoDeviceInitialize
Johannes Anderwald [Tue, 28 Jul 2009 10:22:02 +0000 (10:22 +0000)]
- Implement KoDriverInitialize, KoDeviceInitialize
- Fix storing of device descriptor in KsInitializeDriver, KsAddDevice

svn path=/trunk/; revision=42264

11 years ago- Fix a regression introduced in 40710, which caused all machine-specific memory...
Aleksey Bragin [Tue, 28 Jul 2009 10:00:58 +0000 (10:00 +0000)]
- Fix a regression introduced in 40710, which caused all machine-specific memory regions to be concatenated into one big LoaderSpecialMemory. Restore previous behaviour by properly matching Arc and bootloader memory types.

svn path=/trunk/; revision=42263

11 years agowinsock2.h should come before windows.h
Ged Murphy [Mon, 27 Jul 2009 19:42:05 +0000 (19:42 +0000)]
winsock2.h should come before windows.h

svn path=/trunk/; revision=42257

11 years ago- Implement KsReferenceBusObject, KsReferenceSoftwareBusObject, KsDereferenceSoftware...
Johannes Anderwald [Mon, 27 Jul 2009 18:40:50 +0000 (18:40 +0000)]
- Implement KsReferenceBusObject, KsReferenceSoftwareBusObject, KsDereferenceSoftwareBusObject, KsDereferenceBusObject

svn path=/trunk/; revision=42256

11 years ago+ portcls
Johannes Anderwald [Mon, 27 Jul 2009 18:18:20 +0000 (18:18 +0000)]
+ portcls
+ ks
- ws2help_new

svn path=/trunk/; revision=42255

11 years ago- Remove DriverEntry as ks is kernel mode dll
Johannes Anderwald [Mon, 27 Jul 2009 16:17:24 +0000 (16:17 +0000)]
- Remove DriverEntry as ks is kernel mode dll
- Implement KsGetImageNameAndResourceId, KsMapModuleName

svn path=/trunk/; revision=42254

11 years ago- Remove dead (uncalled) function.
ReactOS Portable Systems Group [Mon, 27 Jul 2009 02:23:25 +0000 (02:23 +0000)]
- Remove dead (uncalled) function.

svn path=/trunk/; revision=42253

11 years ago- Create a double-mapping PTE for the shared user data region and fault it in wheneve...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 02:13:19 +0000 (02:13 +0000)]
- Create a double-mapping PTE for the shared user data region and fault it in whenever a process touches that address.
- Remove the old hack which used the PCR's page frame number to create a fake PTE each time to reference it, basing on the fact that the shared user data region was on the same page as the PCR on certain architectures.

svn path=/trunk/; revision=42252

11 years ago- Create \dev\physmem section during section initialization, not later.
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:52:44 +0000 (00:52 +0000)]
- Create \dev\physmem section during section initialization, not later.
- Setup SharedUserData settings during Phase 0, not Phase 1. Fixes an old bug where the Inbv driver assumed ReactOS was in "server mode" simply because the default SharedUserData->NtProductType was "0" (which is an invalid product type, but it's != NtProductTypeNt).
  - Also fixed it such that this reports NtProductServer, which is what ReactOS reports to be (Windows 2003 Server SP 1).
- Initialize the modified page writer and balancer thread in phase 1, not phase 2.
  - Phase 2 should make the executive pageable, but I don't think this is supported yet...

svn path=/trunk/; revision=42251

11 years ago- Fix a ridiculous copy-paste-error-while-writing-the-commit-log error. Sorry for...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:17:38 +0000 (00:17 +0000)]
- Fix a ridiculous copy-paste-error-while-writing-the-commit-log error. Sorry for breaking the build!

svn path=/trunk/; revision=42250

11 years ago- Delete the blaoted, overweight and slow nonpaged pool implementation.
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:14:56 +0000 (00:14 +0000)]
- Delete the blaoted, overweight and slow nonpaged pool implementation.
- Plug-in support to use the ARM nonpaged pool instead.
- This patch has been tested for over 2 months and all known regressions were fixed.
  - Thanks to Aleksey Bragin for providing a pool regression suite.
  - Thanks to Aleksey Bragin for providing initial implementation details and code from older attempts.
  - Thanks to http://uninformed.org/?v=4&a=2&t=txt and http://www.dfrws.org/2008/proceedings/p58-schuster_pres.pdf for allocation strategies.

svn path=/trunk/; revision=42249

11 years ago- Do not print out ReactOS nonpaged pool VA address range anymore, since it will...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:11:39 +0000 (00:11 +0000)]
- Do not print out ReactOS nonpaged pool VA address range anymore, since it will be deprecated.

svn path=/trunk/; revision=42248

11 years ago- The old nonpaged pool statistic functions (TAB+xxx) in KDBG are incompatible with...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:10:37 +0000 (00:10 +0000)]
- The old nonpaged pool statistic functions (TAB+xxx) in KDBG are incompatible with newer nonpaged pool implementation -- remove them.
- The NtQuerySystemInformation API's pool information levels provide the same information, when implemented properly.

svn path=/trunk/; revision=42247

11 years ago- DebugPool implementation is not compatible with newer nonpaged pool algorithms...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:09:09 +0000 (00:09 +0000)]
- DebugPool implementation is not compatible with newer nonpaged pool algorithms, so remove support for nonpaged pool debugging.
  - Special pool implementation will restore this functionality.

svn path=/trunk/; revision=42246

11 years ago- Implement the algorithms for pool allocation and de-allocation:
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:05:45 +0000 (00:05 +0000)]
- Implement the algorithms for pool allocation and de-allocation:
  - Only tested/works with nonpaged pool for now.
  - No support for session pool or special pool.
  - No support for pool tagging.
  - No support for accounting (free/available pages, etc).
  - No optimizations other than your average combine-with-previous-free and combine-with-next-free mechanisms to avoid fragmentation.
  - No support for debugging.
  - No consistency/validation checks.
  - Heavily commented for the inquiring mind.
  - Thread/MP safe.
- Not used yet.

svn path=/trunk/; revision=42245

11 years agoSome fixes for CLIENTINFO, based on symbol files
Timo Kreuzer [Sun, 26 Jul 2009 22:57:05 +0000 (22:57 +0000)]
Some fixes for CLIENTINFO, based on symbol files

svn path=/trunk/; revision=42243

11 years ago[rbuild] Implement delay import support for gcc in rbuild.
Timo Kreuzer [Sun, 26 Jul 2009 22:36:55 +0000 (22:36 +0000)]
[rbuild] Implement delay import support for gcc in rbuild.
As soon as you declare a library import with
<library delayimport="true"> you will link to the autogenerated delayimportlib. This will currenlty not work without a patched version of dlltool.

svn path=/trunk/; revision=42242

11 years agoFix 64bit compilation issues.
Timo Kreuzer [Sun, 26 Jul 2009 22:34:03 +0000 (22:34 +0000)]
Fix 64bit compilation issues.

svn path=/trunk/; revision=42241

11 years agoHey Arch, thanks for breaking other architectures...
Timo Kreuzer [Sun, 26 Jul 2009 21:46:21 +0000 (21:46 +0000)]
Hey Arch, thanks for breaking other architectures...

svn path=/trunk/; revision=42240

11 years ago- Initialize MmLowestPhysicalPage to -1, otherwise setting this value will never...
ReactOS Portable Systems Group [Sun, 26 Jul 2009 19:44:27 +0000 (19:44 +0000)]
- Initialize MmLowestPhysicalPage to -1, otherwise setting this value will never work properly since we'll never find a page lower than 0 (the default laoder-initialized value).
- Fixed by Stef.

svn path=/trunk/; revision=42237

11 years ago- At a minimum set the desktop to global class.
James Tabor [Sun, 26 Jul 2009 16:57:34 +0000 (16:57 +0000)]
- At a minimum set the desktop to global class.

svn path=/trunk/; revision=42236

11 years ago- Revert winbase.h interlocked intrinsic change for now *sigh*
Stefan Ginsberg [Sun, 26 Jul 2009 16:18:56 +0000 (16:18 +0000)]
- Revert winbase.h interlocked intrinsic change for now *sigh*

svn path=/trunk/; revision=42235

11 years ago- [Win32k] More Class work. Moved to use thread and process information structures.
James Tabor [Sun, 26 Jul 2009 16:17:50 +0000 (16:17 +0000)]
- [Win32k] More Class work. Moved to use thread and process information structures.
- Tested wine, Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42234

11 years ago- Misc fixes for msvc:
Stefan Ginsberg [Sun, 26 Jul 2009 15:36:35 +0000 (15:36 +0000)]
- Misc fixes for msvc:
- C89 compliance for "dbgprint"
- Fix more calling convention declarations in the DDK and gdi32
- Define noreturn attribute for crt's abort compatibly
- Fix some of the mess in psdk's intrinsics -- this needs some major clean up.
- Define DbgPrintEx the same way in debug.h as in NDK and DDK
- UUID doesn't need Wine-specific types -- include standard PSDK headers.

svn path=/trunk/; revision=42233

11 years ago- Use documented structure instead array
Dmitry Chapyshev [Sun, 26 Jul 2009 13:16:19 +0000 (13:16 +0000)]
- Use documented structure instead array
- Add some defines

svn path=/trunk/; revision=42232

11 years ago- Fixed event code. Remove junk too.
James Tabor [Sun, 26 Jul 2009 12:27:15 +0000 (12:27 +0000)]
- Fixed event code. Remove junk too.

svn path=/trunk/; revision=42230

11 years agoSilence a warning.
Dmitry Gorbachev [Sun, 26 Jul 2009 09:55:46 +0000 (09:55 +0000)]
Silence a warning.

svn path=/trunk/; revision=42229

11 years agoSilence a warning.
Dmitry Gorbachev [Sun, 26 Jul 2009 09:52:27 +0000 (09:52 +0000)]
Silence a warning.

svn path=/trunk/; revision=42228

11 years agoSilence a warning.
Dmitry Gorbachev [Sun, 26 Jul 2009 09:52:00 +0000 (09:52 +0000)]
Silence a warning.

svn path=/trunk/; revision=42227

11 years ago- Get rid of the concept and tracking of "mapped pages". The MapCount was never check...
ReactOS Portable Systems Group [Sun, 26 Jul 2009 08:20:29 +0000 (08:20 +0000)]
- Get rid of the concept and tracking of "mapped pages". The MapCount was never checked anywhere in terms of page accounting -- only the reference count is.
- Fix the issue with the system attempting to map page 0 into hyperspace.

svn path=/trunk/; revision=42226

11 years ago - Begin using ws2help_new
Cameron Gutman [Sun, 26 Jul 2009 06:00:32 +0000 (06:00 +0000)]
 - Begin using ws2help_new
 - I have tested this with various applications in ROS
 - Part 2 of 2

svn path=/trunk/; revision=42225

11 years ago - Remove our old ws2help in preparation for the transition to ws2help_new
Cameron Gutman [Sun, 26 Jul 2009 05:51:30 +0000 (05:51 +0000)]
 - Remove our old ws2help in preparation for the transition to ws2help_new
 - This will not build
 - Part 1 of 2

svn path=/trunk/; revision=42224

11 years ago- [Win32k] Moving forward and replace some of the old header types with the new ones...
James Tabor [Sun, 26 Jul 2009 01:59:08 +0000 (01:59 +0000)]
- [Win32k] Moving forward and replace some of the old header types with the new ones. This will continue and start the win32k object manager rewrite. Finding more bugs and this is still a work in progress. Run across the C_ASSERT bug. I see someone else noticed it.
- Finished the user32 system class proc start-up.
- Tested wine, Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42223

11 years agoAdd hack for gnu ld like in mingw lib, as it uses _image_base__ insetad of __ImageBase
Timo Kreuzer [Sun, 26 Jul 2009 00:22:57 +0000 (00:22 +0000)]
Add hack for gnu ld like in mingw lib, as it uses _image_base__ insetad of __ImageBase

svn path=/trunk/; revision=42222

11 years ago- Fix memory leak from r42218 ;0)
Stefan Ginsberg [Sat, 25 Jul 2009 22:19:45 +0000 (22:19 +0000)]
- Fix memory leak from r42218 ;0)

svn path=/trunk/; revision=42221

11 years ago- This is a HIGH RISK patch. It has been tested on multiple emulators and configurati...
ReactOS Portable Systems Group [Sat, 25 Jul 2009 21:35:31 +0000 (21:35 +0000)]
- This is a HIGH RISK patch. It has been tested on multiple emulators and configurations but requires broader input.
- Implement several changes to PFN database management:
  - The PTEs for the PFN Database are now created by ARM3. Unlike the old code which create PTE for every page on the machine, ARM3 only creates PTEs to account for pages that should be in the PFN database.
  - A second related change is what "pages should be in the PFN database". Previously, reserved or otherwise non-existing (ie: holes) memory regions would get a PFN entry created and marked as "BIOS". This is wasteful and not compatible with Windows: there should not be PFN entries created at all.
    - So we removed BIOS PFN entries, and now only create PTEs for valid pages as listed in the physical memory ranges.
    - This allows machines with "holes" in their physical address space not to waste dozens of MBs of nonpaged pool
    - Also saves memory on regular machines too, since 1-4MB worth of memory will now not be in the DB anymore
  - To keep track of pages that are invalid/unknown/ignored, there is now a "PFN Bitmap". This bitmap has one bit set for each valid PFN in the database.
    - And so, MiGetPfnEntry now also validates that, if there is a PFN Bitmap, the requested PFN is actually present in the database.
  - This introduces a major functional change: device pages, reserved pages, and other BIOS pages cannot be referenced, shared, or managed in any meaningful way.
    - We have attempted to fix parts of the OS that depended on this, but there may still be bugs.
      - A known issue may be an assertion during reboot and/or shutdown in the hyperspace mapping function. It is currently safe to simply "cont" in the debugger a couple of times.
        - We are working on a fix.

svn path=/trunk/; revision=42220