Commit graph

59299 commits

Author SHA1 Message Date
Amine Khaldi 5a93a71d04 [WIN32K]
* Workaround for CORE-8525, CORE-6023, CORE-7735 and CORE-8635.
* Brought to you by V and Amine. Thanks to Timo and Jerome for the reviews.
CORE-8525 CORE-6023 CORE-7735 CORE-8635 #comment Please retest with r64777 or later.

svn path=/trunk/; revision=64777
2014-10-17 07:59:29 +00:00
Pierre Schweitzer 3fa669eddb [NTFS]
Bugfixing... Part 3/X:
- Really release the allocated memory in NtfsFindFileAt() and NtfsLookupFileAt(). Don't attempt to release caller pointer!

This fixes crashes on directory enumeration failure. Even though this latter still doesn't work.

svn path=/trunk/; revision=64776
2014-10-17 06:55:52 +00:00
Hermès Bélusca-Maïto 13b500f258 [FAST486]: Use psh/poppack.h here too.
svn path=/trunk/; revision=64775
2014-10-17 02:31:14 +00:00
Hermès Bélusca-Maïto a12d0f001f [FAST486]: rename some structs and use #include <pshpack/poppack.h> for portability purposes.
svn path=/trunk/; revision=64774
2014-10-17 02:29:48 +00:00
Hermès Bélusca-Maïto f9278312d9 [FAST486]: Do not call RtlCopyMemory for copying few bytes (2 and 4).
svn path=/trunk/; revision=64773
2014-10-16 21:48:18 +00:00
Thomas Faber 9bc2c3ba15 [NPFS]
- Don't return a canceled IRP from NpRemoveDataQueueEntry.

svn path=/trunk/; revision=64772
2014-10-16 21:43:03 +00:00
Pierre Schweitzer 104149a180 [NTFS]
Bugfixing... Part 2/X:
- Please welcome yet another structure in our NTFS driver... The INDX buffer which is used for non resident index entries. Doc (incomplete) here: http://bos.asmhackers.net/docs/filesystems/ntfs/INDX.html
- Make use of it in NtfsFindMftRecord() to replace some totally obscure code.
- Add some asserts to verify we read somehow what we expect. One of the assert is not working properly... Hum! Need to find out why.

We don't go any farther so far. Good news though: a FIXME has been replaced by another FIXME.
NB: This would deserve being ported to FreeLDR to fix the same FIXME.

svn path=/trunk/; revision=64771
2014-10-16 21:37:27 +00:00
Timo Kreuzer 08a4791b4a {NTOSKRNL]
Handle int 0x2c (assertion failure) in KDBG by breaking into the debugger instead of ignoring it and pretending it was handled. Now NT_ASSERT works on GCC builds as well. (As good as things work in KDBG...)

svn path=/trunk/; revision=64770
2014-10-16 21:33:32 +00:00
Jérôme Gardou 6b2a5b98f0 [TCPIP]
- Fix potential NULL pointer dereference

svn path=/trunk/; revision=64769
2014-10-16 20:15:33 +00:00
Jérôme Gardou e9067c2bda [INCLUDE/IDL]
- Properly mark some arguments as [out] only for wlansvc interface.

svn path=/trunk/; revision=64768
2014-10-16 20:15:26 +00:00
Jérôme Gardou cac835f291 [USERENV]
- Add proper stubs for GetAppliedGPOList[A,W]
CORE-8636

svn path=/trunk/; revision=64767
2014-10-16 20:15:13 +00:00
Jérôme Gardou 84ff0ecbd0 [PSDK]
- Add GetAppliedGPOList[A,W] declarations
CORE-8636

svn path=/trunk/; revision=64766
2014-10-16 20:14:25 +00:00
Pierre Schweitzer 682e176eca [NTFS]
Bugfixing... Part 1/X:
- FixupUpdateSequenceArray() returns a NTSTATUS, so properly handle it.
- Actually... Attributes name can be unicode in case of a file name, but it can also be ansi, for streams name... So, don't force UNICODE_STRING, it causes more troubles than it solves.

So, now, we really progress in reading directory. Instead of finding no files because we improperly read attributes, we now corrupt memory somewhere and crash ReactOS.

svn path=/trunk/; revision=64765
2014-10-16 20:05:36 +00:00
Amine Khaldi b5e8d798e9 [WIN32K]
* Zap EGAColorsTriples and DefLogPaletteTriples.
* Remove extra () around a comparison.

svn path=/trunk/; revision=64764
2014-10-16 19:14:52 +00:00
Thomas Faber e67bbc79a9 [NPFS]
- Don't truncate pipe name in the RootPipe case in NpCreateFcb. Found by Windows's RtlInsertUnicodePrefix implementation -- which might indicate that ours is broken.

svn path=/trunk/; revision=64763
2014-10-16 16:57:11 +00:00
Thomas Faber 32f8a44f8e [NPFS]
- Don't call RtlEqualUnicodeString (paged code) while holding a spin lock. Powered by Driver Verifier.

svn path=/trunk/; revision=64762
2014-10-16 16:40:13 +00:00
Thomas Faber c38e07c128 [NPFS]
- Use NpAcquire*Vcb/NpReleaseVcb instead of using NpVcb directly
- CaseInsensitiveIndex is integer, not boolean
- Minor fixes involving unnecessary casts and magic numbers

svn path=/trunk/; revision=64761
2014-10-16 16:36:17 +00:00
Jérôme Gardou a28fa3fdf0 [SPEC2DEF]
- Fix typo: PRix64 --> PRIx64
 - Use GUID to trace 'int128' arguments, as that's what they almost always are.

svn path=/trunk/; revision=64760
2014-10-16 09:23:33 +00:00
Aleksandar Andrejevic 66202b4312 [NTVDM]
Fix the IRQ priority and routing in PicGetInterrupt.


svn path=/trunk/; revision=64759
2014-10-16 01:41:24 +00:00
Timo Kreuzer cb9e70d5f7 [RunTmChk]
Fix a typo, remove a spare int 3, add file headers with BSD license

svn path=/trunk/; revision=64758
2014-10-15 22:44:26 +00:00
Timo Kreuzer 75c6300b37 [NTOSKRNL]
Don't use an uninitialized variable in MmArmAccessFault (Alex, please review). Brought to you by MSVC runtime checks.

svn path=/trunk/; revision=64757
2014-10-15 22:03:50 +00:00
Timo Kreuzer 911faa3a6f [RunTmChk]
Implement a simple version of RunTmChk.lib for MSVC runtime check support, which can also be used in kernel mode. This one is good enough to compile ntoskrnl with it.

svn path=/trunk/; revision=64756
2014-10-15 21:54:12 +00:00
Hermès Bélusca-Maïto e5e46c1db5 [NTVDM]: Arch, please do *not* reinitialize twice the keyboard and the video (first time before initializing the BDA, second time after), otherwise some programs won't display correct things!!
svn path=/trunk/; revision=64755
2014-10-15 21:31:51 +00:00
Pierre Schweitzer a32e6674f9 [NTFS]
- Implement NtfsGetNameInformation()
- Implement NtfsGetDirectoryInformation()
- Implement NtfsGetFullDirectoryInformation()
- Implement NtfsGetBothDirectoryInformation()
- Implement NtfsQueryDirectory() which makes use of all the functions upper + all the previous fixes to make it able to look for a file using WC and file entry index

This is supposed to bring directory enumeration in line on NTFS volumes. BUT, there's a bug at some point which makes it fail (or my test volume is corrupted :-P (which is unlikely (Scheme, get out of this commit message!))). Will look into it later on. Committing so far because it's quite major work anyway.
More to follow~

svn path=/trunk/; revision=64754
2014-10-15 21:02:05 +00:00
Pierre Schweitzer 560d00e49b [NTFS]
Implement NtfsFileFlagsToAttributes() to fix some of the attributes of the MFT to make them usable by ReactOS.
Would deserve a double-check

svn path=/trunk/; revision=64753
2014-10-15 20:36:30 +00:00
Pierre Schweitzer d71653b9cb [NTFS]
Implement NtfsDateTimeToFileTime() which convert epoch time (1970) to Windows time (1601) 

svn path=/trunk/; revision=64752
2014-10-15 20:23:47 +00:00
Amine Khaldi 096445bc16 [TRANSLATIONS]
* Turkish translations update by Erdem Ersoy.
CORE-7861

svn path=/trunk/; revision=64750
2014-10-15 17:46:49 +00:00
Thomas Faber 96b8f1971f [PSDK]
- Use macro version of RtlUlonglongByteSwap in winternl.h because using the fastcall version causes stack corruption
CORE-8632 #resolve

svn path=/trunk/; revision=64749
2014-10-15 16:38:13 +00:00
Hermès Bélusca-Maïto 724f87c880 [NTVDM]: Implement double-width and double-height separately; used when eg. an app displays in 640*180, etc...
svn path=/trunk/; revision=64748
2014-10-15 00:42:19 +00:00
Hermès Bélusca-Maïto 1fd3e7e17e [NTVDM]: Zero-fill memory with RtlZeroMemory (that exists also in NT mode), and use sizeof(object) instead of sizeof(type_of_object).
svn path=/trunk/; revision=64747
2014-10-14 22:46:40 +00:00
Hermès Bélusca-Maïto 9718330254 Forgot this file :)
svn path=/trunk/; revision=64746
2014-10-14 21:53:07 +00:00
Hermès Bélusca-Maïto 2859d00536 [FAST486]
- Invalid extended opcodes get a special handler, so that we are not anymore obliged to check for NULL before running an extended opcode.
- To quickly retrieve extended opcode numbers, add their numbers in regard to their handlers.

svn path=/trunk/; revision=64745
2014-10-14 21:51:00 +00:00
Pierre Schweitzer 4102165fea [NTFS]
Also return the index of the entry which was found

svn path=/trunk/; revision=64744
2014-10-14 20:34:38 +00:00
Pierre Schweitzer 1042f3d24d [NTFS]
- Also make NtfsFindMftRecord() return the name of the record it found
- Implement support for entry enumeration (from 0 or not) in NtfsFindMftRecord()
- Experimental fix in NtfsLookupFileAt(), look for the attribute using the name of the record, and not the full path
- Implement NtfsFindFileAt() which is used to look for a file/directory using WC in a given directory

svn path=/trunk/; revision=64743
2014-10-14 19:11:49 +00:00
Pierre Schweitzer f8c828f21c [NTFS]
- Prepare (only prototype so far) NtfsFindMftRecord() for directory search & enumeration with WC.
- Modify CompareFileName() so that comparisons can be done with or without WC.
- Fix NtfsLookupFileAt() accordingly 

svn path=/trunk/; revision=64742
2014-10-14 18:41:38 +00:00
Hermès Bélusca-Maïto f4e263796c [NTVDM]
- Call CpuUnsimulate in EmulatorTerminate so that we really stop the CPU, before stopping the rest of the VM.
- We can reset CpuRunning to TRUE in CpuSimulate *only* if the VM is still running AND the CpuCallLevel is strictly positive (>=1 means, CPU halted or running; ==0 means, CPU stopped).

svn path=/trunk/; revision=64741
2014-10-14 00:14:56 +00:00
Hermès Bélusca-Maïto 499561d86c [FAST486]: Rename fast486dbg.c to debug.c as per opular demand :P
svn path=/trunk/; revision=64740
2014-10-13 22:08:08 +00:00
Hermès Bélusca-Maïto db6be8948b [FAST486]
- Add doc for INT instructions,
- Move debug functions to an appropriate file.

svn path=/trunk/; revision=64739
2014-10-13 21:49:01 +00:00
Amine Khaldi 628b200fa4 [CRT]
* Update fwrite().
* Fixes some msvcrt:file tests.
CORE-8540

svn path=/trunk/; revision=64738
2014-10-13 19:48:08 +00:00
Hermès Bélusca-Maïto 0c4ba28402 [NTVDM]: it is always interesting to dump the full CPU state when an exception occurs.
svn path=/trunk/; revision=64737
2014-10-13 18:51:40 +00:00
Jérôme Gardou 4703670a3c [ADVAPI32_APITESTS]
- Add a few tests for DuplicateTokenEx

svn path=/trunk/; revision=64736
2014-10-13 18:49:09 +00:00
Jérôme Gardou 8b80957dae [NTOS/SE]
- Use the authentication ID to determine if a token represents a child of the current process.
CORE-8631 #resolve #comment the installer now works fine, but chrome fails to start

svn path=/trunk/; revision=64735
2014-10-13 18:47:44 +00:00
Eric Kohl 4173674a62 [SETUPAPI]
Load a property sheet extension dll only once, otherwise we might leak module handles.

svn path=/trunk/; revision=64734
2014-10-13 18:31:55 +00:00
Amine Khaldi 6d6e0cda0c [CRT]
* Update free_fd().
* Fixes some msvcrt:file tests.
CORE-8540

svn path=/trunk/; revision=64733
2014-10-13 18:08:34 +00:00
Pierre Schweitzer 2598a46b01 [NTFS]
So far, keep our NTFS read-only. Booh, that's sad! *sob*. I know.

svn path=/trunk/; revision=64732
2014-10-13 17:57:25 +00:00
Amine Khaldi 5f83d34467 [CRT]
* Update setvbuf() and ungetc().
* Fixes some msvcrt:file tests.
CORE-8540

svn path=/trunk/; revision=64731
2014-10-13 17:50:17 +00:00
James Tabor e9aecdf259 [Win32k]
- Remove code that breaks API SetActiveWindow tests. See CORE-7447.
- Dedicated to Victor Martinez Calvo.

svn path=/trunk/; revision=64730
2014-10-13 17:15:04 +00:00
Jérôme Gardou 63dff05e61 Arch, stop screwing up your commits.
svn path=/trunk/; revision=64729
2014-10-13 16:25:23 +00:00
Jérôme Gardou 622ae3a606 [CMAKE]
- Also give a base address to d3dwine.dll

svn path=/trunk/; revision=64728
2014-10-13 16:21:48 +00:00
Jérôme Gardou d554ce375f [WINED3D]
- Fix build: This is wha happens when youknow you should perform a clean build but don't.

svn path=/trunk/; revision=64726
2014-10-13 16:07:46 +00:00