Commit graph

44692 commits

Author SHA1 Message Date
Timo Kreuzer 3e75942b10 [WIN32K]
NtGdiStretchDIBitsInternal: don't call NtGdiGetDCObject and NtGdiCreateCompatibleDC with a dc locked. These cases are not harmful, but generally Nt* and Gre* should never be called with an exclusive gdi lock held. Also don't return in failure case with the dc still locked.

svn path=/trunk/; revision=50826
2011-02-19 22:29:31 +00:00
Timo Kreuzer ebf22c9469 [WIN32K]
- add tracing of exclusive gdi locks
- add some asserts

svn path=/trunk/; revision=50825
2011-02-19 22:03:34 +00:00
Timo Kreuzer dc29559c25 [WIN32K]
- Add ros specific member cExclusiveLocks to THREADINFO to track number of acquired locks
- Add functions/macros to check lock count
- Move some definitions into gdidebug.h for global use
- Fix broken GdiDbgHTIntegrityCheck
- Add pre and post syscall hook functions (unused yet)

svn path=/trunk/; revision=50824
2011-02-19 21:56:43 +00:00
Timo Kreuzer ea5522e1d8 [NTOSKRNL]
Add support for debug pre/post syscall hooks, that can be registered from win32k. They only exist on DBG versions.

svn path=/trunk/; revision=50823
2011-02-19 21:50:11 +00:00
Amine Khaldi 7d2277a1ea [EVENTVWR]
- Fix handling of NULL lpComputerName.
- Handle lpData conversion to a wide string and make sure it's NULL terminated.
- Patch by Rafal Harabien, <rafalh1992 AT o2 DOT pl>
See issue #5926 for more details.

svn path=/trunk/; revision=50822
2011-02-19 21:24:47 +00:00
Sylvain Petreolle 3eb47ac17d [NTOSKRNL]
Fix typo.

svn path=/trunk/; revision=50821
2011-02-19 18:43:54 +00:00
Eric Kohl d0515abbea [SETUPAPI]
- Implement CM_Get_Device_Interface_AliasA, CM_Get_Device_Interface_AliasW and 
CM_Get_Device_Interface_Alias_ExW.
- Add a stub for CM_Get_Device_Interface_Alias_ExA.
- Implement the obsolete functions CM_Query_Remove_SubTree[_Ex] and CM_Remove_SubTree[_Ex].

svn path=/trunk/; revision=50820
2011-02-19 18:28:13 +00:00
Johannes Anderwald 634966f644 - Revert 49767 on Pierre's request, which reverted this:
- Added real implementation of SetLastError() (instead of forwarding to NTDLL)
- Implemented BaseSetLastNTError()
- Renamed Basep8BitStringToCachedUnicodeString() to Basep8BitStringToStaticUnicodeString() and sightly changed its implementation
- Fixed implementation of LoadLibraryExA() & DisableThreadLibraryCalls() using those changes
This is matching w2k3 implementation. This is of course a WIP.

svn path=/trunk/; revision=50819
2011-02-19 17:00:08 +00:00
Giannis Adamopoulos 4638bf943c [win32k]
- Fix combobox to show the drop down window correctly when the parent window is topmost
See issue #5705 for more details.

svn path=/trunk/; revision=50818
2011-02-19 16:09:59 +00:00
Pierre Schweitzer 2352ea6662 [NTOSKRNL]
- No need to use ULONG when dealing with strings, USHORT is enough. This makes MSVC warnings silent.
- Fix a really nasty bug in FsRtlIsHpfsDbcsLegal()

svn path=/trunk/; revision=50817
2011-02-19 13:58:55 +00:00
Giannis Adamopoulos 5d2a7901f7 [win32k]
- Revert r50121 and r50154

svn path=/trunk/; revision=50816
2011-02-19 12:22:52 +00:00
Amine Khaldi 6d4a648fe6 Fix a typo.
svn path=/trunk/; revision=50815
2011-02-19 10:20:27 +00:00
Giannis Adamopoulos dc663b0be2 - Remove a documented definition from undocuser.h
svn path=/trunk/; revision=50814
2011-02-18 20:26:19 +00:00
Giannis Adamopoulos c7b9d6f0df [user32/win32k]
- Implement MessageBeep and SetLogonNotifyWindow

[winlogon]
- Implement receiving notifications from win32k to play sounds of MessageBeep

svn path=/trunk/; revision=50813
2011-02-18 20:16:43 +00:00
Giannis Adamopoulos bc92849c38 [win32k]
- Fix a bug that caused problems when the user clicks in the caption of a window to activate it

svn path=/trunk/; revision=50807
2011-02-18 16:28:52 +00:00
Timo Kreuzer dda9fb952c [NTOSKRNL]
Alex messed up.
Fix by Patch by Rafal Harabien, <rafalh1992 AT o2 DOT pl>

svn path=/trunk/; revision=50806
2011-02-18 15:59:32 +00:00
Timo Kreuzer 5e45b1eb7a [WIN32K]
Fix a bug in GDIOBJ_LockObj, that would cause a deadlock, when an object was deleted while another thread was waiting to acquire the handle lock.

svn path=/trunk/; revision=50804
2011-02-18 15:08:50 +00:00
Timo Kreuzer 269bbf1328 [CSRSRV]
Dereference all threads, when a process is terminated. Fixes ghost processes in taskmgr! Patch by Rafal Harabien, <rafalh1992 AT o2 DOT pl>

See issue #1567 for more details.

svn path=/trunk/; revision=50803
2011-02-18 15:01:00 +00:00
Aleksey Bragin da4ba71aee [RTL/DPH]
- Zero-initialize VM allocation base.
- Don't reserve VM, just commit it right away. This was a premature optimisation. Instead, retry committing a smaller amount of memory if committing all memory fails.

svn path=/trunk/; revision=50800
2011-02-18 14:45:13 +00:00
Timo Kreuzer b58bdd0a99 [WIN32K]
compile gdidebug code as a seperate file and give it a seperate header

svn path=/trunk/; revision=50799
2011-02-18 14:35:44 +00:00
Giannis Adamopoulos a33a1f21db [explorer]
- Fix some visual problems in the toolbar

svn path=/trunk/; revision=50798
2011-02-18 14:28:58 +00:00
Giannis Adamopoulos 20ec135208 [win32k]
- Check if CombinedClip is NULL before accesing it

Should fix a crash with Download Master

svn path=/trunk/; revision=50797
2011-02-18 14:26:11 +00:00
Aleksey Bragin 6e305f0615 [RTL/AVL]
- Fix an inverted condition which resulted in incorrect assignment of NewElement var in RtlInsertElementGenericTableAvl().

svn path=/trunk/; revision=50784
2011-02-18 09:48:13 +00:00
Aleksey Bragin 708dbb878c [RTL/DPH]
- Various fixes: set NodeToAllocate member of the heap root so it could be used lated in AVL allocation routine, initialize the AvailableAllocation list.
- Comment out biased pointer checks for now, and fix biasing the AdjacencyEntry pointer (spotted by rafalh).

svn path=/trunk/; revision=50773
2011-02-17 22:29:49 +00:00
Aleksey Bragin 02ad384a40 [NTOS/MM]
- An accompanying change to r50768. Fixes boot.

svn path=/trunk/; revision=50770
2011-02-17 21:58:08 +00:00
Aleksey Bragin 85e4bbe4f5 [RTL/AVL]
- Remove unnecessary field from TABLE_ENTRY_HEADER. Spotted by (the only in ReactOS?) user of RTL AVL tables - page heap.

svn path=/trunk/; revision=50768
2011-02-17 16:52:06 +00:00
Aleksey Bragin f333f561b4 - Fix build.
svn path=/trunk/; revision=50767
2011-02-17 15:31:19 +00:00
Aleksey Bragin 9d4ba43f0b [RTL/DPH]
- Implement allocating from the page heap along with all necessary helper routines. Some minor things are left though, so it doesn't work yet.
- Change some defines names to more meaningful/readable.

svn path=/trunk/; revision=50766
2011-02-17 14:46:30 +00:00
Timo Kreuzer bc8d008551 [WIN32K]
In IntEngGradientFillRect, take the translate value into account, that we need when drawing happens on an intermediate surface. Patch by Thomas Faber (ThFabba at gmx dot de)

See issue #5805 for more details.

svn path=/trunk/; revision=50764
2011-02-16 23:29:50 +00:00
Aleksey Bragin 8e49b79826 [RTL/DPH]
- Connect debug page heap routines in the debug heap implementation, so they are going to be actually called now.
- Implement delayed free queue initialization and freeing.

svn path=/trunk/; revision=50734
2011-02-16 13:09:18 +00:00
Aleksey Bragin ef2d957db7 [RTL/DPH]
- Use better names for validation information flags based on application verifier messages.
- Implement a simple RtlpDphReportCorruptedBlock routine which just prints the problem description for now, without any additional info.

svn path=/trunk/; revision=50730
2011-02-16 11:49:51 +00:00
Aleksey Bragin d0e56f53d1 [RTL/DPH]
- Implement other support locking/unlocking, handle-related routines.
- Fix RtlpDphFreeVm definition.
- Node lists related improvements: Add a function for removing a node from a free list, implement coalescing free nodes into an available list.
- Implement a non-implemented case in RtlpDphAllocateNode when there is a need to allocate more virtual memory, and fix incorrect size calculation too.
- Implement a function for validating the page heap block.
- Implement RtlpPageHeapDestroy. Now we have two exported APIs ready: heap create and heap destroy.

svn path=/trunk/; revision=50721
2011-02-15 22:02:28 +00:00
Aleksey Bragin a92739091b [RTL/DPH]
- Implement more support functions: coalescing a node into the list of available nodes, finding a best fitting node for a given size, growing available virtual memory amount.

svn path=/trunk/; revision=50698
2011-02-15 11:53:16 +00:00
Timo Kreuzer 0be0719111 [WIN32K]
- Remove gexloTrivial, it was never used
- Remove EXLATEOBJ_vInitTrivial and move the code into EXLATEOBJ_vInitialize
- Properly set XO_TABLE
- Set ppalDstDc in EXLATEOBJ_vInitXlateFromDCs

svn path=/trunk/; revision=50695
2011-02-14 17:23:58 +00:00
Timo Kreuzer c1f1c6ee41 [WIN32K]
Fix initialization of XLATEOBJ, when source and dest format are equal. Patch by Thomas Faber (thfabba at gmx de)

See issue #5828 for more details.

svn path=/trunk/; revision=50694
2011-02-14 16:04:01 +00:00
Aleksey Bragin f571cf32bd [RTL/DPH]
- Implement list manipulation routines: pool list, virtual list, unused list.
- Implement node removal from an available list.

svn path=/trunk/; revision=50686
2011-02-13 21:39:26 +00:00
Pierre Schweitzer 2ac5519cc7 [NTOSKRNL]
Improved * WC handling for both FsRtlIsNameInExpression & FsRtlIsDbcsInExpression

This fixes all failing tests in kmtest

svn path=/trunk/; revision=50685
2011-02-13 20:23:03 +00:00
Aleksey Bragin b607fcee93 [RTL/DPH]
- Implement adding a new pool and allocating a new node.
- Add a bunch of stubs.

svn path=/trunk/; revision=50683
2011-02-13 16:03:58 +00:00
Eric Kohl bdb4931234 [CFGMGR32]
- Add missing functions.
- Add forwarders to functions that are exported by setupapi.dll.
- Mark deprecated functions.

svn path=/trunk/; revision=50682
2011-02-13 10:02:31 +00:00
Pierre Schweitzer 506c3a2989 [KMTEST]
Some more tests to FsRtlIsNameInExpression & FsRtlIsDbcsInExpression. Some are failing.

svn path=/trunk/; revision=50681
2011-02-13 09:43:01 +00:00
Pierre Schweitzer d4e44f51ea [NTOSKRNL]
For both FsRtlIsNameInExpression & FsRtlIsDbcsInExpression:
- Get back "useless checks" (tests show they weren't that useless)
- Prevent code redundancy

This fixes 4 failing kmtest tests added in r50679

svn path=/trunk/; revision=50680
2011-02-13 08:43:48 +00:00
Pierre Schweitzer 05ec891399 [KMTEST]
Some more tests to FsRtlIsNameInExpression & FsRtlIsDbcsInExpression. Some are failing.

svn path=/trunk/; revision=50679
2011-02-13 08:19:16 +00:00
Eric Kohl 856e0d9b91 [SETUPAPI]
Add resource descriptor function stubs.

svn path=/trunk/; revision=50678
2011-02-12 23:59:12 +00:00
Pierre Schweitzer 90ece09e2c Remove some artifact from ARM build.
Would it fix build?

svn path=/trunk/; revision=50677
2011-02-12 20:32:49 +00:00
Timo Kreuzer f1debffcda [WIN32K]
Handle BITMAPV4HEADER and BITMAPV5HEADER, when creating a DIB palette. Detect PAL_RGB like done with PAL_BGR in PALETTE_AllocPalette (optimization).
Fixes pink icons.

svn path=/trunk/; revision=50676
2011-02-12 20:30:09 +00:00
Eric Kohl f0395ac74a [ADVAPI32]
Move file encryption functions from crypt/crypt.c to misc/efs.c.

svn path=/trunk/; revision=50675
2011-02-12 20:23:16 +00:00
Johannes Anderwald db2351ec56 - Fix a bug where a spinlock was acquired on not initialized local variable
svn path=/trunk/; revision=50673
2011-02-12 18:55:52 +00:00
Pierre Schweitzer 641cb1f0f0 [NTOSKRNL]
For both FsRtlIsNameInExpression & FsRtlIsDbcsInExpression:
- Remove useless checks
- Move redundant sum before loop, so it's done only once
- Fix handling of * wildcard

This fixes failing kmtest tests added in r50614

svn path=/trunk/; revision=50670
2011-02-12 18:39:17 +00:00
Johannes Anderwald 334455fcf0 - Revert 45676
- It appears that the definitions for IID_IUnknown differ for kernel mode COM and user mode COM

svn path=/trunk/; revision=50669
2011-02-12 17:40:51 +00:00
Timo Kreuzer 14dadc9591 [COMCTL32]
Fix bitmap resources. They were not very valid. Windows didn't even load them. Probably created with some linux tool *cough*
Fixes part of the broken icons. Not the pink ones though.

svn path=/trunk/; revision=50668
2011-02-12 16:55:08 +00:00