Commit graph

68870 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto
2e25bf12d0 [NTOS]: Close an opened handle after usage.
svn path=/trunk/; revision=74584
2017-05-18 23:32:00 +00:00
Ged Murphy
4baf3f8e4f [FLTLIB]
- Implement FilterConnectCommunicationPort
- Add the remaining IOCTLs fltlib sends to the fltmgr

svn path=/trunk/; revision=74583
2017-05-18 22:06:49 +00:00
Eric Kohl
e53736f6e0 [INTL]
- Add custom draw function for the codepages listview.
- User gray text color for codepages that cannot be uninstalled.
CORE-13242

svn path=/trunk/; revision=74582
2017-05-18 21:56:24 +00:00
Thomas Faber
17c95d5279 [VIDEOPRT]
- Guard Ke386CallBios calls against concurrent execution.
CORE-13214

svn path=/trunk/; revision=74581
2017-05-18 21:29:24 +00:00
Giannis Adamopoulos
7fd7537957 [UXTHEME] -Remove a debug print that was never meant to be committed.
svn path=/trunk/; revision=74580
2017-05-18 17:53:33 +00:00
Giannis Adamopoulos
313744b524 [UXTHEME] -Apply some suggestions by Thomas.
svn path=/trunk/; revision=74579
2017-05-18 17:15:22 +00:00
Peter Hater
a1a782be93 [MSTSC] Addendum to r74577. CORE-13263
svn path=/trunk/; revision=74578
2017-05-18 08:57:26 +00:00
Peter Hater
2796bd5d20 [MSTSC] Fix BSOD when we can't acquire context from CryptoAPI. CORE-13263 #resolve
svn path=/trunk/; revision=74577
2017-05-18 08:47:30 +00:00
Thomas Faber
1338881e3b [BOOTLIB]
- Avoid uninitialized ComputeHash variable in BlImgLoadImageWithProgress2
CORE-13265 #resolve

svn path=/trunk/; revision=74571
2017-05-17 16:06:24 +00:00
Peter Hater
be8b65c8a9 [MSTSC] Fix parsing of settings. Patch by Stas'M. Thanks. CORE-13223
svn path=/trunk/; revision=74568
2017-05-17 10:53:54 +00:00
Peter Hater
988b6396aa [MSTSC] Send computer name as client name when available. Patch by Stas'M. Thanks. CORE-13237
svn path=/trunk/; revision=74567
2017-05-17 10:47:39 +00:00
Hermès Bélusca-Maïto
4ed5e28c51 [FORMAT]: Use a better variable type for the media flag.
svn path=/trunk/; revision=74566
2017-05-16 20:17:18 +00:00
Hermès Bélusca-Maïto
dddd4b38f6 [SHELL32]: Fix a FIXME: Recognize the media type for formatting, by calling GetDriveTypeW(). Based on what format.com does too.
svn path=/trunk/; revision=74565
2017-05-16 20:16:43 +00:00
Peter Hater
a31e72a3f9 [MSTSC] Fix unwanted change
svn path=/trunk/; revision=74564
2017-05-16 18:01:31 +00:00
Peter Hater
973f7314b1 [MSTSC] Fix adding module name and IP to logon packet. Patch by Stas'M. Minor modification by me. Thanks. CORE-13234
svn path=/trunk/; revision=74563
2017-05-16 17:56:51 +00:00
Hermès Bélusca-Maïto
819142c996 Addendum to r74559: specify 'void' function aka. doesn't take any parameter. In C, a function whose prototype is () means "take an arbitrary number of args".
svn path=/trunk/; revision=74562
2017-05-16 17:45:52 +00:00
Peter Hater
f5c285da13 [MSTSC] Enable taking settings folder using SHGetFolderLocation instead of using "c:\". Patch by Stas'M. Thanks CORE-13225
svn path=/trunk/; revision=74561
2017-05-16 17:37:48 +00:00
Peter Hater
450b66d358 [MSTSC] Fix image corruption in 24bpp mode CORE-13224
svn path=/trunk/; revision=74560
2017-05-16 17:32:19 +00:00
Peter Hater
44f1cf17c7 [ACPI] Implement creating volatile registry keys for ACPI tables CORE-12942
svn path=/trunk/; revision=74559
2017-05-16 17:26:12 +00:00
Peter Hater
8eede74d89 [MSTSC] Switch most MSTSC from internal "ssl" functions to CryptoAPI and implement/enable certificate functions CORE-13259
svn path=/trunk/; revision=74558
2017-05-16 17:20:56 +00:00
Peter Hater
688f2cec04 [MSTSC] Fix build
svn path=/trunk/; revision=74557
2017-05-16 17:03:20 +00:00
Peter Hater
e4bc2f39da [MSTSC] Bring MSTSC closer to latest rdesktop (1.83) CORE-13258
svn path=/trunk/; revision=74556
2017-05-16 16:37:29 +00:00
Eric Kohl
4021832267 [INTL]
Advanced page: Show code pages again.
- Use SetupFindFirstLine and SetupFindNextLine to enumerate all code pages.
- Use heap memory functions instead of global memory functions.
- Get rid of TCHAR.
- Rename LPCPAGE to PCPAGE.
- Hack: Do not fail if EnumSystemCodePages returns FALSE. 

svn path=/trunk/; revision=74555
2017-05-15 20:02:48 +00:00
Giannis Adamopoulos
6ac34f176c [UXTHEME] -ThemeDrawCaptionText: Try to avoid a heap allocation when getting the window caption.
svn path=/trunk/; revision=74552
2017-05-15 16:05:14 +00:00
Giannis Adamopoulos
98917d7d98 [UXTHEME] -Simplify ThemeDrawCaptionText.
svn path=/trunk/; revision=74551
2017-05-15 15:34:43 +00:00
Alex Ionescu
ba88179c67 BL Library now works 100% in paging, protected mode. A picture is worth a thousand commits: http://i.imgur.com/Zx2nQ6x.jpg
[BOOTLIB]: Add support for protocol open/close/lookup while paging and protected mode is enabled.
[BOOTLIB]: Implement support for dozens of UEFI functions while under protected mode.
[BOOTLIB]: Fix bugs in existing UEFI functions which were switching to _protected_ mode instead of _real mode_ before making the UEFI call.
[BOOTLIB]: Free dynamic descriptor in MmMdFreeDescriptor.
[BOOTLIB]: Implement BlHtDelete.
[BOOTLIB]: Implement re-initialize-all path in DsppInitialize.
[BOOTLIB]: Fix small bug in BlDisplayInvalidateOemBitmap
[BOOTLIB]: Fix bigger bug in BlDisplayGetOemBitmap :)

svn path=/trunk/; revision=74546
2017-05-15 01:38:49 +00:00
Alex Ionescu
fe15b28371 Virtual memory works baby! Virtual Heap at 0x80000000 fully enabled. Next up, EFI Protocols with Paging Enabled.
[BOOTLIB]: Fix dumb bug in BlMmIsTranslationEnabled which would always return FALSE.
[BOOTLIB]: Fix dumber bug in MmDefInitializeTranslation which was freeing the page directories and self-map pages even in the success path. Causing us to zero out paging structures...
[BOOTLIB]: Cleanup and extend MmMdDbgDumpList for internal use, and add MmMdListPointerToName as another debug function.
[BOOTLIB]: Add a few more checkpoints in unimplemented paths.

svn path=/trunk/; revision=74545
2017-05-14 16:07:21 +00:00
Pierre Schweitzer
4875f5476e [MUP]
Split MUP into two parts; MUP on one side, DFS on the second side.
This will allow using headers in other parts

svn path=/trunk/; revision=74544
2017-05-14 10:15:43 +00:00
James Tabor
5e9d1bc628 [NtGDI]
- Implement internal functions for setting and retrieving DC origin. Related to CORE-13110.
- Code fix ups.

svn path=/trunk/; revision=74543
2017-05-14 01:00:27 +00:00
Alex Ionescu
d4534e81e1 [BOOTLIB]: Implement MmMdTruncateDescriptors
[BOOTLIB]: Implement MmPaTruncateMemory and call it during paging initialization to remove > 4GB memory.c
[BOOTLIB]: Implement BlpMmInitializeConstraints if those BCD options are used.

svn path=/trunk/; revision=74542
2017-05-14 00:39:30 +00:00
Alex Ionescu
920b985227 [BOOTLIB]: Complete implementation of MmMdRemoveRegionFromMdlEx
svn path=/trunk/; revision=74541
2017-05-14 00:11:48 +00:00
Thomas Faber
b6e4109ff1 [MKHIVE]
- Fail when something goes wrong instead of pretending everything's peachy.
CORE-13241 #resolve

svn path=/trunk/; revision=74540
2017-05-13 22:47:59 +00:00
Timo Kreuzer
698c2abb16 [NTOSKRNL] Improve S-List-Fault detection in KiTrap0EHandler to handle usermode faults as well.
svn path=/trunk/; revision=74539
2017-05-13 20:07:39 +00:00
Thomas Faber
4185903012 [CMAKE]
- Only call mkhive once, as it always generates all 6 binary hives (and if you don't give it all inf files, some of the hives will end up empty).
- Remove no longer needed dependency of efisys on bcd_hive
CORE-13241

svn path=/trunk/; revision=74537
2017-05-13 19:54:51 +00:00
Alex Ionescu
29d82352a3 [BOOTLIB]: Separate free and zero memory, and code vs data runtime data, as newer bootlibs do.
[BOOTLIB]: Fix bugs in MmMdpHasPrecedence and cleanup.
[BOOTLIB]: Fix bug in MmMdFreeDescriptor.
[BOOTLIB]: Cleanup MmMdpSaveCurrentListPointer.
[BOOTLIB]: Fix bug in MmMdpCoalesceDescriptor.
[BOOTLIB]: Fix multiple bugs in MmMdAddDescriptorToList, and cleanup.

svn path=/trunk/; revision=74536
2017-05-13 19:32:26 +00:00
Mark Jansen
c7afd6f90c [APPHELP][SHIMLIB] Forward some events to loaded shims. CORE-11329
svn path=/trunk/; revision=74535
2017-05-13 18:49:27 +00:00
Mark Jansen
b4e46f9021 [NDK][RTL] Make the Name argument in RtlQueryEnvironmentVariable_U const.
svn path=/trunk/; revision=74534
2017-05-13 17:26:59 +00:00
Giannis Adamopoulos
e4832e1f99 [UXTHEME] -Fix the tab background pattern hack when the background pattern is smaller than the window that we are trying to paint. CORE-13147, CORE-13192.
There is still a bug where the pattern doesn't change after a theme change.

svn path=/trunk/; revision=74522
2017-05-12 12:44:49 +00:00
Mark Jansen
3305b84402 [SHELL32] Add stub for SHEnumerateUnreadMailAccountsW, needed by Thunderbird. Found by Joachim Henze. CORE-13229
svn path=/trunk/; revision=74521
2017-05-11 20:20:47 +00:00
Alex Ionescu
676adf3c06 Fully working x86 paging support!
[BOOTLIB]: Fix a critical bug in BlpArchSwitchContext which was not switching to Firmware mode once paging was enabled.
[BOOTLIB]: Fix a critical bug in OslMain which was incorrectly setting BL_LIBRARY_INITIALIZATION_COMPLETED instead of BL_LIBRARY_FLAG_REINITIALIZE_ALL and causing all sorts of failure paths.
[BOOTLIB]: MmDefInitializeTranslation now turns on paging.
[BOOTLIB]: Implement TrpGenerateMappingTracker and BlpArchEnableTranslation
[BOOTLIB]: BlMmMapPhysicalAddressEx now works with paging enabled, and correctly finds mapped memory to use from the virtual MDLs.
[BOOTLIB]: MmPapAllocateRegionFromMdl now handles virtual allocations from MmMdlMappedUnallocated.
[BOOTLIB]: MmPapAllocatePagesInRange now handles BlMemoryKernelRange (KSEG0) allocations.
[BOOTLIB]: MmMdFindSatisfyingRegion now handles virtual descriptors as well, and handles alignment better.

svn path=/trunk/; revision=74519
2017-05-10 14:38:34 +00:00
Colin Finck
a366e71f50 [PRINTING]
SetDefaultPrinterW needs to fail with ERROR_INVALID_PRINTER_NAME if the input parameter is invalid. Also add a test for that.

svn path=/trunk/; revision=74518
2017-05-10 13:03:08 +00:00
Giannis Adamopoulos
643b7c9da9 [SHELL32_APITEST] -Add tests for Control_RunDLLW.
svn path=/trunk/; revision=74517
2017-05-10 10:06:02 +00:00
Hermès Bélusca-Maïto
3acad0e9e5 [USETUP]: Fix the primary/extended partitions creation checks introduced in r63392 : indeed this is if there are *already* 4 (primary) partitions in the table that we cannot create new primary/extended partitions.
Otherwise with the old (broken) checks, we allowed creating more than 4 partitions, and then we overflowed over memory and corrupted the partition list structures.

svn path=/trunk/; revision=74516
2017-05-09 22:09:06 +00:00
Hermès Bélusca-Maïto
af645ee7a2 [FREELDR]: Report the correct number of BIOS (hard) disk drives detected, that is, without any possible extra boot drive that went enumerated afterwards.
This fixes the list of disks enumerated in HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\MultifunctionAdapter\0\DiskController\0\DiskPeripheral\
and we now behave in this regards similarly to Windows 2003 & co.
I thank Lesan Ilie for reporting & testing, and Serge Gautherie and Peter Hater for reviewing.
This fixes a bug introduced in commit r59079.
CORE-13131

svn path=/trunk/; revision=74515
2017-05-09 19:33:46 +00:00
Mark Jansen
423102807d [SDK] Add enum for PEB.AppCompatFlagsUser
svn path=/trunk/; revision=74514
2017-05-09 18:15:22 +00:00
Colin Finck
5b6e082869 [PRINTING]
- Implement GetDefaultPrinterA/W and SetDefaultPrinterA/W in winspool.drv. Also add tests for these functions.
- Set our "Dummy Printer on LPT1" as the default printer in the user registry.
- Return meaningful values for DeviceNotSelectedTimeout and TransmissionRetryTimeout in PRINTER_INFO_5 in localspl.

The Print dialog now preselects "Dummy Printer on LPT1" in all applications.
One more task done from the list at https://reactos.org/wiki/Printing :)

svn path=/trunk/; revision=74513
2017-05-09 15:44:42 +00:00
Hermès Bélusca-Maïto
f06734e55d [USETUP]: Improve the bootsector validity check performed in IsThereAValidBootSector:
- Check for the first 3 bytes (and not 4) of the bootsector to not be zero (that's our criterium for a "valid instruction"). Therefore, a bootsector starting with "00 00 00 xx" (with xx the first byte of a volume identifier) is detected as invalid (because the BIOS won't be able to run it anyways) and therefore, needs to be overwritten.
- Check that its last 2 bytes are the valid 0xAA55 signature.
These improvements were suggested by Serge Gautherie and Peter Hater.
CORE-4870 CORE-12672 CORE-13188
- Move a DPRINT1 around.

svn path=/trunk/; revision=74512
2017-05-09 15:31:53 +00:00
Giannis Adamopoulos
16e06b89aa [DESK.CPL] -Addendum to 74506 which was a bit rushed. Make it possible to apply a theme that was opened by double click. Also add the active theme in the list of themes if it was not enumerated in the themes directory.
svn path=/trunk/; revision=74511
2017-05-09 08:13:49 +00:00
Thomas Faber
a465b60e7f [SHELL32]
- Fix AddCommasW

svn path=/trunk/; revision=74510
2017-05-09 07:45:30 +00:00
Hermès Bélusca-Maïto
0c9cd421ee [DISK]: Small fixes:
- Check for malformed disk identifier, which must be at least 9 WCHARs long (as done by disk_new);
- Prevent possible memory leaks (missing ExFreePool's) + closing registry key.
Investigated by Lesan Ilie during tests; as part of CORE-13131.
- Make one of our hacks more readable (by me).
(We also note that this driver uses the ExAllocate/FreePool functions in the old-school way).

svn path=/trunk/; revision=74509
2017-05-08 21:34:07 +00:00