reactos.git
9 years ago[NTFS_TEST]
Pierre Schweitzer [Sat, 1 Nov 2014 09:56:33 +0000 (09:56 +0000)]
[NTFS_TEST]
Add a simple application (à la NTFSInfo & nfi) to dump the data about a NTFS volume using the FSCTL control codes.
This is for both demonstrating how it works and to assess our driver behavior against Windows behavior of these FSCTL.

CORE-8725

svn path=/trunk/; revision=65165

9 years ago[PSDK]
Pierre Schweitzer [Sat, 1 Nov 2014 08:58:41 +0000 (08:58 +0000)]
[PSDK]
Add yet another missing NTFS define

svn path=/trunk/; revision=65164

9 years ago[PSDK]
Pierre Schweitzer [Sat, 1 Nov 2014 08:03:57 +0000 (08:03 +0000)]
[PSDK]
Add missing NTFS defines

svn path=/trunk/; revision=65163

9 years ago[EVENTLOG]
Kamil Hornicek [Fri, 31 Oct 2014 22:39:19 +0000 (22:39 +0000)]
[EVENTLOG]
- fix a possible null dereference

svn path=/trunk/; revision=65162

9 years ago[SHELL32]
Amine Khaldi [Fri, 31 Oct 2014 18:46:27 +0000 (18:46 +0000)]
[SHELL32]
* Apply Wine commit a2c90524 by Aric Stewart: Improve the FO_MOVE operation.
* More shell32:shlfileop tests run, less fail.
CORE-8540

svn path=/trunk/; revision=65159

9 years ago[KERNEL32]
Kamil Hornicek [Fri, 31 Oct 2014 18:13:36 +0000 (18:13 +0000)]
[KERNEL32]
- rewrite the GEO_FRIENDLYNAME case of GetGeoInfoW which was completely wrong, intl.cpl now shows a valid list of locations
- note: The geo location resource strings have an arbitrary offset so that they don't collide with the nls resources (which shouldn't be there). Once these are moved out of kernel32 into locale.nls this offset alongside with the hack already present in GetLocalisedText can be removed.

svn path=/trunk/; revision=65157

9 years ago[SHELL32]
Thomas Faber [Fri, 31 Oct 2014 18:02:52 +0000 (18:02 +0000)]
[SHELL32]
- Fix a use after free in COpenWithMenu::Initialize. Powered by DPH.

svn path=/trunk/; revision=65156

9 years ago[NEWDEV]
Thomas Faber [Fri, 31 Oct 2014 17:35:38 +0000 (17:35 +0000)]
[NEWDEV]
- Fix buffer overflow in PopulateCustomPathCombo. Powered by DPH.
- Fix a signed vs unsigned comparison

svn path=/trunk/; revision=65154

9 years ago[MSGINA]
Thomas Faber [Fri, 31 Oct 2014 17:05:30 +0000 (17:05 +0000)]
[MSGINA]
- pszEnvironment is a multi-sz string so make sure to double-null terminate it. Fixes a buffer overrun in winlogon; powered by DPH.

svn path=/trunk/; revision=65153

9 years ago[KERNEL32]
Kamil Hornicek [Fri, 31 Oct 2014 16:32:23 +0000 (16:32 +0000)]
[KERNEL32]
- fall back to english if a localized resource is not found in GetLocalisedText
- this prevents debug spam and loss of functionality (see CORE-8720) for languages that don't have kernel32 translated

svn path=/trunk/; revision=65152

9 years ago[WIN32K]
Kamil Hornicek [Fri, 31 Oct 2014 15:57:09 +0000 (15:57 +0000)]
[WIN32K]
- don't access user mode buffers directly in the Freetype code

svn path=/trunk/; revision=65150

9 years ago[SHELL32]
Amine Khaldi [Fri, 31 Oct 2014 15:16:51 +0000 (15:16 +0000)]
[SHELL32]
* Rename shellstring.cpp to shellstring.c and update it against Wine 1.7.27.
CORE-8540

svn path=/trunk/; revision=65147

9 years ago[SHELL32]
Amine Khaldi [Fri, 31 Oct 2014 14:29:26 +0000 (14:29 +0000)]
[SHELL32]
* Move TRASH_CanTrashFile and TRASH_TrashFile declarations to recyclebin.h.
* Do not include xdg.h in shlfileop.cpp anymore.
* Remove the now unneeded xdg.h.

svn path=/trunk/; revision=65146

9 years ago[NTFS]
Pierre Schweitzer [Fri, 31 Oct 2014 14:21:35 +0000 (14:21 +0000)]
[NTFS]
- Move FSCTL_GET_NTFS_VOLUME_DATA implementation in its own function GetNfsVolumeData(), so remove it from NtfsUserFsRequest()
- Add support for FSCTL_GET_NTFS_FILE_RECORD in NtfsUserFsRequest()
- Implement GetNtfsFileRecord() which returns a file record. Not fully sure about its implementation, this is to be checked.

This does not really improve the nfi situation in any kind yet...

CORE-8725

svn path=/trunk/; revision=65145

9 years ago[NTOSKRNL]
Pierre Schweitzer [Fri, 31 Oct 2014 14:16:15 +0000 (14:16 +0000)]
[NTOSKRNL]
Testman confirms that IopParseDevice() hack is no longer required.
So, this is the end of this 8y old hack.

Now ReactOS is able to properly use its storage stack (who said, amazing?)

Bisous IopParseDevice() hack :-)

svn path=/trunk/; revision=65144

9 years ago[OPENGL32]
Jérôme Gardou [Fri, 31 Oct 2014 11:35:32 +0000 (11:35 +0000)]
[OPENGL32]
 - Do not crash if thread data was not allocated

svn path=/trunk/; revision=65143

9 years ago[NTOSKRNL]
Pierre Schweitzer [Fri, 31 Oct 2014 11:22:26 +0000 (11:22 +0000)]
[NTOSKRNL]
Revert r65120...
Which was reverting r65119...
Which was reverting r65117...
Which was reverting r65110...
Which was reverting r65107...
Which was reverting r65104!

To make it short? Fuck you IopParseDevice() hack!
And this time, I hope this is the right one!
I couldn't reproduce any of the previous issues in my WC.

svn path=/trunk/; revision=65142

9 years ago[NTOSKRNL]
Pierre Schweitzer [Fri, 31 Oct 2014 11:17:43 +0000 (11:17 +0000)]
[NTOSKRNL]
Some fixes and missing implementations in RawFS:
- Remove some magic values for VCB state
- Add a local VPB in our VCB. This will allow diverting the IO VPB with ours in case of dismount (and thus, will fix dismount)
- Implement support for said VPB in both RawCheckForDismount() and RawInitializeVcb()
- Now, dismount is handled in RawCheckForDismount() directly, and not in functions calling it
- Handle streams in RawClose
- Handle VCB being dismounted in RawCreate()
- Handle dismount also in RawCleanup() (not only in RawClose())

This fixes volume locking and dismounting in RawFS. And thus, allows FS swap in case of raw volume formating in first stage :-).
More to follow!

svn path=/trunk/; revision=65141

9 years ago[FASTFAT]
Jérôme Gardou [Fri, 31 Oct 2014 11:04:12 +0000 (11:04 +0000)]
[FASTFAT]
 - Fix renaming files in case the target file already exists.
 - Plug a few reference count leaks on FCBs.
CORE-8660 #comment fixed in r65140 #resolve
CORE-8633 #comment fixed in r65140 #resolve
CORE-4758 #comment fixed in r65140 #resolve

svn path=/trunk/; revision=65140

9 years ago[NTOS/SE]
Jérôme Gardou [Fri, 31 Oct 2014 11:03:56 +0000 (11:03 +0000)]
[NTOS/SE]
 - Allocate the new ACL for the token with the right pool.
Fixes google chrome BAD_POOL_CALLER bugcheck.

svn path=/trunk/; revision=65139

9 years ago[FTP]
Amine Khaldi [Fri, 31 Oct 2014 10:40:48 +0000 (10:40 +0000)]
[FTP]
* Plug a leak. CID 513875.
CORE-7975

svn path=/trunk/; revision=65138

9 years ago[LOGOFF]
Amine Khaldi [Fri, 31 Oct 2014 10:24:48 +0000 (10:24 +0000)]
[LOGOFF]
* LocalFree should only be executed if AllocAndLoadString() succeeds. Spotted by Thomas Faber.

svn path=/trunk/; revision=65137

9 years ago[IPCONFIG]
Amine Khaldi [Fri, 31 Oct 2014 10:20:55 +0000 (10:20 +0000)]
[IPCONFIG]
* Plug some leaks. CIDs 716301 => 716305.
CORE-7975

svn path=/trunk/; revision=65136

9 years ago[FINGER]
Amine Khaldi [Fri, 31 Oct 2014 09:53:18 +0000 (09:53 +0000)]
[FINGER]
* Addendum to r37084.
* Really fixes CIDs 500624 and 500625 which were marked as fixed.
CORE-7975

svn path=/trunk/; revision=65135

9 years ago[FINGER]
Amine Khaldi [Fri, 31 Oct 2014 09:43:48 +0000 (09:43 +0000)]
[FINGER]
* Plug a leak. CID 1102406.
CORE-7975

svn path=/trunk/; revision=65134

9 years ago[LOGOFF]
Amine Khaldi [Fri, 31 Oct 2014 09:22:59 +0000 (09:22 +0000)]
[LOGOFF]
* Plug some leaks. CIDs 716284 and 716285.
CORE-7975

svn path=/trunk/; revision=65133

9 years ago[SHELL32]
Amine Khaldi [Fri, 31 Oct 2014 09:08:43 +0000 (09:08 +0000)]
[SHELL32]
* Plug a leak. CID 716474.
CORE-7975

svn path=/trunk/; revision=65132

9 years ago[WIN32K]
Kamil Hornicek [Fri, 31 Oct 2014 00:21:03 +0000 (00:21 +0000)]
[WIN32K]
- check for an attached surface a bit earlier in GreExtTextOutW
- fixes Foobar 2000
CORE-7425

svn path=/trunk/; revision=65131

9 years ago[VFATLIB]
Pierre Schweitzer [Thu, 30 Oct 2014 21:12:38 +0000 (21:12 +0000)]
[VFATLIB]
When we're done with formatting, attempt to umount the volume, so that it can be remounted properly by FastFAT.

svn path=/trunk/; revision=65130

9 years ago[FASTFAT]
Pierre Schweitzer [Thu, 30 Oct 2014 20:56:40 +0000 (20:56 +0000)]
[FASTFAT]
On the road for getting rid of IopParseDevice() hack....

- Add support for FSCTL_LOCK_VOLUME, FSCTL_UNLOCK_VOLUME, FSCTL_DISMOUNT_VOLUME in VfatFileSystemControl()
- Implement VfatLockOrUnlockVolume(). This brings some kind of volume locking to FastFAT FSD. It's likely not fully accurate and welcome to race conditions. But, its main purpose is to be used in usetup. So, this is fine for now.
- Stubplement VfatDismountVolume(). This will be implemented later on, but should be relatively straightforward as it requires volume to be locked (so, we're the last ones on it :-)).

svn path=/trunk/; revision=65129

9 years ago[APPWIZ][SYSSETUP]
Sylvain Petreolle [Thu, 30 Oct 2014 20:50:30 +0000 (20:50 +0000)]
[APPWIZ][SYSSETUP]
Enforce focus of the Wine Gecko download prompt in second stage.
Patch by Ismael Ferreras Morezuelas (swyter)

svn path=/trunk/; revision=65128

9 years ago[FREELDR] Move down the requirement of highest usable address
Hervé Poussineau [Thu, 30 Oct 2014 20:22:57 +0000 (20:22 +0000)]
[FREELDR] Move down the requirement of highest usable address

This fixes PXE boot in QEMU, where highest usable address is 0x9c400.

svn path=/trunk/; revision=65127

9 years ago[BOOTDATA]
Amine Khaldi [Thu, 30 Oct 2014 13:29:44 +0000 (13:29 +0000)]
[BOOTDATA]
* Romanian translation update by Ștefan Fulea.
CORE-8630 #resolve #comment Committed in r65123. Thanks!

svn path=/trunk/; revision=65123

9 years ago[INTL]
Kamil Hornicek [Thu, 30 Oct 2014 12:15:11 +0000 (12:15 +0000)]
[INTL]
- don't display garbage in the location combo box

svn path=/trunk/; revision=65122

9 years ago[NTOSKRNL]
Pierre Schweitzer [Thu, 30 Oct 2014 08:39:03 +0000 (08:39 +0000)]
[NTOSKRNL]
Actually enable again the hack...
For whatever reason, it works with my WC but not with clean trunk...
Where are the you, magic and silent patch that fixes it? :-(

svn path=/trunk/; revision=65120

9 years ago[NTOSKRNL]
Pierre Schweitzer [Thu, 30 Oct 2014 07:49:37 +0000 (07:49 +0000)]
[NTOSKRNL]
Finally, disable again the IopParseDevice hack.
Just for the record, opening a volume with FILE_READ_EA or FILE_READ_DATA is legal and works in Windows (NTFS Info for instance opens it with GENERIC_READ).

Let's hope we can rid of this hack forever now... It's been with us since 2006!

svn path=/trunk/; revision=65119

9 years ago[FASTFAT]
Pierre Schweitzer [Thu, 30 Oct 2014 07:46:25 +0000 (07:46 +0000)]
[FASTFAT]
Don't over-reference our FCB in case of volume opening (vfatAttachFCBToFileObject() already references it).

This fixes 1st stage and beyond with IopParseDevice hack off

svn path=/trunk/; revision=65118

9 years ago[NTOSKRNL]
Pierre Schweitzer [Wed, 29 Oct 2014 23:28:15 +0000 (23:28 +0000)]
[NTOSKRNL]
Reenable IopParseDevice hack for now.
Out of fixes for tonight.

svn path=/trunk/; revision=65117

9 years ago[FASTFAT]
Pierre Schweitzer [Wed, 29 Oct 2014 23:10:31 +0000 (23:10 +0000)]
[FASTFAT]
Now that we start to honor the storage stack (ie, without the IopParseDevice hack ;-)), we have to let FSDs forward device IOCTLs.
This allows back copying files on 1st stage

svn path=/trunk/; revision=65116

9 years ago[FASTFAT]
Pierre Schweitzer [Wed, 29 Oct 2014 22:51:16 +0000 (22:51 +0000)]
[FASTFAT]
Don't attempt to mount any partition just because we have a valid partition table...
Restrict this to them being marked as FAT or compatible.

svn path=/trunk/; revision=65115

9 years ago[NTFS]
Pierre Schweitzer [Wed, 29 Oct 2014 22:40:16 +0000 (22:40 +0000)]
[NTFS]
Addendum to r65112

svn path=/trunk/; revision=65113

9 years ago[NTFS]
Pierre Schweitzer [Wed, 29 Oct 2014 22:36:55 +0000 (22:36 +0000)]
[NTFS]
Implement support for the FSCTL_GET_NTFS_VOLUME_DATA user request in NtfsUserFsRequest().

This makes NTFSInfo capable of working in ReactOS :-). A picture to show it: http://www.heisspiter.net/~Pierre/rostests/NTFS_info.png
Yes, NTFS Zone isn't computed yet. I'll have a look at it later on.

This doesn't fix nfi.exe though. If it can get its data, it cannot continue. It loops forever on a FSCTL we don't handle yet.

CORE-8725

svn path=/trunk/; revision=65112

9 years ago[NTOSKRNL]
Sylvain Petreolle [Wed, 29 Oct 2014 22:22:24 +0000 (22:22 +0000)]
[NTOSKRNL]
Reapply r65107.
We need fixes, not hacks.
Sorry for being popular^W pressure ;)

svn path=/trunk/; revision=65110

9 years ago[NETAPI32]
Eric Kohl [Wed, 29 Oct 2014 22:17:23 +0000 (22:17 +0000)]
[NETAPI32]
NetUserModalsGet:
- Return the proper maximum password age.
- Remove dead code.

svn path=/trunk/; revision=65109

9 years ago[UNIATA]
Sylvain Petreolle [Wed, 29 Oct 2014 21:34:01 +0000 (21:34 +0000)]
[UNIATA]
Update to 0.45c1.

svn path=/trunk/; revision=65108

9 years ago[NTOSKRNL]
Pierre Schweitzer [Wed, 29 Oct 2014 21:22:36 +0000 (21:22 +0000)]
[NTOSKRNL]
Reenable hack due to popular pressure.
Still better than fixing it, it seems...
So, break again volume opening.

svn path=/trunk/; revision=65107

9 years ago[NTFS]
Pierre Schweitzer [Wed, 29 Oct 2014 18:42:05 +0000 (18:42 +0000)]
[NTFS]
Finally, move old stuff back from disk.sys to ntfs.sys now it can be properly reached on volume opening:
- Halfplement NtfsUserFsRequest() and add support for IRP_MN_USER_FS_REQUEST in NtfsFsdFileSystemControl()
- Also, use the proper FSCTL code: FSCTL_GET_NTFS_VOLUME_DATA which exists and is documented instead of FSCTL_GET_NTFS_VOLUME_DATA. Spotted by Christoph.

CORE-8725

svn path=/trunk/; revision=65106

9 years ago[DISK]
Pierre Schweitzer [Wed, 29 Oct 2014 18:25:30 +0000 (18:25 +0000)]
[DISK]
Revert r65097 and r65090.
Thanks to r65104, now the FSCTLs go to the right place: the FSDs!

Thanks to Thomas for pointing out that NTFSinfo was really talking with the FSD on Windows and not to disk.sys

CORE-8725

svn path=/trunk/; revision=65105

9 years ago[NTOSKRNL]
Pierre Schweitzer [Wed, 29 Oct 2014 18:20:43 +0000 (18:20 +0000)]
[NTOSKRNL]
Disable the IopParseDevice hack. It appears it was triggered on volume opening and thus was breaking volume opening which were then forwarded down to disk.sys.
Not sure how legit it is to have it anylonger.

At least, disabling it reenables volume opening in ReactOS and associated FSCTL!

Alex & Aleksey, can you review please?

CORE-8725

svn path=/trunk/; revision=65104

9 years ago[NLS]
Kamil Hornicek [Wed, 29 Oct 2014 18:20:03 +0000 (18:20 +0000)]
[NLS]
- fix the code page value
- also fixes intl.cpl showing date format string in the code page list

svn path=/trunk/; revision=65103

9 years ago[KERNEL32]
Kamil Hornicek [Wed, 29 Oct 2014 16:59:44 +0000 (16:59 +0000)]
[KERNEL32]
- remove bunch of stray pragmas
- add a czech translation to stop debug spam reported in CORE-8720

svn path=/trunk/; revision=65102

9 years ago[BOOTDATA]
Kamil Hornicek [Wed, 29 Oct 2014 14:27:09 +0000 (14:27 +0000)]
[BOOTDATA]
- add metrics to classic themes (the flag 0xb0001 will result in a kinda esoteric value of type REG_QWORD)
- fixes switching from Lautus back to a classic theme
CORE-8718

svn path=/trunk/; revision=65100

9 years ago[DISK]
Pierre Schweitzer [Wed, 29 Oct 2014 11:31:19 +0000 (11:31 +0000)]
[DISK]
Actually, sysinternals used to release the source code of NTFSInfo (thanks Christoph!), so we know a bit more about the interface of the user FS request.
So, implement a bit more of the interface to validate it properly works (and so far, it does!)

CORE-8725

svn path=/trunk/; revision=65097

9 years ago[GDI32]
Timo Kreuzer [Tue, 28 Oct 2014 22:16:24 +0000 (22:16 +0000)]
[GDI32]
Improve functions in coord.c:
- Use GdiGetDcAttr() where appropriate
- Fix SetLastError() usage
- Add annotations
- improve variable naming
- Add some comments

svn path=/trunk/; revision=65093

9 years ago[DISK]
Pierre Schweitzer [Tue, 28 Oct 2014 21:59:57 +0000 (21:59 +0000)]
[DISK]
Get ready to enter into the 10th dimension... So:
- Implement support for IRP_MJ_FILE_SYSTEM_CONTROL. Yes... You read well! So, implemented a ScsiDiskFileSystemControl() function. The way it is added to the DriverObject is a big hack, class2 is not supposed to have such requests, so, we do it in its back. Fear!
- Stubplement the NtfsRussinovichism() function. This is the only function we're supposed to call with IRP MJ FSCTRL and with IRP MN USRFSRQST. Its purpose (when its implemented) is to reply back to the M. Russinovich tools (NFI & NTFSInfo) so that they can directly dump NTFS information without going into NTFS driver. They kind of bypass it.
We do all agree this is a ugly hack. But it exists in Windows, as these tools work in Windows. And it would be useful they actually work in ReactOS.
Soon, we'll be able to publish a book "ReactOS Internals" where we speak about undocumented FS controls to dump NTFS information to show how well our NTFS works ;-).

svn path=/trunk/; revision=65090

9 years ago[NET]
Eric Kohl [Tue, 28 Oct 2014 21:57:41 +0000 (21:57 +0000)]
[NET]
Display more password information in the NET USER command.

svn path=/trunk/; revision=65089

9 years ago[WIN32K]
Kamil Hornicek [Tue, 28 Oct 2014 21:38:26 +0000 (21:38 +0000)]
[WIN32K]
- addendum to revision 64877 which slightly changed UserDrawCaption's logic
- fixes window title being drawn over the icon

svn path=/trunk/; revision=65087

9 years ago[GDI32]
Timo Kreuzer [Tue, 28 Oct 2014 21:09:01 +0000 (21:09 +0000)]
[GDI32]
- Move functions to the appropriate source files, zap hacks.c, stubs.c, stubsa.c and stubsw.c (sorry for the noise, but this mess had to be cleaned up)

svn path=/trunk/; revision=65086

9 years ago[FASTFAT]
Pierre Schweitzer [Tue, 28 Oct 2014 20:39:42 +0000 (20:39 +0000)]
[FASTFAT]
For now, disable the VfatSetRenameInformation() asserts in trunk.
They can be reenabled for testing by commenting "#define NASSERTS_RENAME" out.

CORE-8721 #resolve #comment Fixed with r65085

svn path=/trunk/; revision=65085

9 years ago[NTFS]
Pierre Schweitzer [Tue, 28 Oct 2014 19:17:59 +0000 (19:17 +0000)]
[NTFS]
Finally, implement NtfsGetFreeClusters() which will just read the $Data stream from $BITMAP file record to get the amount of free clusters to allow estimating the free space on a volume.
The implementation is likely under-optimized... But wwell, the rest of the FSD is not better. Who talked about caching?! ;-)

Because pictures are more relevant than words in such case: http://www.heisspiter.net/~Pierre/rostests/NTFS_disksize.png

svn path=/trunk/; revision=65082

9 years agoMerge r65001 from shell-experiments branch:
Giannis Adamopoulos [Tue, 28 Oct 2014 17:32:01 +0000 (17:32 +0000)]
Merge r65001 from shell-experiments branch:
[user32]
- Properly notify the theme engine that the caption needs to be repainted on WM_SETICON
- Fixes a classic frame appearing when themes are enabled and we navigate to a different folder

svn path=/trunk/; revision=65077

9 years ago[WINLOGON]
Ged Murphy [Tue, 28 Oct 2014 17:07:47 +0000 (17:07 +0000)]
[WINLOGON]
- Stop the log from being spammed when the session is idle and no screensaver is set
- Also checking if my login still works :)

svn path=/trunk/; revision=65076

9 years ago[NTFS]
Pierre Schweitzer [Tue, 28 Oct 2014 10:26:47 +0000 (10:26 +0000)]
[NTFS]
ReleaseAttributeContext() is to be used out of mft.c
I believe that at some point, we're leaking memory...

svn path=/trunk/; revision=65068

9 years ago[GDI32]
Timo Kreuzer [Tue, 28 Oct 2014 09:06:33 +0000 (09:06 +0000)]
[GDI32]
Implement separate functions for all SelectObject cases.

svn path=/trunk/; revision=65067

9 years ago[DRIVERS]
Christoph von Wittich [Tue, 28 Oct 2014 08:15:49 +0000 (08:15 +0000)]
[DRIVERS]
don't use uninitialized variables

svn path=/trunk/; revision=65066

9 years ago[GDI32]
Timo Kreuzer [Tue, 28 Oct 2014 00:55:22 +0000 (00:55 +0000)]
[GDI32]
- Use GdiGetDcAttr instead of GdiGetHandleUserData where appropriate
- Add a few missing SetLastError()
- Fix return failure return value of GetBkColor()
- Improve order of operations in SelectObject (needs more fixing)

svn path=/trunk/; revision=65063

9 years ago[FAST486]
Aleksandar Andrejevic [Tue, 28 Oct 2014 00:53:02 +0000 (00:53 +0000)]
[FAST486]
Fix a typo in r65061.

svn path=/trunk/; revision=65062

9 years ago[FAST486][NTVDM]
Aleksandar Andrejevic [Tue, 28 Oct 2014 00:33:03 +0000 (00:33 +0000)]
[FAST486][NTVDM]
Get rid of Fast486Interrupt, since it's not used anywhere. Also we can now remove
workarounds for all of the bugs that it caused.
Implement the "single-instruction interrupt delay" for instructions that load the
stack segment only.

svn path=/trunk/; revision=65061

9 years ago[NtUser]
James Tabor [Tue, 28 Oct 2014 00:26:22 +0000 (00:26 +0000)]
[NtUser]
- Revert 64363. See CORE-7797.

svn path=/trunk/; revision=65060

9 years ago[FAST486]: We should invalidate the prefetch buffer *after* having fetched the BOP...
Hermès Bélusca-Maïto [Tue, 28 Oct 2014 00:19:48 +0000 (00:19 +0000)]
[FAST486]: We should invalidate the prefetch buffer *after* having fetched the BOP byte (but before calling its handler), not before fetching the byte :)

svn path=/trunk/; revision=65059

9 years ago[GDI32]
Timo Kreuzer [Tue, 28 Oct 2014 00:16:18 +0000 (00:16 +0000)]
[GDI32]
- Handle GDILoObjType_LO_ALTDC_TYPE in GdiGetDcAttr
- Rewrite GdiGetLDC using GdiGetDcAttr
- Implement GdiSetLDC

svn path=/trunk/; revision=65058

9 years ago[GDI32]
Timo Kreuzer [Mon, 27 Oct 2014 23:39:21 +0000 (23:39 +0000)]
[GDI32]
Forgot to commit this...

svn path=/trunk/; revision=65056

9 years ago[GDI32]
Timo Kreuzer [Mon, 27 Oct 2014 23:37:05 +0000 (23:37 +0000)]
[GDI32]
- Improve formatting
- Use more consistent variable names
- Remove unnecessary casts
- Add some annotations
- No intended code changes

svn path=/trunk/; revision=65055

9 years ago[KERNEL32]
Jérôme Gardou [Mon, 27 Oct 2014 22:05:51 +0000 (22:05 +0000)]
[KERNEL32]
 - Do not try to open memory events under the process object root directory.
CORE-8600 #resolve

svn path=/trunk/; revision=65054

9 years ago[GDI32]
Timo Kreuzer [Mon, 27 Oct 2014 20:53:59 +0000 (20:53 +0000)]
[GDI32]
Add Support routines for client objects. Will be used later. You might wonder why the code uses a lame hash table to link the client object handles to the user mode pointer, when it should be clear that a *client* object should have a user mode attribute, like other objects, that we can use, especially since that is the only real purpose of that object. Well, tell that the MS developer, who implemented client objects without a user mode attribute...

svn path=/trunk/; revision=65053

9 years ago[WIN32K]
Timo Kreuzer [Mon, 27 Oct 2014 20:40:11 +0000 (20:40 +0000)]
[WIN32K]
- Fail in NtGdiCreateClientObj, when the object type is not valid.
This is based on Windows behavior, only more strict. Windows allows to set the stock bit and reuse count, which is probably not what we want.

svn path=/trunk/; revision=65052

9 years ago[ADVAPI32]
Amine Khaldi [Mon, 27 Oct 2014 17:23:05 +0000 (17:23 +0000)]
[ADVAPI32]
* Update GetTrusteeForm{A,W}().
CORE-8540

svn path=/trunk/; revision=65050

9 years ago[ADVAPI32]
Amine Khaldi [Mon, 27 Oct 2014 17:00:41 +0000 (17:00 +0000)]
[ADVAPI32]
* Remove unused MAX_GUID_STRING_LEN and RECORD.
* Remove some unneeded forward declarations.
* Reorder ACEFLAG to reduce difference to Wine.
CORE-8540

svn path=/trunk/; revision=65045

9 years ago[ADVAPI32]
Amine Khaldi [Mon, 27 Oct 2014 16:30:45 +0000 (16:30 +0000)]
[ADVAPI32]
* Zap SidTable.

svn path=/trunk/; revision=65044

9 years ago[FASTFAT]
Pierre Schweitzer [Mon, 27 Oct 2014 13:39:03 +0000 (13:39 +0000)]
[FASTFAT]
Don't leak reference in case of share access failure.

svn path=/trunk/; revision=65043

9 years ago[FASTFAT]
Pierre Schweitzer [Mon, 27 Oct 2014 13:38:14 +0000 (13:38 +0000)]
[FASTFAT]
Add sanity checks in VfatSetRenameInformation() to make sure we don't leak any FCB reference

svn path=/trunk/; revision=65042

9 years ago[NTFS]
Pierre Schweitzer [Mon, 27 Oct 2014 12:35:58 +0000 (12:35 +0000)]
[NTFS]
Bugfixing... Part 10/X:
- Properly compute entry name length in CompareFileName()
- Also, in CompareFileName() properly handle the return of RtlCompareUnicodeString(); this is not RtlEqualUnicodeString()!
- In NtfsLookupFileAt(), don't return an error when we're done walking the path, it's a normal behavior

All these fixes allow our NTFS to go one step farther: it can open directory/files (reading files data remains untested so far) in root and in its subdirs. Which was broken previously.
The said bugfixes in action (and in image): http://www.heisspiter.net/~Pierre/rostests/NTFS_listing_subdir.png

svn path=/trunk/; revision=65041

9 years ago[ADVAPI32]
Thomas Faber [Mon, 27 Oct 2014 11:52:44 +0000 (11:52 +0000)]
[ADVAPI32]
- Hackfix CORE-8717 to stop 2nd stage from failing. Proper fix will be submitted to Wine.

svn path=/trunk/; revision=65040

9 years ago[NtUser]
James Tabor [Mon, 27 Oct 2014 02:11:08 +0000 (02:11 +0000)]
[NtUser]
- Fix default sizes for desktop resources. See CORE-8659.

svn path=/trunk/; revision=65039

9 years ago[FAST486]
Aleksandar Andrejevic [Mon, 27 Oct 2014 00:21:06 +0000 (00:21 +0000)]
[FAST486]
Don't leave the prefetch cache in a possibly invalid state if Fast486ReadLinearMemory
returns FALSE.

svn path=/trunk/; revision=65037

9 years ago[FAST486]
Aleksandar Andrejevic [Sun, 26 Oct 2014 23:37:54 +0000 (23:37 +0000)]
[FAST486]
Implement an (optional) instruction prefetch cache.
Implement the INVLPG instruction.

svn path=/trunk/; revision=65035

9 years ago[KERNEL32]
Pierre Schweitzer [Sun, 26 Oct 2014 21:09:07 +0000 (21:09 +0000)]
[KERNEL32]
Prevent a use-after-free issue in GetVolumeNameForVolumeMountPointW()

svn path=/trunk/; revision=65034

9 years ago[FASTFAT]
Pierre Schweitzer [Sun, 26 Oct 2014 20:29:00 +0000 (20:29 +0000)]
[FASTFAT]
Make sure the appropriate resource is exclusively acquired when playing with FCB references

svn path=/trunk/; revision=65033

9 years ago[FASTFAT]
Pierre Schweitzer [Sun, 26 Oct 2014 20:23:07 +0000 (20:23 +0000)]
[FASTFAT]
s/DeviceObject/DeviceExt/g

svn path=/trunk/; revision=65032

9 years ago[FASTFAT]
Pierre Schweitzer [Sun, 26 Oct 2014 20:20:42 +0000 (20:20 +0000)]
[FASTFAT]
Implement vfatGrabFCB() (which was defined but never implemented) for increasing the reference count on a FCB.
This will make debugging easier.

Dedicated to Thomas :-).

svn path=/trunk/; revision=65031

9 years ago[ADVAPI32]
Amine Khaldi [Sun, 26 Oct 2014 19:56:15 +0000 (19:56 +0000)]
[ADVAPI32]
* Update ConvertStringSidToSid{A,W}().
* Fixes some advapi32:security tests.
CORE-8540

svn path=/trunk/; revision=65030

9 years ago[RASDLG]
Amine Khaldi [Sun, 26 Oct 2014 19:43:01 +0000 (19:43 +0000)]
[RASDLG]
* Turkish translation update by Erdem Ersoy.
CORE-7861

svn path=/trunk/; revision=65029

9 years ago[NTFS] Also return the short file name to caller if available
Hervé Poussineau [Sun, 26 Oct 2014 19:10:39 +0000 (19:10 +0000)]
[NTFS] Also return the short file name to caller if available

svn path=/trunk/; revision=65028

9 years ago[NTFS] Prefer long file name when naming objects
Hervé Poussineau [Sun, 26 Oct 2014 19:10:17 +0000 (19:10 +0000)]
[NTFS] Prefer long file name when naming objects

We now always see the long file name of an object when browsing NTFS partitions.

svn path=/trunk/; revision=65027

9 years ago[NTFS] Correctly read indexes
Hervé Poussineau [Sun, 26 Oct 2014 19:10:04 +0000 (19:10 +0000)]
[NTFS] Correctly read indexes

This fixes (at least) an infinite loop when trying to mount some partitions.

svn path=/trunk/; revision=65026

9 years ago[NTFS] Fix some debug prints
Hervé Poussineau [Sun, 26 Oct 2014 19:09:52 +0000 (19:09 +0000)]
[NTFS] Fix some debug prints

svn path=/trunk/; revision=65025

9 years ago[FASTFAT]
Pierre Schweitzer [Sun, 26 Oct 2014 18:48:30 +0000 (18:48 +0000)]
[FASTFAT]
Acquire DirResource in DoQuery() before attempting to play with FCBs.

This is dedicated to Thomas ;-)

svn path=/trunk/; revision=65024

9 years ago[NTOS:SE]
Eric Kohl [Sun, 26 Oct 2014 18:39:58 +0000 (18:39 +0000)]
[NTOS:SE]
Remove the old access check code in SepAccessCheckEx and use the new code instead. The new access check code is a lot better than the old code, but it makes the boot and install fail. This is caused by some kernel objects which are accessed using insufficient access rights. Therefore I added a little hack that shows a warning when insufficient rights are granted for an object and access is granted anyway.

svn path=/trunk/; revision=65023

9 years ago[ADVAPI32]
Amine Khaldi [Sun, 26 Oct 2014 17:51:59 +0000 (17:51 +0000)]
[ADVAPI32]
* Update GetAclInformation().
CORE-8540

svn path=/trunk/; revision=65022

9 years ago[CRT]
Thomas Faber [Sun, 26 Oct 2014 17:32:00 +0000 (17:32 +0000)]
[CRT]
- Fix strlen/wcslen FPO specification. Spotted by Timo.
- Also add FPO info for memset, memchr, memmove/memcpy

svn path=/trunk/; revision=65021