Commit graph

37231 commits

Author SHA1 Message Date
James Tabor f1ab1a2cae - Implement HCBT_CREATEWND support. Tested with user32 cross wine tests, still hangs on win test. For Christoph.
svn path=/trunk/; revision=41614
2009-06-25 20:39:32 +00:00
Sylvain Petreolle 8ce3178f05 Add accessibility keys.
svn path=/trunk/; revision=41613
2009-06-25 19:58:12 +00:00
Johannes Anderwald 7480a839ca - revert 41605 as its incorrect
svn path=/trunk/; revision=41612
2009-06-25 18:48:46 +00:00
Christoph von Wittich c1b0f80304 sync shell32 with wine 1.1.24
svn path=/trunk/; revision=41611
2009-06-25 14:39:01 +00:00
Dmitry Gorbachev ff37974bba Remove a hack from NtAccessCheck(). Bug #4169.
svn path=/trunk/; revision=41610
2009-06-25 13:29:58 +00:00
KJK::Hyperion d53c35b02b No reason to compile PSEH2 with other compilers than GCC
svn path=/trunk/; revision=41607
2009-06-25 10:27:57 +00:00
Johannes Anderwald f760f8c906 - Don't modify access status when function fails
- reduces advapi32_winetest security failures by 3

svn path=/trunk/; revision=41605
2009-06-25 07:16:26 +00:00
Timo Kreuzer 68ccd5f6e4 Rewrite (NtUser)SystemParametersInfo and related.
- Instead of getting the data from the window station and other strange places, the values are now mostly stored in a global variable. This is possible because NtUserSystemParametersInfo should fail anyway when being called from a non-interactive windowstation (tested on windows XP).
- WM_SETTINGCHANGE is now properly sent not posted to all toplevel Windows also passing the registry string as the lParam value (strings could need some testing).
- SystemMetrics are now set and updated from system parameters.
- Most values are now properly loaded from registry and also saved.
- user32_winetest sysparams: before: 634 executed / 235 failures, after: 1093 executed, 11 failures
- Fixes the non-bold caption font in 2nd stage.
- Implements a number SPI codes.
- Implements helper functions for registry and file access
Thanks to all testers for all the regression testing :)


See issue #4595 for more details.

svn path=/trunk/; revision=41604
2009-06-25 02:43:38 +00:00
Dmitry Gorbachev 8101b8e12f Hack: partially undo r38510 changes to overcome regression (bug #4169).
svn path=/trunk/; revision=41603
2009-06-24 22:23:29 +00:00
Christoph von Wittich 1ef5fa35af fix typo
svn path=/trunk/; revision=41602
2009-06-24 22:12:48 +00:00
Christoph von Wittich d01aa9d736 fix formatting
svn path=/trunk/; revision=41601
2009-06-24 22:07:50 +00:00
Cameron Gutman 5d33bdc236 - Fix a crash that happens when we are running at APC_LEVEL, acquire the recursive mutex (which improperly handled APC_LEVEL), then attempt to access paged pool (or do anything else that depends on Irql < DISPATCH_LEVEL)
- Optimize the code for acquiring and releasing the recursive mutex at DISPATCH_LEVEL

svn path=/trunk/; revision=41600
2009-06-24 21:57:48 +00:00
Christoph von Wittich 5206a90897 stub NtSetThreadExecutionState needed by PowerPoint Viewer 2003
svn path=/trunk/; revision=41599
2009-06-24 19:53:54 +00:00
Christoph von Wittich b1dcc588eb fix crash while loading PowerPoint 2003 Viewer
See issue #4624 for more details.

svn path=/trunk/; revision=41598
2009-06-24 19:53:06 +00:00
Stefan Ginsberg de0a0cf543 - Hey Arch, try to learn basic PSEH2 syntax before fuddling around with it.
svn path=/trunk/; revision=41597
2009-06-23 23:06:10 +00:00
Cameron Gutman 5c78f6d219 - Fix the order of checks
svn path=/trunk/; revision=41590
2009-06-23 14:51:50 +00:00
Cameron Gutman d516d6898c - We only need 11 chars to hold our 32-bit integer and the trailing NULL char
- Make sure we don't overread our buffer

svn path=/trunk/; revision=41589
2009-06-23 14:47:48 +00:00
Cameron Gutman 42e13d3260 - Move NDIS_VERSION into ndissys.h and use it for NdisGetVersion also
svn path=/trunk/; revision=41587
2009-06-23 14:09:59 +00:00
Cameron Gutman 39572f4e0d - Fix adapter failure if a network address of invalid length is specified
svn path=/trunk/; revision=41586
2009-06-23 14:00:49 +00:00
Cameron Gutman 8267318b15 - Fix a crash when reading the network address from the registry
- Fixes bug 4634

svn path=/trunk/; revision=41585
2009-06-23 13:58:56 +00:00
Christoph von Wittich d8a2e91f8e sync urlmon with wine 1.1.24
svn path=/trunk/; revision=41584
2009-06-23 13:37:11 +00:00
Cameron Gutman e230289f94 - Fix adapter failure when a network address is not specified in the registry
- As a bonus, it also fixes OID_802_3_PERMANENT_ADDRESS

svn path=/trunk/; revision=41583
2009-06-23 12:41:14 +00:00
Christoph von Wittich 0e7c48671b sync ntdll rtlstr winetest with wine 1.1.24
svn path=/trunk/; revision=41582
2009-06-23 12:02:58 +00:00
Christoph von Wittich aa2eef5de1 sync crypt32_winetest with wine 1.1.24
svn path=/trunk/; revision=41581
2009-06-23 11:47:46 +00:00
Christoph von Wittich 2d5297edef sync kernel32_winetest with wine 1.1.24
svn path=/trunk/; revision=41580
2009-06-23 11:44:23 +00:00
Christoph von Wittich c90eb62d17 sync shlwapi with wine 1.1.24
svn path=/trunk/; revision=41579
2009-06-23 11:24:10 +00:00
ReactOS Portable Systems Group 2c293c30c4 - Reimplement the way zeroing PTEs are used:
- First, switch to using system PTEs as it should've been from the beginning. Our original implementation was broken and prone to race conditions, which Dmitry graciously fixed.
  - We can now remove the MiZeroPageInternal hack that was used as a way to avoid deadlock/contention in the zero paths.
  - Zeroing PTEs is done at DPC level in ReactOS, to avoid ReactOS-specific race issues. In Windows NT, this operation is always done at passive.
  - Zeroing PTEs are similar to hyperspace PTEs, but they can be mapped in chunks for optimization. 
    - ReactOS does not currently make use of this functionality, so zeroing is pretty slow, especially on bootup if you have lots of memory (all RAM is zeroed).
    - The existing ReactOS "compatibility layer" for hyperspace was augmented to seamlessly use the new zeroing PTE API.
  - You must now unmap zeroing PTEs -- MiZeroPage was modified to do this.
  - System PTE binning, NBQUEUES and SLISTS would optimize this further. TBD.
- Once again, tested on the trinity of supported emulators.


svn path=/trunk/; revision=41578
2009-06-23 09:34:45 +00:00
ReactOS Portable Systems Group d11a34b5ed - Jesus Christ man, learn some C, will you?
- Fix boot.
- The lack of colorful poetry is brought to you by cogent human beings on the West Coast whom you should be thankful haven't gone to bed yet.


svn path=/trunk/; revision=41577
2009-06-23 09:23:16 +00:00
ReactOS Portable Systems Group 25941abce1 - So it turns out bad things can happen if you play behind Mm's back.
- The lovely poetry is brought to you by 7AM coding marathons...


svn path=/trunk/; revision=41576
2009-06-23 09:11:01 +00:00
ReactOS Portable Systems Group 9730c51810 - Move ARM Pool to 0xB0000000 to avoid clashing with existing ReactOS address space components (shouldn't happen if things work right, but better safe than sorry).
- Implement System PTE allocator (MiReserveAlignedSystemPtes and MiReserveSystemPtes). Very simple yet functional, no optimizes for now.
- Allocate 32 zeoring PTEs from the System PTE pool.
  - Not used yet, only the allocation is made to test the current framework.
- Tested on VirtualBox, QEMU and VMWare with RAM sizes from 128MB to 1536MB with no problems.


svn path=/trunk/; revision=41575
2009-06-23 07:49:39 +00:00
ReactOS Portable Systems Group 12ed6254a7 - Move hypermap.c into ARM3 since it will be changed to use System PTEs for zero PTEs to solve the current race conditions that had to be fixed/hacked around in the current implementation.
- DO NOT MAP HYPERSPACE PTEs as GLOBAL! They are now mapped as local, which might fix some really strange bugs that could've occured in the past.
- Use MiPteToAddress instead of manually doing the bitmagic when mapping a page into hyperspace.


svn path=/trunk/; revision=41574
2009-06-23 07:32:43 +00:00
ReactOS Portable Systems Group 52fc282ff3 - For one thing, fix build in ARM3/init.c (sorry!)
- Secondly, initialize hyperspace in ARM³ now, at the correct place:
  - Also, create the hyperspace PDE here, and not in FreeLDR, which was incorrect in the first place.
    - This might help booting Windows/WinLDR.
- Install-tested w/ networking, with no issues found, on:
  - Virtual Box 2.4
  - VMWare 6.5
  - QEMU 0.9.0
- PEBKAC?


svn path=/trunk/; revision=41573
2009-06-23 06:39:10 +00:00
ReactOS Portable Systems Group fbca42cd9f - Do not zero out MC_SYSTEM pages if they are "early pages" either. This could cause issues on certain systems where mapping the PFN database required "early pages", and they were zeroed before hyperspace was ready.
- Add a new flag to MmGetContigousPages to specify if these pages should be zeroed or not. Allows the nonpaged pool pages not to get automatically zeroed when allocated (the NP pool allocator can do this by itself later). This allows initial nonpaged pool to be allocated before hyperspace is ready.


svn path=/trunk/; revision=41572
2009-06-23 06:32:11 +00:00
ReactOS Portable Systems Group bb161e9df2 - Do not reformat other people's code simply to reformat it.
svn path=/trunk/; revision=41571
2009-06-23 05:00:48 +00:00
ReactOS Portable Systems Group a0a3c1519e - Revert 41567:
- ARM³ (Alternate ReactOS Memory Management Module) "stuff" is not ACORN Risc Machines (ARM) Port "stuff".
  - We are lucky this user made this change before the rest of the code was checked in -- hyperspace, MDLs, nonpaged pool, kernel stacks, I/O mappings, noncached memory and contigous memory will soon all be built on ARM³ -- good thing this wasn't the case yet!
  - Recommend this user gets banned for reverting code without approval within the 24hr grace period in ReactOS guidelines.
  - If you have a bug to report, use Bugzilla, not your head as a sledgehammer.


svn path=/trunk/; revision=41570
2009-06-23 04:59:32 +00:00
Christoph von Wittich 2cbbe81d25 fix comment IsUserAdmin -> IsUserAnAdmin
svn path=/trunk/; revision=41569
2009-06-22 22:59:30 +00:00
Christoph von Wittich c8ee793546 partial advapi32 sid sync to wine 1.1.24
svn path=/trunk/; revision=41568
2009-06-22 22:54:03 +00:00
Christoph von Wittich 1196d45474 don't build arm stuff on non arm builds
fixes 2nd stage

svn path=/trunk/; revision=41567
2009-06-22 22:48:39 +00:00
Johannes Anderwald 535d640ce0 - define YieldProcessor msvc compatible
- rtl now builds

svn path=/trunk/; revision=41566
2009-06-22 21:07:52 +00:00
KJK::Hyperion 6943f54891 Change <wine/list.h> to use the magic attribute salad for inline functions in headers
svn path=/trunk/; revision=41565
2009-06-22 20:29:48 +00:00
KJK::Hyperion 7c326b484e Don't want to fix all uses of PSEH2 macros, therefore have some curly braces, everyone
svn path=/trunk/; revision=41564
2009-06-22 20:27:16 +00:00
KJK::Hyperion c14238f2a9 Correct placement of calling convention attribute
svn path=/trunk/; revision=41563
2009-06-22 20:25:25 +00:00
KJK::Hyperion c768112083 modified lib/sdk/crt/include/float.h
What the hell has <float.h> to do with S_IFIFO, Arch?

svn path=/trunk/; revision=41562
2009-06-22 20:22:06 +00:00
KJK::Hyperion 7faf270a8a modified lib/rtl/exception.c
Silence unavoidable warning

modified   lib/rtl/generictable.c
   Avoid silenceable warning

svn path=/trunk/; revision=41561
2009-06-22 20:19:06 +00:00
KJK::Hyperion e89c456751 modified dll/win32/kernel32/file/volume.c
modified   dll/win32/kernel32/misc/actctx.c
modified   dll/win32/kernel32/misc/lang.c
   C89 compliance

modified   dll/win32/kernel32/k32.h
   Include <limits.h>

modified   dll/win32/kernel32/misc/res.c
   Hey Arch, instead of copying and pasting definitions from <wine/list.h>, why don't you include it?

svn path=/trunk/; revision=41560
2009-06-22 20:15:42 +00:00
Christoph von Wittich 4f96f16ac2 sync CreateWellKnownSid with wine 1.1.24
svn path=/trunk/; revision=41559
2009-06-22 20:08:05 +00:00
Christoph von Wittich 156d181a79 sync advapi32_winetest with wine 1.1.24
svn path=/trunk/; revision=41558
2009-06-22 20:07:32 +00:00
KJK::Hyperion 223ecea05b #define inline to __inline for Visual C++ when compiling C sources
svn path=/trunk/; revision=41557
2009-06-22 20:03:20 +00:00
KJK::Hyperion 2cdaa146f7 modified dll/ntdll/include/ntdll.h
Explicitly include <pseh/pseh2.h>

modified   dll/ntdll/ldr/utils.c
   Use ANSI C variadic macros, instead of hacks

ntdll now compiles with Visual C++

svn path=/trunk/; revision=41556
2009-06-22 20:00:38 +00:00
Christoph von Wittich b704b9556d sync user32 button with wine 1.1.24
svn path=/trunk/; revision=41555
2009-06-22 19:56:37 +00:00