Commit graph

42264 commits

Author SHA1 Message Date
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
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
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
Aleksey Bragin
c6ddd201c7 [HALX86]
- Revert changes to HalpGetPCIData made in r47162. There is no need to introduce ReactOS-specific behavior of this function. It's much better to aim real NT compatibility, and develop your drivers against NT first and only then hack ReactOS.
- Changes to buses scanning are left as they are.

svn path=/trunk/; revision=47169
2010-05-12 09:45:43 +00:00
Aleksey Bragin
cdf0478255 [USBDRIVER]
- Implement deregistering HCD in a device manager. Now, the HCI which failed to initialize will be properly freed without calling NULL pointer or crashing with freed memory access.
See issue #4813 for more details.

svn path=/trunk/; revision=47168
2010-05-12 09:42:07 +00:00
Aleksey Bragin
e4dec4c4cb - Revert 47139 by cgutman: Don't try to be smarter than usbdriver's author. He especially put registering HCD interface before so that any error handling function would work correctly and free up allocated resources. Fixes one crash in VMWare. A proper solution for the problem which 47139 tried to "fix" will be committed next.
svn path=/trunk/; revision=47167
2010-05-12 09:34:36 +00:00
Jeffrey Morlan
cdc3b26818 commit file missing from r47165
svn path=/trunk/; revision=47166
2010-05-12 04:01:16 +00:00
Jeffrey Morlan
630ecdce7c [KERNEL32] [WIN32CSR] Implement SetConsoleScreenBufferSize. FAR Manager now works again.
svn path=/trunk/; revision=47165
2010-05-12 03:34:02 +00:00
Timo Kreuzer
acb61e7d31 [FREELDR] Fix uninitialized variable warning. (Does anyone know why the warning isn't treated as an error?)
[SETUPLDR] Use mini_hal only on i386 builds

svn path=/trunk/; revision=47164
2010-05-12 03:29:08 +00:00
Jeffrey Morlan
3ffc64878c [WIN32CSR] Get rid of dynamic "LineBuffer": it wasn't being resized properly in all cases, causing corruption of Win32CsrApiHeap. Replaced with fixed buffer (painting a line with multiple TextOutW calls if necessary).
svn path=/trunk/; revision=47163
2010-05-12 03:03:12 +00:00
Cameron Gutman
0a6ca40598 [HAL]
- Return the correct value if the PCI slot number is invalid
- Use the bus number from the PCI BIOS instead of doing a manual probe if we can because it is much more accurate (our probing code doesn't detect buses without devices present)
- Don't probe for devices at invalid locations on PCI type 2 buses
- Check for a valid bus number so we don't return the wrong value

svn path=/trunk/; revision=47162
2010-05-12 02:34:04 +00:00
Sir Richard
c5e12bcf40 [NTOS]: We might get page faults before memory areas are setup, since so much ARM3 work now gets done before the memory areas are ready to go. Since obviously these faults cannot be caused by non-ARM3 Mm, we assume them to be ARM3 faults (as long as they happened in KSEG0_BASE). Fixes a bug where early page faults in ARM3 PTEs would get treated as non-ARM3 faults and fail.
svn path=/trunk/; revision=47161
2010-05-12 00:40:23 +00:00
Sir Richard
f61cf60f1b [NTOS]: HEADERS: Add PDE_TOP. It is defined for IA64/AMD64 but not for i386 (in the public headers). Add a note that these addresses are bogus on PAE systems.
svn path=/trunk/; revision=47160
2010-05-12 00:38:46 +00:00
Sir Richard
b5a09b26c2 [NTOS]: Restore previous correct ASM behavior of checking for success codes, not only STATUS_SUCCESS, after a page fault. For example, a demand zero fault returns STATUS_PAGE_FAULT_DEMAND_ZERO upon success, and the new C code would treat it as a failure. Fixes a bug.
svn path=/trunk/; revision=47159
2010-05-12 00:36:52 +00:00
Cameron Gutman
449b78ccc5 [NTOSKRNL]
- Fix a typo 
- Safe mode with networking has an OptionValue of 2 not 1
- Currently unused (for now ;))

svn path=/trunk/; revision=47157
2010-05-11 00:36:56 +00:00
Cameron Gutman
609171f4ac [AFD]
- Fix signaling socket termination events on disconnect
- Fixes bug 4951

svn path=/trunk/; revision=47156
2010-05-10 21:14:26 +00:00
Daniel Reimer
7335bf8947 Update the rapps Database to a valid FireFox Link once more...
+ update all apps to the recent versions

svn path=/trunk/; revision=47154
2010-05-10 18:27:07 +00:00
Eric Kohl
76a4723fa9 [INF]
- Add 'PortSubClass' values for serial and parallel ports.

svn path=/trunk/; revision=47152
2010-05-09 21:58:04 +00:00
Daniel Reimer
2699cdc3de Update WinFile to Wine 1.1.44
svn path=/trunk/; revision=47151
2010-05-09 20:23:07 +00:00
Sir Richard
eaaf713f3d [NTOS]: Acquire PFN lock before setting up hyperspace PTE/page.
[NTOS]: Flush TLB after setting up hyperspace.
[NTOS]: Use new MiRemoveAnyPage interface instead of MmAllocPage(MC_SYSTEM), as the first test of the new Page API/ABI.
[NTOS]: Add support for creating software PTEs.

svn path=/trunk/; revision=47150
2010-05-09 18:17:53 +00:00
Sir Richard
af06182171 [NTOS]: Implement MiRemoveAnyPage and MiRemovePageByColor, but only using the list heads, and not the color list heads. Unused.
[NTOS]: Fixup unused MiInsertPageInFreeList variables ot match the other functions (ColorTable vs ColorHead).

svn path=/trunk/; revision=47149
2010-05-09 18:12:50 +00:00
Sir Richard
a38d98d504 [NTOS]: At times, pages may be removed from the zero or free page list, but without being initialized as part of the PFN database, such that their PageLocation has not changed. However, we can detect these pages because their link pointers will be NULL, meaning they're not _really_ free or zeroed. Use this enhanced check when verifying if a page is in use or not, and additionally triple-check by making sure the reference count is zero. This now matches the Windows checks. We also consider Standby pages (not yet implemented) as usable, since we can always steal them.
svn path=/trunk/; revision=47148
2010-05-09 18:06:38 +00:00