reactos.git
14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 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

14 years ago- RamdiskWorkerThread: Don't return IoCompleteRequest as we return void (IoCompleteRe...
Stefan Ginsberg [Sat, 25 Jul 2009 20:24:50 +0000 (20:24 +0000)]
- RamdiskWorkerThread: Don't return IoCompleteRequest as we return void (IoCompleteRequest returns void though), msvc doesn't like this.
- Fix calling convention declaration for scsi function prototypes

svn path=/trunk/; revision=42219

14 years ago- Fix most freeldr compilation issues, most notably:
Stefan Ginsberg [Sat, 25 Jul 2009 20:17:23 +0000 (20:17 +0000)]
- Fix most freeldr compilation issues, most notably:
- Define structure packing correctly for msvc.
- Define Ke386EraseFlags for msvc too.
- Don't return a function returning void in a function returning void.
- VideoFadeIn: Don't rely on some fishy gcc extension for allocating memory from the stack -- just use the heap instead.
- Winldr remains

svn path=/trunk/; revision=42218

14 years ago - Make ipconfig /renew work even if we haven't got an address yet
Cameron Gutman [Sat, 25 Jul 2009 19:51:54 +0000 (19:51 +0000)]
 - Make ipconfig /renew work even if we haven't got an address yet
 - Fix several potential crashes
 - Fix an infinite loop caused by us sending a discover packet without adding a protocol first (this is exposed by releasing then renewing)
 - Fixes bug 4630

svn path=/trunk/; revision=42217

14 years ago- FIELD_OFFSET returns LONG, not LONG_PTR or size_t.
Stefan Ginsberg [Sat, 25 Jul 2009 19:38:52 +0000 (19:38 +0000)]
- FIELD_OFFSET returns LONG, not LONG_PTR or size_t.
- Define TYPE_ALIGNMENT for msvc.
- Define DbgPrintEx the same way in NDK and DDK
- C_ASSERT is a typedef, so don't put it inside functions as msvc doesn't allow this.
- Kernel now *compiles* with RosBE + msvc _and_ our DDK. Linker errors from the ninth circle of hell remains.

svn path=/trunk/; revision=42216

14 years ago- Fix a critical bug in ExAllocatePoolWithQuota spotted by msvc. Because of the curre...
Stefan Ginsberg [Sat, 25 Jul 2009 16:53:25 +0000 (16:53 +0000)]
- Fix a critical bug in ExAllocatePoolWithQuota spotted by msvc. Because of the current POOL_TAGGING mess in wdm.h, ExAllocatePoolWithQuotaTag is defined to ExAllocatePoolWithQuota, so when ExAllocatePoolWithQuota called the with-tag version, it ended up calling _itself_. Fix this by undefining the broken macro.

svn path=/trunk/; revision=42215

14 years ago- Add stubs for AppCleanup and videoThunk32
Dmitry Chapyshev [Sat, 25 Jul 2009 15:57:18 +0000 (15:57 +0000)]
- Add stubs for AppCleanup and videoThunk32
- Partially implement capCreateCaptureWindowW and capGetDriverDescriptionW

svn path=/trunk/; revision=42214

14 years ago- Fix incorrect definition of ZwCreateDebugObject after revision 41969 -- spotted...
Stefan Ginsberg [Sat, 25 Jul 2009 15:31:57 +0000 (15:31 +0000)]
- Fix incorrect definition of ZwCreateDebugObject after revision 41969 -- spotted by BugBoy

svn path=/trunk/; revision=42213

14 years ago- Leftover 2 from 42210
Stefan Ginsberg [Sat, 25 Jul 2009 14:55:52 +0000 (14:55 +0000)]
- Leftover 2 from 42210

svn path=/trunk/; revision=42212

14 years ago- Leftover from previous commit
Stefan Ginsberg [Sat, 25 Jul 2009 14:54:31 +0000 (14:54 +0000)]
- Leftover from previous commit

svn path=/trunk/; revision=42211

14 years ago- Fix most of the network stack for msvc (except tcpip and oskittcp)
Stefan Ginsberg [Sat, 25 Jul 2009 14:51:56 +0000 (14:51 +0000)]
- Fix most of the network stack for msvc (except tcpip and oskittcp)
- Fix calling convention definitions for ntdd8042.h
- Fix msfs' calling convention

svn path=/trunk/; revision=42210

14 years ago- Revert 42206 change to ddraw.h as it breaks dxapi
Stefan Ginsberg [Sat, 25 Jul 2009 14:32:06 +0000 (14:32 +0000)]
- Revert 42206 change to ddraw.h as it breaks dxapi

svn path=/trunk/; revision=42209

14 years ago- Make ks and portcls compile under msvc
Stefan Ginsberg [Sat, 25 Jul 2009 14:06:06 +0000 (14:06 +0000)]
- Make ks and portcls compile under msvc

svn path=/trunk/; revision=42208

14 years ago- Make most of the the video stack compile with msvc
Stefan Ginsberg [Sat, 25 Jul 2009 13:15:22 +0000 (13:15 +0000)]
- Make most of the the video stack compile with msvc

svn path=/trunk/; revision=42206

14 years ago- Make mp HAL MSC compatible
Stefan Ginsberg [Sat, 25 Jul 2009 11:44:27 +0000 (11:44 +0000)]
- Make mp HAL MSC compatible

svn path=/trunk/; revision=42205

14 years ago- Fix some kernel MSC compilation issues:
Stefan Ginsberg [Sat, 25 Jul 2009 11:43:48 +0000 (11:43 +0000)]
- Fix some kernel MSC compilation issues:
- ShutdownThreadMain: Define SMP-only variables compatibly
- MmArmInitSystem: Define MiNonPagedPoolStart and MiNonPagedPoolLength externs compatibly
- KdbpCallMainLoop: Add VOID to parameter list

svn path=/trunk/; revision=42204

14 years ago- Create a solid black brush for background color of a ConsoleWindowClass.
Aleksey Bragin [Sat, 25 Jul 2009 10:24:41 +0000 (10:24 +0000)]
- Create a solid black brush for background color of a ConsoleWindowClass.

svn path=/trunk/; revision=42202

14 years ago- Implement capCreateCaptureWindowA and capGetDriverDescriptionA (based on Wine code)
Dmitry Chapyshev [Sat, 25 Jul 2009 09:41:17 +0000 (09:41 +0000)]
- Implement capCreateCaptureWindowA and capGetDriverDescriptionA (based on Wine code)

svn path=/trunk/; revision=42198

14 years ago- Add avicap32 (stubs only)
Dmitry Chapyshev [Sat, 25 Jul 2009 09:28:18 +0000 (09:28 +0000)]
- Add avicap32 (stubs only)
- Add mfc42u.dll, msvbvm50.dll, msvbvm60.dll, msvcirt.dll optional entries to reactos.dff

svn path=/trunk/; revision=42197

14 years agoDo not fail when compiling with GCC 4.4.1
Dmitry Gorbachev [Sat, 25 Jul 2009 09:24:30 +0000 (09:24 +0000)]
Do not fail when compiling with GCC 4.4.1

svn path=/trunk/; revision=42196

14 years agoAdd / update Czech translations. Radek Liska. Bugs #4707 and #4708.
Dmitry Gorbachev [Sat, 25 Jul 2009 09:18:52 +0000 (09:18 +0000)]
Add / update Czech translations. Radek Liska. Bugs #4707 and #4708.

svn path=/trunk/; revision=42195

14 years agoUndo part of r42190. Sorry.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:59:18 +0000 (07:59 +0000)]
Undo part of r42190. Sorry.

svn path=/trunk/; revision=42194

14 years agoFix some bugs, reported by GCC.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:42:15 +0000 (07:42 +0000)]
Fix some bugs, reported by GCC.

svn path=/trunk/; revision=42193

14 years agoSilence GCC warnings.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:41:42 +0000 (07:41 +0000)]
Silence GCC warnings.

svn path=/trunk/; revision=42192

14 years ago- Declare iswblank() in wctype.h, not isblank().
Dmitry Gorbachev [Sat, 25 Jul 2009 07:41:14 +0000 (07:41 +0000)]
- Declare iswblank() in wctype.h, not isblank().
- Add iswblank() to wchar.h, too.

svn path=/trunk/; revision=42191

14 years agoFix "misrepresented license in FreeLDR", Robert Millan (rmh.reactos at aybabtu.com...
Dmitry Gorbachev [Sat, 25 Jul 2009 07:40:39 +0000 (07:40 +0000)]
Fix "misrepresented license in FreeLDR", Robert Millan (rmh.reactos at aybabtu.com), bug #4673.

svn path=/trunk/; revision=42190

14 years agoDo not fail with 'l' type modifier. Bug #4438.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:40:35 +0000 (07:40 +0000)]
Do not fail with 'l' type modifier. Bug #4438.

svn path=/trunk/; revision=42189

14 years agows2_32_new compatibility fixes
Cameron Gutman [Sat, 25 Jul 2009 02:28:11 +0000 (02:28 +0000)]
ws2_32_new compatibility fixes
 - Fix the rest of the code which was using errno instead of WSAGetLastError()
 - Remove some dead code

svn path=/trunk/; revision=42188

14 years agows2_32_new compatibility fixes
Cameron Gutman [Sat, 25 Jul 2009 02:01:13 +0000 (02:01 +0000)]
ws2_32_new compatibility fixes
 - Use Sleep() to wait when we have no interfaces because select() will fail and return without waiting
 - Use WSAGetLastError() instead of errno

svn path=/trunk/; revision=42187

14 years ago- Removed unused ppi pointer.
James Tabor [Sat, 25 Jul 2009 01:42:04 +0000 (01:42 +0000)]
- Removed unused ppi pointer.

svn path=/trunk/; revision=42186