reactos.git
9 years ago[WIN32K]
Timo Kreuzer [Sat, 5 May 2012 22:06:15 +0000 (22:06 +0000)]
[WIN32K]
Someone passes iUsage == 2, so don't assert in that case, but ignore it as long as it's not supported.

svn path=/trunk/; revision=56520

9 years agofix build
Timo Kreuzer [Sat, 5 May 2012 21:43:39 +0000 (21:43 +0000)]
fix build

svn path=/trunk/; revision=56519

9 years ago[WIN32K]
Timo Kreuzer [Sat, 5 May 2012 21:39:35 +0000 (21:39 +0000)]
[WIN32K]
Implement CreateDIBPalette(), replacing BuildDIBPalette.
It creates a palette without a handle and handles DIB_PAL_COLORS as well as DIB_RGB_COLORS. Additionally it now handles DIB_PAL_BRUSHHACK, which is used for DIB brushes, when DIB_PAL_COLORS is passed to CreateDIBPatternBrush(). The palette is not created directly, but instead the indices into the DC palette are put into the palette and the real palette is created, when the brush is realized. The latter is not yet handled.

svn path=/trunk/; revision=56518

9 years ago[WIN32K]
Timo Kreuzer [Sat, 5 May 2012 21:09:08 +0000 (21:09 +0000)]
[WIN32K]
When dereferencing an object without a handle, don't check for the ready-to-die flag

svn path=/trunk/; revision=56517

9 years ago[NTOS]: Cleanup MiQueryAddressState.
Sir Richard [Sat, 5 May 2012 19:37:34 +0000 (19:37 +0000)]
[NTOS]: Cleanup MiQueryAddressState.

svn path=/trunk/; revision=56516

9 years ago[NTOS]: Attempt to hackfix MiGetPageProtection to support the case seen in OllyDBG.
Sir Richard [Sat, 5 May 2012 19:26:21 +0000 (19:26 +0000)]
[NTOS]: Attempt to hackfix MiGetPageProtection to support the case seen in OllyDBG.
[NTOS]: Implement Case C of NtFreeVirtualMemory, which is sometimes seen in some heap logs. The hard part is figuring out the right amount of committed/decommitted pages. Only supports 2-level paging for now as the algorithm is already messy enough.

svn path=/trunk/; revision=56515

9 years ago[WIN32K]
Timo Kreuzer [Sat, 5 May 2012 17:29:34 +0000 (17:29 +0000)]
[WIN32K]
Rename PALETTE_AllocPalette2 to PALETTE_AllocPalette, allocate PALETTE and color array in one allocation, improve code

svn path=/trunk/; revision=56514

9 years ago[WINETESTS]
Thomas Faber [Sat, 5 May 2012 16:54:37 +0000 (16:54 +0000)]
[WINETESTS]
- Do not multiply define WINVER and friends
- Add missing _WIN32_WINNT define in rpcrt4_winetest. Already sent to Wine(TM)

svn path=/trunk/; revision=56513

9 years ago[GDI32_APITEST]
Timo Kreuzer [Sat, 5 May 2012 14:19:22 +0000 (14:19 +0000)]
[GDI32_APITEST]
- Try to fix some more test fails on win 2003

svn path=/trunk/; revision=56512

9 years ago[GDI32_APITEST]
Timo Kreuzer [Sat, 5 May 2012 12:59:08 +0000 (12:59 +0000)]
[GDI32_APITEST]
- Try to fix some more test fails on win 2003

svn path=/trunk/; revision=56511

9 years agoAdd missing test data files
Timo Kreuzer [Sat, 5 May 2012 12:24:49 +0000 (12:24 +0000)]
Add missing test data files

svn path=/trunk/; revision=56510

9 years ago[GDI32_APITEST]
Timo Kreuzer [Sat, 5 May 2012 12:21:56 +0000 (12:21 +0000)]
[GDI32_APITEST]
- Comment out tests that fail on windows 2003
- Try to fix a number of tests for Windows 2003

svn path=/trunk/; revision=56509

9 years ago[CRT]
Thomas Faber [Sat, 5 May 2012 11:49:54 +0000 (11:49 +0000)]
[CRT]
- Fix declaration of malloc_func_t and free_func_t. Already sent upstream(TM)

svn path=/trunk/; revision=56508

9 years ago[MOUNTMGR]
Thomas Faber [Sat, 5 May 2012 10:31:47 +0000 (10:31 +0000)]
[MOUNTMGR]
- Silence false GCC warnings

svn path=/trunk/; revision=56507

9 years ago[POWRPROF_APITEST]
Thomas Faber [Sat, 5 May 2012 10:21:19 +0000 (10:21 +0000)]
[POWRPROF_APITEST]
- Fix warnings - there is no DischargePolicy[4]
- Disable tests that fail on Windows 2003 (576 failures?!)
- Add missing file header

svn path=/trunk/; revision=56506

9 years ago[POWRPROF_WINETEST]
Thomas Faber [Sat, 5 May 2012 10:09:38 +0000 (10:09 +0000)]
[POWRPROF_WINETEST]
- This test is not from Wine! Move to apitests.

svn path=/trunk/; revision=56505

9 years ago[TRANSLATION]
Olaf Siejka [Sat, 5 May 2012 09:23:27 +0000 (09:23 +0000)]
[TRANSLATION]
- italian translation update by Paolo Devoti (bug no. 7012);

svn path=/trunk/; revision=56504

9 years ago[NTOSKRNL]
Thomas Faber [Sat, 5 May 2012 08:49:45 +0000 (08:49 +0000)]
[NTOSKRNL]
- Give more useful debug output on BAD_POOL_HEADER bug checks

svn path=/trunk/; revision=56503

9 years ago[Win32k]
James Tabor [Sat, 5 May 2012 02:49:17 +0000 (02:49 +0000)]
[Win32k]
- Add alerts and set window state to message box windows. Expands bug 5281.

svn path=/trunk/; revision=56502

9 years ago- Add notification alerts.
James Tabor [Sat, 5 May 2012 00:03:50 +0000 (00:03 +0000)]
- Add notification alerts.

svn path=/trunk/; revision=56501

9 years ago[TESTS]
Timo Kreuzer [Fri, 4 May 2012 19:06:15 +0000 (19:06 +0000)]
[TESTS]
Add missing definition

svn path=/trunk/; revision=56500

9 years ago[GDI32_APITEST]
Timo Kreuzer [Fri, 4 May 2012 19:06:12 +0000 (19:06 +0000)]
[GDI32_APITEST]
Fix warnings

svn path=/trunk/; revision=56499

9 years ago[GDI32_APITEST]
Timo Kreuzer [Fri, 4 May 2012 18:56:43 +0000 (18:56 +0000)]
[GDI32_APITEST]
- Add tests for CreateDIBPatternBrush(Pt)
- Add some helper code to initialize a dibsection and a palette, which can be reused by other tests
- Add tests for DIB brush in GetObject

svn path=/trunk/; revision=56498

9 years ago[WIN32K]
Timo Kreuzer [Fri, 4 May 2012 17:39:00 +0000 (17:39 +0000)]
[WIN32K]
Commit what I forgot

svn path=/trunk/; revision=56497

9 years ago[WIN32K]
Timo Kreuzer [Fri, 4 May 2012 17:37:07 +0000 (17:37 +0000)]
[WIN32K]
- Add cjMaxBits parameter to GreCreateDIBitmapInternal
- Rename GDIBRUSH_* constants to BR_*, as they are named in gdikdx

svn path=/trunk/; revision=56496

9 years ago[GDI32_APITEST]
Timo Kreuzer [Fri, 4 May 2012 12:32:11 +0000 (12:32 +0000)]
[GDI32_APITEST]
- Comment out a broken test (works only on 32bpp)
- Fix MSVC warning

svn path=/trunk/; revision=56495

9 years ago[KERNEL32_APITEST]
Thomas Faber [Fri, 4 May 2012 12:31:47 +0000 (12:31 +0000)]
[KERNEL32_APITEST]
- Add a test checking that GetModuleFileName returns a full path
See issue #6786 for more details.

svn path=/trunk/; revision=56494

9 years ago[GDI32_APITEST]
Timo Kreuzer [Fri, 4 May 2012 12:10:15 +0000 (12:10 +0000)]
[GDI32_APITEST]
Fix gcc build

svn path=/trunk/; revision=56493

9 years ago[GDI32_APITEST]
Timo Kreuzer [Fri, 4 May 2012 11:40:36 +0000 (11:40 +0000)]
[GDI32_APITEST]
- Add tests for GetDIBColorTable and SetPixel,
- Add more tests for CreateBitmap, GetPixel, PatBlt

svn path=/trunk/; revision=56492

9 years ago[NTOSKRNL]
Timo Kreuzer [Fri, 4 May 2012 11:32:07 +0000 (11:32 +0000)]
[NTOSKRNL]
- Fix amd64 build
- Fix some MSVC/amd64 warnings

svn path=/trunk/; revision=56491

9 years ago[KERNEL32]
Thomas Faber [Fri, 4 May 2012 10:32:49 +0000 (10:32 +0000)]
[KERNEL32]
- Fix SetCurrentDirectoryA to return success when setting the current directory again
See issue #6874 for more details.

svn path=/trunk/; revision=56490

9 years ago[KERNEL32_APITEST]
Thomas Faber [Fri, 4 May 2012 10:28:54 +0000 (10:28 +0000)]
[KERNEL32_APITEST]
- Add some tests for GetCurrentDirectory and SetCurrentDirectory

svn path=/trunk/; revision=56489

9 years ago[NTOSKRNL]
Art Yerkes [Thu, 3 May 2012 21:05:06 +0000 (21:05 +0000)]
[NTOSKRNL]
Account for wait entries delaying a view attribute change and interacting
with the machinery in CoW copying code, specifically making CoW insert and
revoke a wait while copying the page, and make the CoW copy function take
both pages as arguments rather than relying on the address space.

Also alter the MM_WAIT_ENTRY value a bit to take into account an assert
that it must have bit 0x800 set.

svn path=/trunk/; revision=56488

9 years ago[Win32k]
James Tabor [Thu, 3 May 2012 20:58:53 +0000 (20:58 +0000)]
[Win32k]
- Add a define for non window pointers. Help out Timo.

svn path=/trunk/; revision=56487

9 years ago- Move NtGdiSetBrushOrg from brush.c to dcobjs.c, since it doesn't really deal with...
Timo Kreuzer [Thu, 3 May 2012 18:55:38 +0000 (18:55 +0000)]
- Move NtGdiSetBrushOrg from brush.c to dcobjs.c, since it doesn't really deal with brushes, but with the dc and is related to the brush seletcted into the dc. Cleanup, simplify and fix the function.
- rename IntptlBrushOrigin to DC_vSetBrushOrigin and also move it to dcobjs.c

svn path=/trunk/; revision=56486

9 years ago[GDI32_APITEST]
Timo Kreuzer [Thu, 3 May 2012 18:54:19 +0000 (18:54 +0000)]
[GDI32_APITEST]
Add tests for SetBrushOrgEx

svn path=/trunk/; revision=56485

9 years ago[TCPIP]
Cameron Gutman [Thu, 3 May 2012 18:38:59 +0000 (18:38 +0000)]
[TCPIP]
- Update the cached link and IP information when a link status change occurs

svn path=/trunk/; revision=56484

9 years ago[WIN32K]
Timo Kreuzer [Thu, 3 May 2012 15:19:47 +0000 (15:19 +0000)]
[WIN32K]
Remove debug break point. Thanks to r3ddr4g0n for noticing.

svn path=/trunk/; revision=56483

9 years ago[WIN32K]
Timo Kreuzer [Thu, 3 May 2012 14:39:53 +0000 (14:39 +0000)]
[WIN32K]
Only set the surface's bitmap bits when iType == STYPE_BITMAP.
Fixes booting with vbox drivers installed.

svn path=/trunk/; revision=56482

9 years ago[WIN32K]
Timo Kreuzer [Thu, 3 May 2012 11:14:11 +0000 (11:14 +0000)]
[WIN32K]
Revert a part of 56478.

svn path=/trunk/; revision=56481

9 years ago[WINED3D]
Amine Khaldi [Wed, 2 May 2012 22:48:35 +0000 (22:48 +0000)]
[WINED3D]
* Fix msvc x64 build.
See issue #7032 for more details.

svn path=/trunk/; revision=56480

9 years ago[LICENSE]
Aleksey Bragin [Wed, 2 May 2012 21:36:27 +0000 (21:36 +0000)]
[LICENSE]
- Add the linking exception text to the official ReactOS licensing text. Previously, the exception text was only available at the ReactOS website with no references from the source code.

svn path=/trunk/; revision=56479

9 years ago[WIN32K]
Timo Kreuzer [Wed, 2 May 2012 19:29:33 +0000 (19:29 +0000)]
[WIN32K]
A pointer is not a handle. A handle is not a pointer. At least in most cases. Defining STRICT in win32k revealed horrible things...

svn path=/trunk/; revision=56478

9 years ago[WIN32K]
Timo Kreuzer [Wed, 2 May 2012 18:55:23 +0000 (18:55 +0000)]
[WIN32K]
- Add some code stub and comments for realizing DIB brush palettes
- Move some function prototypes

svn path=/trunk/; revision=56477

9 years ago[WIN32K]
Timo Kreuzer [Wed, 2 May 2012 13:56:55 +0000 (13:56 +0000)]
[WIN32K]
- Fix a palette leak in DIB_CreateDIBSection
- Remove PALETTE_AllocPalette and PALETTE_AllocPaletteIndexedRGB, use PALETTE_AllocPalWithHandle instead

svn path=/trunk/; revision=56476

9 years ago[WIN32SS]
Amine Khaldi [Wed, 2 May 2012 11:03:51 +0000 (11:03 +0000)]
[WIN32SS]
* Implement Ctrl+C support on MessageBox. Patch by Guido Pola (prodito {at} live [dot] com).
See issue #5281 for more details.

svn path=/trunk/; revision=56475

9 years ago[WIN32K]
Timo Kreuzer [Wed, 2 May 2012 10:09:05 +0000 (10:09 +0000)]
[WIN32K]
Modify DIB_MapPaletteColors, first allocating a palette without initializing the colors, then setting up the colors. This wway we don't need to allocate an intermediate buffer.

svn path=/trunk/; revision=56474

9 years ago[WIN32K]
Timo Kreuzer [Wed, 2 May 2012 09:46:07 +0000 (09:46 +0000)]
[WIN32K]
- Implement GreCreatePaletteInternal and make NtGdiCreatePaletteInternal safe regarding user mode memory access.
- Allow allocating an indexed palette without initializing the colors
- Implement PALETTE_AllocPalWithHandle
- remove pointless Self member in PALETTE structure
- cleanup palette.h a bit

svn path=/trunk/; revision=56473

9 years ago[CMD]
Timo Kreuzer [Tue, 1 May 2012 21:03:06 +0000 (21:03 +0000)]
[CMD]
Fix a typo

svn path=/trunk/; revision=56472

9 years ago[CMD]
Timo Kreuzer [Tue, 1 May 2012 21:00:16 +0000 (21:00 +0000)]
[CMD]
- Add a newline to the output of the echo command
- Remove debug stuff

svn path=/trunk/; revision=56471

9 years ago[WINE]
Thomas Faber [Tue, 1 May 2012 17:20:47 +0000 (17:20 +0000)]
[WINE]
- Import isinf and isnan implementations from libwine_port and adjust port.h and config.h to support them
- Remove isinf/isnan hacks from jscript and wined3d build files
- Add missing port.h include to jscript/array.c (sent and applied upstream)
See issue #7027 for more details.

svn path=/trunk/; revision=56470

9 years ago[FBTUSB]
Thomas Faber [Tue, 1 May 2012 16:53:02 +0000 (16:53 +0000)]
[FBTUSB]
- Shut up warnings
- Fix whitespace issues

svn path=/trunk/; revision=56469

9 years ago[NTDLL_APITEST]
Thomas Faber [Tue, 1 May 2012 16:19:17 +0000 (16:19 +0000)]
[NTDLL_APITEST]
- Add initial tests for RtlDosSearchPath_U & RtlDosSearchPath_Ustr
- Work around Wine ok() silliness
- Fix 64 bit warnings

svn path=/trunk/; revision=56468

9 years ago[CRT:INTRIN_X86]
Thomas Faber [Tue, 1 May 2012 15:45:49 +0000 (15:45 +0000)]
[CRT:INTRIN_X86]
- Use correct check for x64 architecture
- Fix Interlocked*64 return types
- Add _InterlockedXor64

svn path=/trunk/; revision=56467

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 14:59:24 +0000 (14:59 +0000)]
[WIN32K]
Fix a typo

svn path=/trunk/; revision=56466

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 14:57:23 +0000 (14:57 +0000)]
[WIN32K]
Try to fix RLE regression

svn path=/trunk/; revision=56465

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 13:57:18 +0000 (13:57 +0000)]
[WIN32K]
- Fix RLE hack (thanks to Mephisto)
- Remove obsolete flags

svn path=/trunk/; revision=56464

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 12:59:37 +0000 (12:59 +0000)]
[WIN32K]
Fix gcc uninitialized variable warning

svn path=/trunk/; revision=56463

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 12:47:21 +0000 (12:47 +0000)]
[WIN32K]
Use user mode mem for bitmaps larger than 4K to save pool memory.

svn path=/trunk/; revision=56462

9 years agoFix a mistake
Timo Kreuzer [Tue, 1 May 2012 12:15:15 +0000 (12:15 +0000)]
Fix a mistake

svn path=/trunk/; revision=56461

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 12:14:10 +0000 (12:14 +0000)]
[WIN32K]
Rewrite SURFACE_AllocSurface(), which now does the part of the former SURFACE_bSetBitmapBits() as well. This is to allocate the bits for a bitmap directly with the SURFACE object in one allocation. Also don't use kernel mode sections anymore by default, but paged pool memory.

svn path=/trunk/; revision=56460

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 10:33:36 +0000 (10:33 +0000)]
[WIN32K]
Use GDIOBJ_vSetObjectOwner instead of GreSetObjectOwner on an exclusively locked object.

svn path=/trunk/; revision=56459

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 09:29:41 +0000 (09:29 +0000)]
[WIN32K]
Don't calll GDIOBJ_vDereferenceObject from GDIOBJ_vUnlockObject, instead manually decrement the reference count. This allows us to ASSERT that the former function is never called with an exclusive lock held.

svn path=/trunk/; revision=56458

9 years ago[WIN32K]
Timo Kreuzer [Tue, 1 May 2012 09:26:45 +0000 (09:26 +0000)]
[WIN32K]
Improve formatting

svn path=/trunk/; revision=56457

9 years ago[KMTESTS]
Thomas Faber [Tue, 1 May 2012 09:13:19 +0000 (09:13 +0000)]
[KMTESTS]
- Fix 64 bit warnings
- Do not force assembly syntax on GCC in ExInterlocked

svn path=/trunk/; revision=56456

9 years ago[RTL/NDK/DDK/XDK]
Thomas Faber [Tue, 1 May 2012 07:16:02 +0000 (07:16 +0000)]
[RTL/NDK/DDK/XDK]
- RtlDosSearchPath_Ustr returns NTSTATUS, not ULONG
- Fix some ULONG vs SIZE_T issues
- RtlEqualMemory returns LOGICAL, not ULONG

svn path=/trunk/; revision=56455

9 years ago[OLDNAMES]
Timo Kreuzer [Mon, 30 Apr 2012 20:26:46 +0000 (20:26 +0000)]
[OLDNAMES]
Fix compilation with amd64 MSVC

See issue #7030 for more details.

svn path=/trunk/; revision=56454

9 years ago[FUSION]
Sylvain Petreolle [Mon, 30 Apr 2012 19:14:43 +0000 (19:14 +0000)]
[FUSION]
Never ever trust the wine file layout.
wine can load a dll when there is no file using builtins, while normal windows dont.
This fixes fusion beeing installed in the wrong places.
Loading the 2nd and 3rd copy of fusion fails atm.

svn path=/trunk/; revision=56453

9 years ago[LSASRV]
Eric Kohl [Sun, 29 Apr 2012 22:09:35 +0000 (22:09 +0000)]
[LSASRV]
Implement LsarCreateAccount.

svn path=/trunk/; revision=56452

9 years ago[ADVAPI32]
Eric Kohl [Sun, 29 Apr 2012 21:39:32 +0000 (21:39 +0000)]
[ADVAPI32]
Formatting, no code changes.

svn path=/trunk/; revision=56451

9 years ago[CMAKE]
Amine Khaldi [Sun, 29 Apr 2012 20:22:26 +0000 (20:22 +0000)]
[CMAKE]
* Remove the toolchain libs since they are no longer needed, now that we have the updated RosBE.

svn path=/trunk/; revision=56450

9 years ago[CRT/OLDNAMES]
Amine Khaldi [Sun, 29 Apr 2012 20:04:52 +0000 (20:04 +0000)]
[CRT/OLDNAMES]
* Treat the oldnames lib as an import lib.

svn path=/trunk/; revision=56449

9 years ago[CMAKE]
Timo Kreuzer [Sun, 29 Apr 2012 19:38:50 +0000 (19:38 +0000)]
[CMAKE]
Autogenerate oldnames for MSVC as well.
Currently on gcc builds we use a special def file syntax and use dlltool to create the lib, while on MSVC builds we use an asm file with aliases.

svn path=/trunk/; revision=56448

9 years ago[CMAKE]
Timo Kreuzer [Sun, 29 Apr 2012 19:04:02 +0000 (19:04 +0000)]
[CMAKE]
- seperate generation of importlibs from spec2def (generate_import_lib function)

svn path=/trunk/; revision=56447

9 years ago[LSASRV]
Timo Kreuzer [Sun, 29 Apr 2012 12:18:19 +0000 (12:18 +0000)]
[LSASRV]
Fix another uninitialized variable bug.

svn path=/trunk/; revision=56446

9 years ago[LSASRV]
Timo Kreuzer [Sun, 29 Apr 2012 12:16:34 +0000 (12:16 +0000)]
[LSASRV]
Fix return value of LsarQueryAccountDomain

svn path=/trunk/; revision=56445

9 years ago[LSASRV]
Timo Kreuzer [Sun, 29 Apr 2012 10:51:28 +0000 (10:51 +0000)]
[LSASRV]
Initialize an uninitialized variable in AttributeSize. Fixes crashing advapi32_winetest lsa

svn path=/trunk/; revision=56443

9 years ago[PSEH]
Timo Kreuzer [Sat, 28 Apr 2012 20:00:09 +0000 (20:00 +0000)]
[PSEH]
Fix a serious bug in PSEH that could lead to stack corruption and was causing CSRSS to crash, when large amounts of text were output on the console.
Background: PSEH used __builtin_alloca to allocate an SEH registration frame on the stack on demand, ie only for the first try level. But there are some nasty things with __builtin_alloca: First it DOES NOT - as one might think - free the allocated memory, once the allocation "goes out of scope", like with local variables, but only on function exit. Therefore it cannot normally be used inside a loop. The trick that PSEH used to "fix" this problem, was to save the stack pointer and reset it back at the end. This is quite problematic, since the rest of the code might assume that the stack pointer is still where it was left off after the allocation. The other thing is that __builtin_alloca() can allocate the memory whenever it likes to. It can allocate everything on function entry or not allocate anything at all, when other stack variables that went out of scope have left enough space to be reused. In csrss it now happened that the allocation was done before the stack pointer was saved, so the memory could not be freed by restoring the old stack pointer value. That lead to slowly eating up the stack since the code was inside a loop.
The allocation is now replaced with a variable sized array. The variable stays in scope until the _SEH2_END and will be automaticall cleaned up by the compiler. This also makes saving and restoring the stack pointer obsolete.
Reliability++

svn path=/trunk/; revision=56442

9 years ago[NTOSKRNL]
Art Yerkes [Sat, 28 Apr 2012 02:56:31 +0000 (02:56 +0000)]
[NTOSKRNL]
Remove PAGEOPs and use the argument to pass relevant information where needed,
including generally a section page table entry or a PFN_NUMBER.

In its place, the code looks for an MM_WAIT_ENTRY in the appropriate place and
waits, returning STATUS_MM_RESTART_OPERATION.  Rather than copying the pagein
and CoW operations in the PAGEOP contention case, we just punt back and restart
the operation, resulting in simpler code.

svn path=/trunk/; revision=56441

9 years ago[WIN32K]
Timo Kreuzer [Fri, 27 Apr 2012 17:18:30 +0000 (17:18 +0000)]
[WIN32K]
When a DC has the default palette selected, use the color value from PALETTERGB() directly instead of looking it up in the dc palette (just as the code was before). Fixes skipped bitmap winetests

svn path=/trunk/; revision=56440

9 years ago[WIN32K]
Timo Kreuzer [Fri, 27 Apr 2012 16:46:12 +0000 (16:46 +0000)]
[WIN32K]
- In NtGdiSetPixel, return the real RGB value, which is the target format color translated back to RGB, not the desired RGB value. Fixes a few bitmap winetest.
- Handle a too large index in PALETTE_ulGetRGBColorFromIndex

svn path=/trunk/; revision=56439

9 years ago[RTL]
Thomas Faber [Fri, 27 Apr 2012 11:04:09 +0000 (11:04 +0000)]
[RTL]
- Do not null terminate buffer before initializing its length in RtlDosSearchPath_Ustr. Use unicode string functions made for this purpose instead.
See issue #7010 for more details.

svn path=/trunk/; revision=56438

9 years ago[WIN32K]
Timo Kreuzer [Fri, 27 Apr 2012 10:12:26 +0000 (10:12 +0000)]
[WIN32K]
In NtGdiGetPixel check if the requested pixel is inside the boundaries of the surface, and return CLR_INVALID if not.

svn path=/trunk/; revision=56437

9 years ago[WIN32K]
Timo Kreuzer [Fri, 27 Apr 2012 09:31:24 +0000 (09:31 +0000)]
[WIN32K]
Fix initialization of XLATEOBJ in NtGdiGetPixel. Fixes GetPixel regressions.

svn path=/trunk/; revision=56436

9 years ago[KMTEST]
Thomas Faber [Fri, 27 Apr 2012 08:50:57 +0000 (08:50 +0000)]
[KMTEST]
- Fix GCC build

svn path=/trunk/; revision=56435

9 years ago[KMTESTS/RTL]
Thomas Faber [Fri, 27 Apr 2012 08:36:58 +0000 (08:36 +0000)]
[KMTESTS/RTL]
- Add a small RtlException test, mainly to check that a stack overflow really throws STATUS_STACK_OVERFLOW, not STATUS_ACCESS_VIOLATION.

svn path=/trunk/; revision=56434

9 years ago[WIN32K]
Timo Kreuzer [Thu, 26 Apr 2012 21:48:06 +0000 (21:48 +0000)]
[WIN32K]
- add missing  DBG_DECREASE_LOCK_COUNT() when deleting an object that was exclusively locked. Fixes strange hang in comctl32_winetest.
The question is: why does changing a variable, which is never checked cause such trouble?
- Don't pass the DC's clip object to IntEngCopyBits, when querying a pixel
- make acExclusiveLockCount[] 0x20 bytes long, just to be really sure, that (x & 0x1F) does never overflow it.

svn path=/trunk/; revision=56433

9 years ago[WINED3D]
Thomas Faber [Thu, 26 Apr 2012 17:20:53 +0000 (17:20 +0000)]
[WINED3D]
- Do not rely on undefined behavior to get values easily accessible as constants.
- Quick build fix. Will be sent to Wine, possibly modified.

svn path=/trunk/; revision=56432

9 years ago[CMAKE]
Thomas Faber [Thu, 26 Apr 2012 16:51:27 +0000 (16:51 +0000)]
[CMAKE]
- Enable MSVC build for Wine DirectX libraries, which mostly work just fine.

svn path=/trunk/; revision=56431

9 years ago[WIN32K]
Timo Kreuzer [Thu, 26 Apr 2012 16:32:01 +0000 (16:32 +0000)]
[WIN32K]
Fix palette index wraparound when initializing a DIB palette with DIB_PAL_COLORS. Fixes gdi32_winetest::palette

svn path=/trunk/; revision=56430

9 years ago[WIN32K]
Timo Kreuzer [Thu, 26 Apr 2012 16:19:22 +0000 (16:19 +0000)]
[WIN32K]
- Implement TranslateCOLORREF, based on IntHandleSpecialColorType, but now returning both the translated color and the resulting RGB color, correctly handling DIBINDEX, which will use the given value without translation.
- Rewrite NtGdiSetPixel using IntPatBlt
- Rewrite NtGdiGetPixel  using IntEngCopyBits
- Fix EXLATEOBJ_iXlateTable to return 0, when the palette index is too big, instead of wrapping around
- Remove old debugcode

svn path=/trunk/; revision=56429

9 years ago[WIN32K]
Timo Kreuzer [Thu, 26 Apr 2012 09:42:46 +0000 (09:42 +0000)]
[WIN32K]
Fix NtGdiPatBlt: ROPs with a source are not allowed, the background ROP is simply ignored.

svn path=/trunk/; revision=56428

9 years ago[WIN32K]
Timo Kreuzer [Thu, 26 Apr 2012 09:30:15 +0000 (09:30 +0000)]
[WIN32K]
Pass EBRUSHOBJ to IntPatBlt instead of the BRUSH. This way we can use the DC's eboFill, instead of initializing a new EBRUSHOBJ.

svn path=/trunk/; revision=56427

9 years ago[RTL]
Thomas Faber [Wed, 25 Apr 2012 22:21:00 +0000 (22:21 +0000)]
[RTL]
- Accept NULL Buffer/Size in RtlGetFullPathName_Ustr
- Fix NULL dereference in RtlGetFullPathName_UstrEx if no StaticString was given
- Various other corrections to path functions. 17 test failures fixed overall.

svn path=/trunk/; revision=56426

9 years ago[WIN32K]
Timo Kreuzer [Wed, 25 Apr 2012 19:25:48 +0000 (19:25 +0000)]
[WIN32K]
Make sure a bitmap is compatible with the dc before selecting it.

svn path=/trunk/; revision=56425

9 years ago[GDI32]
Timo Kreuzer [Wed, 25 Apr 2012 18:15:41 +0000 (18:15 +0000)]
[GDI32]
Fix SetWindowExtEx to pass all tests

svn path=/trunk/; revision=56424

9 years ago[GDI32_APITEST]
Timo Kreuzer [Wed, 25 Apr 2012 18:14:52 +0000 (18:14 +0000)]
[GDI32_APITEST]
Add more tests for SetWindowExtEx

svn path=/trunk/; revision=56423

9 years ago[WIN32K]
Timo Kreuzer [Wed, 25 Apr 2012 17:29:50 +0000 (17:29 +0000)]
[WIN32K]
- Make XFORMOBJ_iSetXform fail, when the XFORM is invalid (eM11 or eM22 are 0)
- Handle error in GreModifyWorldTransform

svn path=/trunk/; revision=56422

9 years ago[GDI32]
Timo Kreuzer [Wed, 25 Apr 2012 15:20:55 +0000 (15:20 +0000)]
[GDI32]
Fix CombineTransform to pass all tests

svn path=/trunk/; revision=56421

9 years ago[GDI32_APITEST]
Timo Kreuzer [Wed, 25 Apr 2012 15:18:12 +0000 (15:18 +0000)]
[GDI32_APITEST]
Add more tests for CombineTransform and cleanup the code a bit

svn path=/trunk/; revision=56420