Commit graph

44258 commits

Author SHA1 Message Date
Aleksey Bragin 074f4cec87 [NTOS]
- Roel Messiant: Fix NtQueryObject to return the required buffer size if the buffer provided was too small. Unimplemented paths behaviour is preserved.

svn path=/trunk/; revision=50032
2010-12-15 20:12:03 +00:00
Aleksey Bragin 19e368a616 [RTL]
- Roel Messiant: Specify proper byte length of a unicode string. Fixes out of bounds access in actctx.c support code. No more half-cut active context stuff in debug logs.

svn path=/trunk/; revision=50031
2010-12-15 20:03:43 +00:00
Giannis Adamopoulos ca9039c50e [win32k]
- Use the new version of NtUserGetMessage and NtUserPeekMessage written by Jim. It is possible to use them now because GetMessage and PeekMessage don't return messages that contain pointers. As a result they don't need to do any extra work to copy the message to user mode. All messages that contain pointers are sent messages and this means that they don't get into the message loop. Instead they are passed directly to the window proc.
- DispatchMessage works only if the target window belongs to the current thread. This lets us remove uneeded copies of lparam to user mode. 

[user32]
- Remove a bunch of uneeded code in GetMessage and PeekMessage that copyied the lparam in a new buffer and did unicode to ansi convertions. It is not needed because they don't receive messages with pointers any more

svn path=/trunk/; revision=50030
2010-12-15 19:21:48 +00:00
evb 2138d6d794 - Mode detect look for 4BPP, planar, graphics < 0x800 mode now
- Add GDIINFO from NT4 VGA DDK sample driver
- Set 4BPP prefer DIB format
- No graphics caps set for VGA driver
- Put static palette/color buffer for when VGA IOCTL send later
- Convert almost done, bInitSURF is last

svn path=/trunk/; revision=50029
2010-12-14 04:10:14 +00:00
evb 46ab421926 - Finish make enable.c work full on vga, main change force 4BPP (disable other codes), create 4BPP bitmap surfobj, associate and lock
- Easy part done, now hard part

svn path=/trunk/; revision=50028
2010-12-14 03:52:00 +00:00
evb 3b3c818073 - fix now palette.c for vga, by copy logPalVGA/VGALOGPALETTE from NT4 DDK VGA sample drv and turn off codes for allocate 256 color pallette, instead use fix 16 color logPalVGA
- fix header of debug.c

svn path=/trunk/; revision=50027
2010-12-14 03:27:51 +00:00
evb bd41ac7ef9 - Add the new vga miniport to build
- Replace the framebuf_new spec rc rbuild with vga_new spec rc rbuild
- Delete pointer.c
- Start make changes, driver.h new fields for VGA, change driver short/long name/tag, add macros and in enable.c remove hw pointer support

svn path=/trunk/; revision=50026
2010-12-14 03:17:29 +00:00
evb 4803978d0e - commit base for new vga display miniport driver, is svn copy of framebuf_new as many codes identical
- Will than commit and document differences to make into vga driver

svn path=/trunk/; revision=50025
2010-12-14 03:03:30 +00:00
Pierre Schweitzer 1d0887e1ac [NTOSKRNL]
Silent FstubEx* debug prints on popular demand (ie, Timo)

svn path=/trunk/; revision=50024
2010-12-13 22:24:49 +00:00
Pierre Schweitzer fd45340e00 [NTOSKRNL]
Merge some changes from r50021 to FsRtlIsNameInExpression() to make code easier to read and understand...

svn path=/trunk/; revision=50022
2010-12-13 11:33:29 +00:00
Pierre Schweitzer 435cdd8c49 [NTOSKRNL]
Rewritten FsRtlIsDbcsInExpression() using FsRtlIsNameInExpression() pattern.
This fixes all failing tests from kmtest.sys and make this function definitely tastier to MS fastfat.sys

svn path=/trunk/; revision=50021
2010-12-13 11:24:52 +00:00
Pierre Schweitzer 2fed6b5925 [KMTEST]
Added testcases for FsRtlIsDbcsInExpression()

svn path=/trunk/; revision=50020
2010-12-13 11:06:57 +00:00
Pierre Schweitzer ffd29f0aa3 [NTOSKRNL]
Fixed FsRtlIsNameInExpression() according to r50018 tests

svn path=/trunk/; revision=50019
2010-12-12 22:17:45 +00:00
Pierre Schweitzer 94b828f1a4 [KMTEST]
Added more testcases for FsRtlIsNameInExpression()

svn path=/trunk/; revision=50018
2010-12-12 22:09:35 +00:00
Pierre Schweitzer 1632e9c528 Revert r50016
svn path=/trunk/; revision=50017
2010-12-12 22:04:59 +00:00
Pierre Schweitzer 2af18a66e3 Commit test...
svn path=/trunk/; revision=50016
2010-12-12 22:03:42 +00:00
Sylvain Petreolle dbb98253a6 [ROSTESTS]
Delete test file.


svn path=/trunk/; revision=50015
2010-12-12 21:48:05 +00:00
Sylvain Petreolle 50dce372bb [ROSTESTS]
Add lorem ipsum test file.

svn path=/trunk/; revision=50014
2010-12-12 21:30:20 +00:00
Daniel Reimer 8448d43632 Update the rapps database.
svn path=/trunk/; revision=50013
2010-12-12 18:56:43 +00:00
Aleksey Bragin c19a377df2 [HEAP]
- Time has come to get rid of a slightly modified implementation of WINE's heap, which is a hack based on Windows 95's heap implementation, itself a hack of DOS memory management. It supported 3 out of the 18 possible NT Heap Flags, did not support custom allocation/deallocation routines, and was about 50-80x slower with fragmentation rates up to 500x higher when compared to NT's LFH (WINE is lucky because the advanced NT Heap features are used in kernel-mode usually, not in user-mode, and they are crossing their fingers for this being the same). Several high-end SQL/Database applications would significantly benefit from custom heap features provided by NT. Not to say about removing crappy support for a custom Commit routine and crappy support for User-defined flags and the User-defined value.

- So, the glorious moment for a new heap manager, which is (to remind you) a totally new heap manager, resembling real NT heap manager, based on data structures similar to Windows 2003 and Vista+'s heap structures, supporting advanced heap flags (e.g. useful for debugging), having substantially lower fragmentation rates (and thus speed and reliability), having native support for user-defined flags and user-defined values, also native support for a custom commit routine, which is very important for trunk's win32 subsystem. It also reserves, commits, decommits and frees memory on the fly, unlike existing heap manager which prefers to reserve and commit as much as possible, and doesn't decommit when it's no longer necessary. Not to say about support for per process heaps, with a proper lock, and a further support for a special so-called debug heap allocator (to be implemented in heapdbg.c) which will be useful for finding heap corruptions.

Yeah, I'm not a fun person :D

svn path=/trunk/; revision=50000
2010-12-10 09:33:20 +00:00
Timo Kreuzer 867a6b79d4 [WIN32K]
Merge r49994 and r49995 from reactx branch

svn path=/trunk/; revision=49996
2010-12-09 15:53:55 +00:00
Colin Finck f1892bd3a3 Remove the "irc", "press-media" and "tools" directories.
They were moved to the "press-media" and "project-tools" repositories now.

svn path=/trunk/; revision=49986
2010-12-08 16:42:47 +00:00
Aleksey Bragin bbb9384573 [DDK]
- Oleg Baikalow: Fix NDIS macros.

svn path=/trunk/; revision=49982
2010-12-07 22:07:00 +00:00
Aleksey Bragin ffe49df99a [REGEDIT]
- Adam Kachwalla: Fix inconsistent formatting.
- Me: to anyone who's gonna try syncing the code with Wine's regedit: Have fun!
See issue #5716 for more details.

svn path=/trunk/; revision=49980
2010-12-07 21:49:25 +00:00
Eric Kohl 65081666b5 [NPFS]
Enable the driver to open a directory using a relative path name.

svn path=/trunk/; revision=49978
2010-12-07 20:16:45 +00:00
Johannes Anderwald ee4f08ad85 [PORTCLS]
- Merge from the audio branch
- Fix node property handler
- Take advantage of IPinCount interface

svn path=/trunk/; revision=49974
2010-12-07 17:23:09 +00:00
Johannes Anderwald d6f6afee98 [SHELL32]
- Implement copy / paste for files when tree view is present
- Don't add shortcuts / executables to recent file list

svn path=/trunk/; revision=49969
2010-12-07 14:35:54 +00:00
Amine Khaldi 0b6a8d819a [CMAKE]
- More work rostests cmake integration. Winetests are almost all done (two remain).

svn path=/trunk/; revision=49968
2010-12-07 11:40:10 +00:00
Amine Khaldi 2923228336 [CMAKE]
- Start working on rostests cmake integration.

svn path=/trunk/; revision=49966
2010-12-07 09:27:10 +00:00
Giannis Adamopoulos a38b059ca1 [win32k]
- In FNID_SENDMESSAGECALLBACK use SEH before accesing the user-mode buffer

svn path=/trunk/; revision=49962
2010-12-06 12:07:05 +00:00
Cameron Gutman 3e169e3cb2 [NDIS]
- Add a missing spin lock release in a failure case
- Fix incomplete copying of NDIS 5.1 miniport characteristics

svn path=/trunk/; revision=49961
2010-12-06 04:39:57 +00:00
Giannis Adamopoulos 5f879a1245 [win32k]
-Amend to r41772. Allow PostMessage to handle DDE messages

svn path=/trunk/; revision=49957
2010-12-05 23:10:03 +00:00
Aleksey Bragin ca9bd80182 [TASKMGR]
- Rafal Harabien: Add support for DELETE key to processes and applications list in taskmgr.
See issue #5646 for more details.

svn path=/trunk/; revision=49954
2010-12-05 10:27:45 +00:00
James Tabor e781fb11a4 [Win32k|User32]
- Remove the old send message API and use NtUserMessageCall.
- Send messages do not pass the Ansi bit. This was evident during the hook changes. User32 knows the caller is Ansi and with a Unicode window user32 can make the apropate switch. Win32k on the other hand, assumes, based on the Unicode window the caller is Unicode. Hook tests enabled in send message, forces the call to win32k, and the Ansi product is Unicode data. Using NtUserMessageCall this bit can be passed forward to allow win32k to make the correct switch going to callback.

svn path=/trunk/; revision=49950
2010-12-04 17:51:17 +00:00
Eric Kohl 95aa3be8eb [NPFS]
- Fail attempts to connect or disconnect a directory or device.
- Fail attempts to connect or disconnect a pipe by the client.

svn path=/trunk/; revision=49948
2010-12-04 15:25:27 +00:00
Eric Kohl fe0eda52aa [NPFS]
Read and write IRPs must fail if the caller is not a pipe but a directory or a device.

svn path=/trunk/; revision=49945
2010-12-04 08:54:16 +00:00
James Tabor a3bba1d54a [Win32k]
- More fixes to In Send message support. One more case fixed in looping back.

svn path=/trunk/; revision=49936
2010-12-03 18:13:28 +00:00
James Tabor 6e80bd7c43 [Win32k]
- More fixes to In Send and Reply message support.

svn path=/trunk/; revision=49935
2010-12-03 18:02:02 +00:00
James Tabor 7d1736a1a2 [Win32k|User32]
- Fixed SendNotifyMessage, thanks to Michael Martin callback changes. Fixed DispatchMessage when dealing with thread errors. Fixed all but one of the Get/PeekMessage wine tests. Fixed attaching threads to process information. Plus other fixes.
- Implemented support for QS bits, ReplyMessage (not fully correct), and others.
- Tested everything here, please post regressions so I can add more applications to the test list. This patch is synced with 49720 and 49772. After that there are graphic issues.
- Credits goes to wine for helping with diagnosing issues in the ReactOS message system.

svn path=/trunk/; revision=49929
2010-12-03 15:34:06 +00:00
Timo Kreuzer 3972c628bb revert accidental change from r49499
svn path=/trunk/; revision=49918
2010-12-03 11:46:52 +00:00
Timo Kreuzer 1a20b0bd9c [NTOSKRNL]
patch by Samuel Serapion:
Implement MemorySectionName case for NtQueryVirtualMemory. Protect buffer access with SEH.

See issue #5753 for more details.

svn path=/trunk/; revision=49898
2010-12-02 14:37:16 +00:00
Aleksey Bragin ed5da47acd [FINDSTR]
- Port findstr (incomplete, as author of this patch states, it may satisfy RosBE, .c .h and .rc files) from FreeDOS project. Needed for RosBE-on-ReactOS support.
See issue #5724 for more details.

svn path=/trunk/; revision=49875
2010-11-30 19:14:41 +00:00
Aleksey Bragin 7ca7ff0cbd [CMD]
- Carlo Bramix: MultiByteToWideChar() has just 6 and not 8 parameters, probably it's a forgetten copy/past from WideCharToMultiByte().
- Carlo Bramix: ConvertULargeInteger() should have its parameter 'Len' declared as UINT rather than 'INT'. This fixes a signed/unsigned mismatch warning.
See issue #5678 for more details.

svn path=/trunk/; revision=49873
2010-11-30 16:38:53 +00:00
Aleksey Bragin 76b3ad6788 [DDRAW]
- Jerome Gardou: Almost all of the ddraw->refcount winetests pass. One remains, due to the fact that IdirectDrawSurface::SetPalette is unimplemented. IDirectDraw::Createpalette is implemented too, but needs testing. There are no parameter checks.
- Comments from me: The patch is not build-tested, however I did my best to merge it to existing ddraw and I prefer the actual code to be in the repository rather than hanging in bugzilla for years (last comment to the patch is dated 29.10.2009).

See issue #4909 for more details.

svn path=/trunk/; revision=49872
2010-11-30 16:29:49 +00:00
James Tabor 081b22869e [User32]
- Fixed export for PrintWindow see bug 5466 and 5609.

svn path=/trunk/; revision=49861
2010-11-29 16:48:27 +00:00
Pierre Schweitzer 6a6c5e47e6 [NTOSKRNL/NEWCC]
Init Dummy var even if just used for debug to suppress warning

svn path=/trunk/; revision=49858
2010-11-28 22:33:19 +00:00
Pierre Schweitzer e8615c4221 [DDK]
FsRtlRemoveBaseMcbEntry() return is VOID

svn path=/trunk/; revision=49851
2010-11-28 16:43:40 +00:00
Amine Khaldi 14dc931ab1 [NTOSKRNL/MM]
- Fix the use of an uninitialized variable.

svn path=/trunk/; revision=49850
2010-11-28 16:38:51 +00:00
Pierre Schweitzer b0fb94b1f3 [NTOSKRNL]
Never read code & commit while being tired...

svn path=/trunk/; revision=49848
2010-11-28 16:33:56 +00:00
Aleksey Bragin 5afe6c4f39 [ATL]
- Ettl Martin: Make CComCriticalSection destructor virtual.
See issue #4975 for more details.

svn path=/trunk/; revision=49840
2010-11-28 12:10:59 +00:00