Commit graph

42381 commits

Author SHA1 Message Date
Timo Kreuzer 1549a8532e [WIN32K]
Simplify EXLATEOBJ_vInitXlateFromDCs and remove EXLATEOBJ_vInitBrushXlate. Less code, more fun.

svn path=/branches/reactos-yarotows/; revision=47278
2010-05-19 16:23:33 +00:00
Timo Kreuzer 3078dd3c10 sync with trunk (r47268)
svn path=/branches/reactos-yarotows/; revision=47271
2010-05-19 03:44:15 +00:00
Timo Kreuzer 7b31d4395d [WIN32K]
Add back a break that got removed by accident. Fixes icon color regression.

svn path=/branches/reactos-yarotows/; revision=47270
2010-05-19 02:36:38 +00:00
Timo Kreuzer ff39f59027 [WIN32K]
- When initializing the EXLATEOBJ to translate the solid brush color in EBRUSHOBJ_vSetSolidBrushColor, also pass the EBRUSHOBJs back color. This fixes wrong colors when the destination surface is mono (e.g. disabled buttons)

svn path=/branches/reactos-yarotows/; revision=47269
2010-05-19 01:54:43 +00:00
Jérôme Gardou 63b50165b2 sync with trunk r47227
svn path=/branches/reactos-yarotows/; revision=47228
2010-05-15 22:30:01 +00:00
Christoph von Wittich 5e38f41aae [RBUILD]
delete outdated codeblocks backend (codeblocks does not support all features needed to build ros)

See issue #5381 for more details.

svn path=/trunk/; revision=47227
2010-05-15 20:37:24 +00:00
Michael Martin 9e2710ab67 [win32k]
- Change the first parameter type from HWND to PWINDOW_OBJECT for IntKillTimer as it makes more sense.
Activate IntSetTimer, already done by James.
- Add flag TMRF_DELETEPENDING. Destroy timers when this flag is set in ProcessTimers to allow any timers that have expired to have the WM_SYSTIMER/WM_TIMER messages posted to message queue before being destroyed.
- Fix error in FindTimer, it was always returning a Timer and it needed to return NULL if the specified timer did not exist.
- Fix error in PostTimerMessages, need to handle cases where the Window object is NULL which occurs when requesting messages for any window belonging to the thread. 
- In co_IntPeekMessage, simply call PostTimerMessages to have WM_SYSTIMER/WM_TIMER messages posted for expired timers. Remove call to old timer message handling.
- TODO: Code using the old timer implementation needs removed.
- Fixes bugs #2393, #3634, #2835. Commit dedicated to JT and Mr. Roboto.

svn path=/trunk/; revision=47226
2010-05-15 19:40:33 +00:00
Johannes Anderwald 0e5b61c534 [SYSAUDIO]
- Don't build the pin descriptor as this will make problems with dynamic audio devices which dynamically adjust their audio pins
- Remove dead code

svn path=/trunk/; revision=47225
2010-05-15 19:05:58 +00:00
Michael Martin 33284498ec [win32k]
- The description and changes made regarding WM_ACTIVATEAPP messages in r47126 were partially incorrect, the code was mostly correct.



svn path=/trunk/; revision=47224
2010-05-15 18:30:05 +00:00
Johannes Anderwald 425201146c [PORTCLS]
- Disable debugging

svn path=/trunk/; revision=47223
2010-05-15 17:57:09 +00:00
Johannes Anderwald 94c135b485 [PORTCLS]
- Pass subdevice interface to PcNewRegistryKey
- Fix multiple bugs in PcNewRegistryKey such as
- If key type is GeneralRegistryKey, the function is supposed to create a new key
- If key type is HwProfileRegistryKey, the type must be or'd with PLUGPLAY_REGKEY_DEVICE
- Implement opening keys of type DeviceInterfaceRegistryKey
- Free key handle if there is not enough memory to create a registry key object
- Add more comments

svn path=/trunk/; revision=47222
2010-05-15 17:17:05 +00:00
Eric Kohl e5b5b48170 [WINLOGON]
- Add a hack to fix the APPDATA environment variable. This hack will be removed after bug #5372 has been fixed. Fixes bug #4102.

svn path=/trunk/; revision=47220
2010-05-15 16:02:14 +00:00
Jérôme Gardou 31dfebe9a7 Revert part of 47209. Hope this time is the good one
svn path=/trunk/; revision=47218
2010-05-15 09:59:42 +00:00
Jérôme Gardou a5aa252f47 [WIN32K]
- clean up some debugging code
  - set NULL owner when setting BASEFLAG_READY_TO_DIE, so that the handle can be freed.

svn path=/branches/reactos-yarotows/; revision=47217
2010-05-15 09:57:36 +00:00
Cameron Gutman ad9cb3cc34 [NTOSKRNL]
- Fix a bug that broke /NODEBUG and /CRASHDEBUG

svn path=/trunk/; revision=47216
2010-05-15 03:21:54 +00:00
Timo Kreuzer d3f8544eca [NTOSKRNL]
Fix paramter parsing in KdbpGetCommandLineSettings. Fixes KDSERIAL

svn path=/trunk/; revision=47215
2010-05-15 03:02:10 +00:00
Timo Kreuzer 8653f56515 [OLEAUT32_WINETEST]
Skip crashing tests test_apm and test_enhmetafile

See issue #5396 for more details.

svn path=/trunk/; revision=47214
2010-05-15 01:30:24 +00:00
Timo Kreuzer 1e9beb6809 [WIN32CSR]
Fix display of harderror message box for STATUS_UNHANDLED_EXCEPTION

svn path=/trunk/; revision=47213
2010-05-15 01:05:09 +00:00
Timo Kreuzer e093be6897 [GDIPLUS_WINETEST]
Comment out GdipDisposeImage in 3 places, where it was crashing

See issue #5395 for more details.

svn path=/trunk/; revision=47212
2010-05-15 00:12:14 +00:00
Jérôme Gardou 9993f9c793 [ROSTESTS]
- something went wrong with previous commit...


svn path=/trunk/; revision=47211
2010-05-14 23:21:04 +00:00
Jérôme Gardou e23160a43c [ROSTESTS]
- more tests for direct DC creation/deletion

svn path=/trunk/; revision=47210
2010-05-14 23:19:16 +00:00
Timo Kreuzer 88e3cf6fbe [GDI32_WINETEST]
Skip test in gdi32_winetest metafile, that crashes

See issue #5392 for more details.

svn path=/trunk/; revision=47209
2010-05-14 23:13:13 +00:00
Gregor Schneider 9863fd3445 [NEWINFLIB] Fix an off-by-one bug, which lead to the crash of mkhive after parsing ~3 files on Windows or ~5 files on Linux
See issue #5338 for more details.

svn path=/trunk/; revision=47208
2010-05-14 21:20:40 +00:00
Gregor Schneider c7721ce942 [MKHIVE]
- Active the planned cleanup function to motivate people to actually free resources: mkhive currently leaks ~500kb of memory after a usual run
- Improve debug print

svn path=/trunk/; revision=47207
2010-05-14 21:13:33 +00:00
Gregor Schneider d28f0be86e [INFLIBNEW] Free allocated memory on error
svn path=/trunk/; revision=47206
2010-05-14 20:56:43 +00:00
Jérôme Gardou b0aa4f5a2c [WIN32K]
- clean up some unused code
  - use GDIOBJ_IncrementShareCount on Timo suggestion
  - use ppdev semaphore as sort criterion in DC_vPrepareDCsForBlit, spotted by Timo
  - Get ownership before freeing the object in GDIOBJ_ShareUnlockObjByPtr, as whoever set it ready to die had the right to 

svn path=/branches/reactos-yarotows/; revision=47205
2010-05-14 20:19:46 +00:00
Jérôme Gardou 10e3e81202 [WIN32K]
- IntGdiCreateBitmap : assign a default palette to the bitmap created
  - Use IntCreateBitmap where we already have a bitmap to assign
  - delete all mono bitmaps related hacks in xlateobj implementation, as now all bitmaps should have a palette
Fixes last immediately visible glitches when switching modes

svn path=/branches/reactos-yarotows/; revision=47203
2010-05-14 18:51:48 +00:00
Gregor Schneider 12eb6e6cba [MKHIVE] Check parameters before accessing them, update usage information
svn path=/trunk/; revision=47200
2010-05-14 17:46:14 +00:00
Eric Kohl 449bd3cb85 [MSGINA]
- Fix the order of controls to match the expected tab order. This makes the focus stop jumping around like crazy when you press the Tab key.

svn path=/trunk/; revision=47199
2010-05-14 17:12:35 +00:00
Eric Kohl 029c6e67a9 [WINLOGON]
- Store all environment variables that were passed from msgina.dll in the volatile environment key.
- Add the APPDATA environment variable to the volatile environment. Unfortunately SHGetFolderPath does not seem to expand the appdata path. Bug or Feature??
- Create the environment block for the shell process after the volatile environment key has been filled, so its variables are included.
- Yet another step to fixing bug #4102.

svn path=/trunk/; revision=47198
2010-05-14 17:08:20 +00:00
Johannes Anderwald 0801068a35 [PORTCLS]
- Don't request initializing delayed service request as this is the task of the miniport driver
- Reimplement the service group object:
- Use the initialized timer object when RequestService is called
- Fix possible race conditions when adding / removing a service sink by protecting it with a lock
- Acquire the service group list lock when executing the shared dpc routine

svn path=/trunk/; revision=47197
2010-05-14 15:47:00 +00:00
Cameron Gutman ebb491824a [IPHLPAPI]
- Implement GetAdaptersAddresses
- Fixes the last iphlpapi winetest

svn path=/trunk/; revision=47195
2010-05-14 01:30:37 +00:00
Eric Kohl 0ca885a586 [USERENV]
CreateEnvironmentBlock: Also add the volatile environment values to the users environment block.

svn path=/trunk/; revision=47194
2010-05-13 20:38:16 +00:00
Jérôme Gardou 421a63ff44 [WIN32K]
- Get rid of hDIBPalette in SURFACE structure
This allows more code cleanness

svn path=/branches/reactos-yarotows/; revision=47190
2010-05-12 22:56:24 +00:00
Sir Richard df33b38ed0 [NTOS]: Fix definition of unused MI_MAKE_SOFTWARE_PTE macro.
[NTOS]: Correctly setup the PFN entries for freshly allocated paged pool pages. Fixes a problem where the page could've still had stale/garbage data.
[NTOS]: Add some extra assertions in the code to catch memory corruption and detect invalid logic.
[NTOS]: Fix some typos in the code (comments/whitespace).
[NTOS]: Make the dreaded page fault message that breaks paged pool on some systems more verbose for future debugging.

svn path=/trunk/; revision=47189
2010-05-12 22:47:46 +00:00
Eric Kohl 931fc122a0 [MSGINA]
Use WLX_PROFILE_V2_0 instead of WLX_PROFILE_V1_0 and create an environment string that is filled with a single environment variable. WIP for bug #4102.

svn path=/trunk/; revision=47187
2010-05-12 22:10:07 +00:00
Sir Richard 3a80da9a3e [NTOS]: When grabbing physically contigous pages from the zero or free list, make sure to re-initialize their PFN entries correctly, since their data might be stale. Fixes potential weird memory corruption bugs.
[NTOS]: Physically contiguous memory allocations are not guaranteed to be zeroed, so do not zero the pages.
[NTOS]: When allocating contigous memory, mark the PFN entries appropriately after mapping the I/O ranges.
[NTOS]: When freeing contiguous memory, assert that all the freed pages correspond to PFN entries that we expect to have allocated for this purpose. Detects (not neccessarily fixes) memory corruption issues in contiguous memory allocations.
[NTOS]: These changes mostly affect certain network card and sound card systems/real hardware, they fix possible bugs and detect corruption that was otherwise going by unnoticed.

svn path=/trunk/; revision=47186
2010-05-12 21:37:19 +00:00
Gregor Schneider b320b4bcb1 [SHELL32] Amendment to r47182: GetAsyncKeyState -> GetKeyState (thanks to Giannis), simplify
svn path=/trunk/; revision=47185
2010-05-12 21:11:24 +00:00
Sir Richard 547dbfc5cf [NTOS]: Move MiFindContiguousPages to ARM3/contmem.c since I don't know what it was doing in freelist.c. No code change.
svn path=/trunk/; revision=47184
2010-05-12 20:57:21 +00:00
Sir Richard 11453cf565 [NTOS]: Add assertions to the paged pool and demand zero page faults, to catch possible errors and corruptions. These paths are not yet taken in today's builds, so they do not affect any runtime code.
[NTOS]: Add assertions regarding the portability of certain code, which will need changes on ARM/x64. These should probably be C_ASSERT's but I don't want to break Timo's build.
[NTOS]: Define MM_NOIRQL (found in assertions) instead of magical -1.
[NTOS]: Add MI_IS_SESSION_PTE macro.
[NTOS]: Export the MiXxxPte variables.
[NTOS]: Fix some typos in comments.


svn path=/trunk/; revision=47183
2010-05-12 20:48:15 +00:00
Gregor Schneider 77bbb3cacb [SHELL32] Add initial ctrl+c/v handling (WIP for bug #4850)
svn path=/trunk/; revision=47182
2010-05-12 20:41:55 +00:00
Gregor Schneider 0c0d737b5d [SHELL32] Remove misplaced function header
svn path=/trunk/; revision=47181
2010-05-12 20:37:48 +00:00
Gregor Schneider 7b762e3b4e [SHELL32] Improve debug print by printing text
svn path=/trunk/; revision=47180
2010-05-12 19:54:02 +00:00
Gregor Schneider 0b2f076246 [USRMGR]
- Fix the friends of the bug of the month

svn path=/trunk/; revision=47179
2010-05-12 19:19:44 +00:00
Sir Richard 47b27e38f3 [NTOS]: Fix MiInsertPageInFreeList, it was using the ARM3 PFN Database macro, even though we are still using the Mm PFN Database. Also, it was lacking the code to notify the zero-page thread, and to increase available pages.
svn path=/trunk/; revision=47178
2010-05-12 19:11:49 +00:00
Eric Kohl 6899eeb7b6 [WINLOGON]
Fixed bug of the month. I'm surprised that winlogon worked at all.

svn path=/trunk/; revision=47177
2010-05-12 19:10:04 +00:00
Sir Richard 291fb765f3 [NTOS]: Fix 4MB assumptions and use PDE_MAPPED_VA instead, which accurately describes the address space mapped by a PDE (which is different on PAE, x64, ARM, etc).
svn path=/trunk/; revision=47175
2010-05-12 18:42:05 +00:00
Sir Richard 944fe46d70 [NTOS]: User pages are not used until Phase 1, they should not be setup in Phase 0. Fixes premature initalization.
svn path=/trunk/; revision=47174
2010-05-12 18:39:09 +00:00
Sir Richard 926bd0522f [NTOS]: Compute MiHighestUserPte, MiHighestUserPde, MiSessionImagePteStart, MiSessionImagePteEnd, MiSessionBasePte, MiSessionLastPte since these internal variables did not exit yet. Useful for debugging and also future PFN support. Just computes some values, no behavior changes.
svn path=/trunk/; revision=47173
2010-05-12 18:36:15 +00:00
Sir Richard 133872d3e7 [NTOS]: MmSystemPageDirectory is an array of page directories, not just a value. On x86 there's just one page directory, but that's not the case on other architectures/PAE, so fix this bug.
svn path=/trunk/; revision=47172
2010-05-12 18:33:18 +00:00