Commit graph

32012 commits

Author SHA1 Message Date
James Tabor e153b69952 - Attempt to initiate hook set from kernel space.
svn path=/trunk/; revision=34807
2008-07-26 12:27:40 +00:00
Aleksey Bragin 138fbd967b Jon Griffiths
msvcrt: Implement ___setlc_active_func/___unguarded_readlc_active_add_func

svn path=/trunk/; revision=34806
2008-07-26 11:54:54 +00:00
Aleksey Bragin 9db3c82bb7 - Sync with Wine (null-initializing some exported data).
svn path=/trunk/; revision=34805
2008-07-26 11:45:59 +00:00
James Tabor 37cf6bcd75 - Fix boot add missing return.
svn path=/trunk/; revision=34799
2008-07-26 00:25:42 +00:00
James Tabor 996438fdc6 - Replace Global flag.
svn path=/trunk/; revision=34797
2008-07-26 00:03:31 +00:00
James Tabor 9bec76e407 - Fix NtUserCallMsgFilter so it initiates the hook call.
svn path=/trunk/; revision=34794
2008-07-25 23:08:50 +00:00
Hervé Poussineau 4b1181962c Cleanup code
svn path=/trunk/; revision=34793
2008-07-25 20:28:59 +00:00
Hervé Poussineau e99c0ad3a9 Add comments
Better interface declarations

svn path=/trunk/; revision=34792
2008-07-25 20:27:05 +00:00
Hervé Poussineau 242b0d5be5 Replace DPRINT/DPRINT1 by dynamic traces
svn path=/trunk/; revision=34791
2008-07-25 20:24:46 +00:00
Hervé Poussineau 042289aad8 Notify kernel when configuration is good
svn path=/trunk/; revision=34790
2008-07-25 20:16:16 +00:00
Hervé Poussineau 9ba8702be9 Apply again r34533: rename autogenerated makefile to makefile-$(ARCH).auto,
except for i386, due to a bug in RosBE which cleans only makefile.auto and not makefile*.auto

svn path=/trunk/; revision=34789
2008-07-25 19:07:36 +00:00
Hervé Poussineau d62f18210a Revert incorrect fix committed in r34077 by cfinck, and replace it by a better one.
svn path=/trunk/; revision=34788
2008-07-25 18:45:54 +00:00
Johannes Anderwald 7cf8ccf54f - identation janitor
svn path=/trunk/; revision=34784
2008-07-25 14:04:37 +00:00
Art Yerkes 6ae9a99375 Fix several problems with lookasides and temporary captures:
ob_x.h: Add a proper define for the size of a lookaside name buffer
oblink.c: Use move memory rather than copy in the case that we re-use the name
  buffer.  We probably never reused it before, because MaximumLength was never
  set properly.  See below.
oblife.c: Several things
  ObpCaptureObjectName
  - Properly set MaximumLength rather than copping out and setting it to just
    string + nul.  This was dangerous because later, we'll use MaximumLength
    to determine whether we allocated the name from the lookaside list or the
    heap.
  - Since we use MaximumLength to determine where the allocation came from
    make sure that MaximumLength never equals the magic value if the string
    comes from the heap for whatever reason.
  - Free the string using the right symmetry if we would fault copying.
  ObpCaptureObjectCreateInformation
  - We didn't allocate the ObjectCreateInfo, but we might've allocated the
    security descriptor, so free it if needed, rather than borking some non
    heap.

svn path=/trunk/; revision=34783
2008-07-25 13:42:05 +00:00
James Tabor 4e945c2292 - Fix loading hooks.
svn path=/trunk/; revision=34777
2008-07-25 12:43:55 +00:00
James Tabor f123580aa0 - Add support for SMTO_NOTIMEOUTIFNOTHUNG.
- Fix WH_CALLWNDPROC/RET for multi thread.
- Fix foreground idle.

svn path=/trunk/; revision=34776
2008-07-25 12:31:59 +00:00
James Tabor 9f5f04ab20 Check for null pointers, keep wine msg test from crashing.
svn path=/trunk/; revision=34774
2008-07-25 12:26:22 +00:00
James Tabor 0104c42bb4 Fix typo.
svn path=/trunk/; revision=34767
2008-07-25 01:07:41 +00:00
James Tabor c688d08ea3 - Add call window proc hooks.
svn path=/trunk/; revision=34766
2008-07-25 01:02:17 +00:00
James Tabor fc15d06386 - Finish callback for WH_KEYBOARD.
svn path=/trunk/; revision=34764
2008-07-24 22:14:50 +00:00
Jeffrey Morlan eb40678d1d Fix crash in NtUserSetClipboardData with CF_TEXT format. (Bug 3536)
svn path=/trunk/; revision=34763
2008-07-24 22:08:50 +00:00
James Tabor eaa1dbeb84 - Plug in WH_KEYBOARD callback.
svn path=/trunk/; revision=34762
2008-07-24 22:00:41 +00:00
James Tabor 8c9a96581a Add two more CallNextHook finctions.
svn path=/trunk/; revision=34759
2008-07-24 21:39:00 +00:00
Johannes Anderwald d228207f6f - enumerate all file types for folder options namespace applet
- use mui string when available
- load the title from shell32 module base
- remove PSH_PROPTITLE flag

svn path=/trunk/; revision=34757
2008-07-24 21:26:36 +00:00
Hervé Poussineau eac2f712a7 Use a common .spec file instead of a .def file per architecture
svn path=/trunk/; revision=34755
2008-07-24 20:54:32 +00:00
Hervé Poussineau c67da0d485 Update IDL file with new MS Vista functions
svn path=/trunk/; revision=34751
2008-07-24 19:50:09 +00:00
Aleksey Bragin a6b1581db5 - MiGetLastKernelAddress was totally broken on x86 and always returned the highest available physical page, thus the PFN database always end up at the address 0x80000000 and higher (just before the kernel). And when PFN database's size was bigger than usual (e.g. 1Gb of RAM and more), the PFN database zeroed out the kernel. This logic was introduced by 32640 commit.
- Fix the logic so it really gives the last kernel address, as function name suggests. If you want to change the logic of the function, then rename it accordingly.
See issue #3507 for more details.

svn path=/trunk/; revision=34737
2008-07-24 12:18:26 +00:00
James Tabor e928cd52fd - Added more hook points. Setup WH_MOUSE with callbacks, seems to be preloaded. Started BroadcastSystemMessage.
- Tested with Opera 9.51, FF, Seamonkey, Abiword, Miranda and the rest of our applications.

svn path=/trunk/; revision=34736
2008-07-24 11:38:08 +00:00
Aleksey Bragin face282d9f Dmitry Gorbachev
- Fix warnings in host tools.
See issue #3539 for more details.

svn path=/trunk/; revision=34734
2008-07-24 11:05:22 +00:00
Ged Murphy 5032762531 - dependencies is a double terminated string array
- patch by bugboy <martinmnet at hotmail dot com>

svn path=/trunk/; revision=34729
2008-07-24 07:57:20 +00:00
James Tabor ca0afa576e - Fix show window call and add message calls for future hook support.
svn path=/trunk/; revision=34698
2008-07-23 21:18:48 +00:00
James Tabor d7c9b915da Enable message filter hooks and add call hook support for debug hook.
svn path=/trunk/; revision=34697
2008-07-23 20:24:49 +00:00
James Tabor 2ca130fb8b - Fix NtUserCallMsgFilter to use SEH. Add support for system commands related to hooks.
svn path=/trunk/; revision=34696
2008-07-23 19:59:20 +00:00
Aleksey Bragin 3383fdae0a - Partly revert 24104: "I do not known if I done right in NtGdiRealizePalette step2, step2 is not tested." - if you don't know, don't do at all!
Memory DC "supports drawing operations on a bitmap" according to MSDN, so why changing device's palette? I think it was not done for a reason, and if you can't test, don't touch before you have a test application.
- Reformat another part of 24104, and include warning messages too, to track palette failures.
- Put two mandatory debug prints to see when the code is being hit (one to memory managed DC case, and another one to the code commented out by Jim).
- Tested with abiword, FF 1.5 and 2.0, openoffice 2.0 installer, in 8, 24 and 32 bit color modes, no problem arised, and no debug messages flood happened.

svn path=/trunk/; revision=34695
2008-07-23 18:20:32 +00:00
Jeffrey Morlan 4246bf6783 - Implement handle access checking on all console functions.
- OpenConsoleW: Fourth parameter is actually share mode (passing a number from 0 to 2 will usually give ERROR_SHARING_VIOLATION on Windows)
- CreateFileW: Move CONIN$/CONOUT$ handling after dwCreationDisposition checks (it must be valid, even though it doesn't matter which it is); pass FILE_SHARE_READ|FILE_SHARE_WRITE to OpenConsoleW (dwShareMode is ignored).
- CloseConsoleHandle, CsrReleaseObject, CsrVerifyObject: Remove IsConsoleHandle checks - Windows ignores lower 2 bits of handle for closing and verifying.
- SetConsoleMode: Remove IsConsoleHandle check - it's redundant, since the same check is done in CsrGetObject.
- CsrIsConsoleHandle, CsrReleaseObjectByPointer: Clean up a bit.
- CsrFreeConsole: Remove the process from the console's list.

svn path=/trunk/; revision=34694
2008-07-23 16:21:46 +00:00
Aleksey Bragin dd1b21d54b - Revert 20424 and do a proper fix: Check if pool allocation succeeded right after allocation, not at the end of the function, when the pointer has been used quite a few times already.
svn path=/trunk/; revision=34693
2008-07-23 15:18:25 +00:00
Christoph von Wittich 981b8ac8ca fix all kernel32 version winetests
svn path=/trunk/; revision=34692
2008-07-23 11:19:01 +00:00
James Tabor 0868fdb45d - Fixed CallNextHookEx, now we do make the callback. Q, how to reload it at the end of the list? Fix for bug 3549.
- Tested with Opera 9.51(still breaks when getting the page see bug 3465), FF, Seamonkey, Abiword, and the rest of our applications.

svn path=/trunk/; revision=34691
2008-07-22 23:46:31 +00:00
Art Yerkes e115c9270c Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
Fixed my mistake leaving TCPConnect on a failure path without releasing the
TCP lock.

svn path=/trunk/; revision=34690
2008-07-22 23:11:46 +00:00
Matthias Kupfer 6e39ab797b revert on request, problem remains
svn path=/trunk/; revision=34689
2008-07-22 20:16:12 +00:00
Matthias Kupfer 82765169f6 it's mean to move main window with focus in front of a modal dialog
svn path=/trunk/; revision=34688
2008-07-22 18:51:09 +00:00
Jeffrey Morlan 0cc9f32797 - Implement access masks and optional inheritability for console handles. Currently, only CsrDuplicateHandle actually checks the access mask.
- CreateFileW: Pass CONIN$/CONOUT$ opens to OpenConsoleW.
- DuplicateConsoleHandle: Remove ProcessId from request structure, since console handles can only be duplicated in the calling process.
                          Don't check low bits of handle (Windows ignores them), but do check options and (if DUPLICATE_SAME_ACCESS is not specified) access mode. 
- OpenConsoleW: Make wsName parameter const; allow any combination of GENERIC_READ and GENERIC_WRITE, don't require both.
- CreateConsoleScreenBuffer: Add parameter checks; return INVALID_HANDLE_VALUE (not FALSE) on failure.
- Remove remnants of unnecessary handle in Get/SetConsoleTitle.
- CsrDuplicateHandle: Implement DUPLICATE_CLOSE_SOURCE and DUPLICATE_SAME_ACCESS options.

svn path=/trunk/; revision=34685
2008-07-22 17:37:13 +00:00
Art Yerkes b026106358 Reenable kdbg specific settings.
svn path=/trunk/; revision=34683
2008-07-22 13:12:14 +00:00
Art Yerkes 5c108dbe7d Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
- Fix a few issues in the cancel routine
- Don't wait on an event we haven't set
- Don't mark the IRP pending when in DispPrepareIrpForCancel

svn path=/trunk/; revision=34682
2008-07-22 12:53:25 +00:00
Aleksey Bragin b10a7debe3 - PFN_DrvMovePanning type is not part of DDK/WDK's winddi.h, so it shouldn't have been added to ReactOS DDK as well. Move it to ntgdityp.h.
svn path=/trunk/; revision=34679
2008-07-22 11:24:56 +00:00
Johannes Anderwald c18f0a3fb9 - fix multiple bugs in mydocuments shellfolder:
- zero initialize buffer
- check return value of SHGetSpecialFolderPathW
- zeroize buffer in ISF_MyDocuments_fnGetDisplayNameOf


svn path=/trunk/; revision=34678
2008-07-22 11:20:01 +00:00
Aleksey Bragin 70b9b15c69 - Set eol-style to native.
svn path=/trunk/; revision=34676
2008-07-22 10:35:49 +00:00
ReactOS Portable Systems Group e0f2814f6b - Build and add ntdll for ARM.
- We now correctly mount the boot partition, scan for system drivers (none yet), and attempt loading ntdll.
- This actually works --  meaning the RAMdisk driver is working perfectly with vfatfs.sys and providing a virtual drive.
- We crash during mapping ntdll.dll due to some Mm issues we need to work out.
- Yes, we're almost at user-mode.

svn path=/trunk/; revision=34675
2008-07-22 10:00:04 +00:00
ReactOS Portable Systems Group 148fbeb8b3 - Forgot to merge these changes in as well -- they relate to the LARGE_INTEGER changes in the ramdisk header file.
svn path=/trunk/; revision=34674
2008-07-22 09:57:36 +00:00
ReactOS Portable Systems Group 4819929961 - Add arm subdirectory with stubs for functions that we'll need to implement later.
svn path=/trunk/; revision=34673
2008-07-22 09:55:38 +00:00