Commit graph

74028 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto 06d4fce5ee
[NTOS:MM] Some fixes for NtCreatePagingFile().
- Correctly probe the FileName user pointer before capturing its contents.
- A paging file name with zero length is invalid too.
- Remember (TODO!) in the code that the lower bounds of the Safe*Size values
  need to be checked too!
2019-01-28 22:22:56 +01:00
Eric Kohl dda77704dd [SNDVOL32] Play the default sound when the volume or balance trackbar of the master line has been changed by the user. 2019-01-28 22:05:23 +01:00
Thomas Faber 64d48843d7
[FREETYPE] Handle allocation failures in our stack-saving hacks. CORE-15642
Running out of pool is likely at least during kmtest:ExPools.
There is a chance of crashing when dereferencing these null pointers -- but
worse, there's also a chance of overwriting the IVT or BDA if a VDM BIOS
call is in progress, which can lead to crashes in non-obvious places later.
2019-01-28 14:31:49 +01:00
Eric Kohl e2d8e588bb [SNDVOL32] Do the volume trackbar calculation like it is done in mmsys.cpl. 2019-01-28 00:59:33 +01:00
Bișoc George dfa5ff553b [OSK] Initial implementation of a menu (#1301) 2019-01-27 17:35:26 +01:00
Denis Malikov bcfd350e9f [APPCOMPAT] Run apps in compatibility with 6.1 SP1 (7 SP1), 6.2 (8) and 6.3 (8.1) (#1273) 2019-01-27 17:30:37 +01:00
Hermès Bélusca-Maïto b6c49bdff2
[MOUNTMGR] Fix MSVC build after commit 53abbb06. 2019-01-27 16:09:54 +01:00
Katayama Hirofumi MZ e7b222f4c5 [WIN32SS][NTGDI] Delete magic number 565 2019-01-27 20:54:19 +09:00
Katayama Hirofumi MZ cc75016389
[WIN32KNT_APITEST] Check bit pattern of pvBits (#1315)
CORE-15657
2019-01-27 20:25:15 +09:00
Thomas Faber c8f69c63de [WIN32KNT_APITEST] Test large buffers without relying on stack layout. (#1314)
CORE-15657
2019-01-27 20:08:52 +09:00
Katayama Hirofumi MZ 1cac3fbe63
[WIN32SS][NTGDI] Fix NtGdiSetBitmapBits in buffer size (#1313)
Let NtGdiSetBitmapBits function fail if buffer size was greater than 564. CORE-15657
2019-01-27 17:44:34 +09:00
Katayama Hirofumi MZ 1ad9a1deab
[WIN32KNT_APITEST] NtGdiSetBitmapBits: Add tests for max buffer size 2 (#1312)
Improve NtGdiSetBitmapBits testcase again and again. CORE-15657
2019-01-27 17:17:09 +09:00
Katayama Hirofumi MZ e80e205156
[WIN32KNT_APITEST] NtGdiSetBitmapBits: Add tests for maximum buffer size (#1311)
Improve NtGdiSetBitmapBits testcase by adding tests for maximum buffer size. CORE-15657
2019-01-27 16:35:53 +09:00
Katayama Hirofumi MZ 6b8f9c0c2b
[WIN32SS][NTGDI] Alignment probe change in NtGdiSetBitmapBits (#1309)
Don't check WORD alignment in NtGdiSetBitmapBits to match Win2k3 behaviour. CORE-15657
2019-01-27 16:11:23 +09:00
Katayama Hirofumi MZ 29795a2d72
[WIN32SS][NTGDI] Improve UnsafeGetBitmapBits and NtGdiGetBitmapBits (#1308)
CORE-15657
2019-01-27 15:51:33 +09:00
Katayama Hirofumi MZ 0aa21c3366
[WIN32SS][NTGDI] Fix UnsafeSetBitmapBits (#1310)
CORE-15657
2019-01-27 15:32:52 +09:00
Hermès Bélusca-Maïto 53abbb06b5
[MOUNTMGR][MUP] Use global definition of INIT_FUNCTION/INIT_SECTION (Addendum to 71fefa32). 2019-01-27 02:40:11 +01:00
Hermès Bélusca-Maïto 19f6fc2525
[MVDM] Use again the correct CMAKE_C_COMPILER to pre-process the ASM code (addendum to 09c06a2f). 2019-01-27 02:40:10 +01:00
Hermès Bélusca-Maïto 6b1e1df5c9
[FREELDR] Re-integrate the ASM files (and corresponding C code) in MSVC builds, that were previously compiled just for GCC builds. (#1224)
- Multiboot support added back in FreeLdr MSVC builds so that it can be
  booted using e.g. GRUB. See CORE-15563.

- Re-introduce the disk drive mapper code.
2019-01-27 00:51:26 +01:00
Hermès Bélusca-Maïto ed83552229
[FREELDR] Introduce a MSVC "linker script" file that centralizes the commands for defining section-limit symbols, and the ordering and merging of PE sections, and the necessary CMake code to use it. (#1224)
As the MSVC linker alone doesn't permit such control, the file uses
ASM language (C can alternatively be used), together with extra linker
command-line switches.

It is pre-processed 3 times: first for generating the ASM code, second
for the C code and the third time for generating the linker response
file.

In our case, the ASM code defines the __bss_start__ and __bss_end__
symbols that allow us to find the limits of the .bss section (which is
by the way automatically appended to the .data section by the MSVC linker).
The C code is used to specify the list of linker switches that can be
passed through the `#pragma comment(linker, ...)' directive (the can be
alternatively specified in the linker response section).
Finally the linker response section contains all the linker switches
that cannot be specified with the `#pragma comment(linker, ...)'
directive.

Using all this we can recycle the BSS initialization code, that has been
written originally for GCC only, also for the MSVC builds.

Also, remove the outdated .text16 section merging.
2019-01-27 00:51:25 +01:00
Hermès Bélusca-Maïto aaee856cea
[FREELDR] Minor code maintenance.
- Whitespace;

- Explicitly use string pooling (option "/GF"), so that even if it's
  used globally in the main ReactOS CMAKE file or not, we still have it
  there, because we are quite size-constrained;

- Rename the source lists (OK, we understand it's _COMMON_ ...);
- Remove redundant double inclusion of linuxboot.c;
- In the 'freeldr_common' static library, compile the ASM code first.
2019-01-27 00:51:19 +01:00
Hermès Bélusca-Maïto 0ee02b2c4d
[SDK/INCLUDE] Fix the .code16 macro definition for MASM/ML.
Modify the .code16 macro so that the 16-bit code segment can get a
chance to be correctly merged with other (possibly 32-bit) code
segments, without keeping generating multiple .text segments with
different attributes and generating the corresponding LNK4078 warning.

This fixes the warning when compiling NTOSKRNL on MSVC:
"v86.S.obj : warning LNK4078: multiple '.text' sections found with different attributes (C0520040)".
2019-01-27 00:51:00 +01:00
Amine Khaldi c90b53d5ad [MSADP32.ACM] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:18:47 +01:00
Amine Khaldi 3ea8528909 [MSACM32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:18:13 +01:00
Amine Khaldi 127d443593 [MMDEVAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:17:35 +01:00
Amine Khaldi 31d268d584 [MMDEVAPI] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:17:08 +01:00
Amine Khaldi 0a904ca409 [MLANG_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:16:35 +01:00
Amine Khaldi ccc3eeaea8 [MLANG] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:15:35 +01:00
Amine Khaldi bca17f6bf6 [MCIWAVE] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:15:03 +01:00
Amine Khaldi a9e6e64fa5 [MAPI32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:14:31 +01:00
Amine Khaldi dd78a4bf83 [MAPI32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:13:59 +01:00
Amine Khaldi 2ea897da44 [LOCALUI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:13:30 +01:00
Amine Khaldi 792a2286d8 [JSPROXY] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:12:47 +01:00
Amine Khaldi 20f9fb6150 [JSCRIPT_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:12:15 +01:00
Amine Khaldi 660f7b9090 [JSCRIPT] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:11:40 +01:00
Amine Khaldi 9a0babd145 [INETMIB1_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:11:11 +01:00
Amine Khaldi 4973a53fc3 [INETCOMM] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:10:33 +01:00
Amine Khaldi c0deab6d9d [IMM32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:10:01 +01:00
Amine Khaldi 2653fad683 [IMAADP32.ACM] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:09:32 +01:00
Amine Khaldi ec33091a1d [IEFRAME] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:08:54 +01:00
Amine Khaldi d03e237837 [IMAGEHLP_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:08:26 +01:00
Amine Khaldi bd88475d94 [ICCVID] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:07:54 +01:00
Amine Khaldi 99138ae93e [HLINK_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:07:24 +01:00
Amine Khaldi 07e4452656 [HLINK] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:06:56 +01:00
Amine Khaldi 279107d5cf [HID_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:06:23 +01:00
Amine Khaldi 066d754700 [HHCTRL] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:05:48 +01:00
Katayama Hirofumi MZ f9037bd33f
[WIN32KNT_APITEST] Improve NtGdiSetBitmapBits testcase more and more (#1307)
CORE-15657
2019-01-26 20:28:40 +09:00
Katayama Hirofumi MZ 82c7571e43
[WIN32KNT_APITEST] NtGdiSetBitmapBits: Expand tabs to spaces (#1306)
Expand Tabs to Spaces in NtGdiSetBitmapBits testcase. Follow-up of #1304.
2019-01-26 19:10:23 +09:00
Katayama Hirofumi MZ 13a6583fa0
[WIN32KNT_APITEST] Improve NtGdiSetBitmapBits more (#1304)
Add some tests. CORE-15657
2019-01-26 11:38:42 +09:00
Katayama Hirofumi MZ 08d72bd076 [WIN32KNT_APITEST] Fix NtGdiGetFontResourceInfoInternalW message 2019-01-25 23:01:07 +09:00