Commit graph

1034 commits

Author SHA1 Message Date
Vadim Galyant 3c585d0e38
[NTOS:MM] Since the _MMPTE_SUBSECTION structure for x86 (without PAE) uses the SubsectionAddressLow truncated by the least significant three bits, the _CONTROL_AREA, _LARGE_CONTROL_AREA, _SUBSECTION, _MSUBSECTION structures must be 8-byte aligned.
Corresponding checks in MmArmInitSystem() have been removed.
2020-04-06 11:16:34 +02:00
Thomas Faber 1b00a1f50f
[MBEDTLS] Update to version 2.7.14. CORE-16787 2020-04-05 14:45:03 +02:00
Mark Jansen 1437433039
[ATL] Add some hacks for gcc,
since parsing templates is not something it can do
2020-04-04 19:55:31 +02:00
Mark Jansen a37b5b2f39
[ATL] Fix an ATLASSERT expression 2020-04-04 19:55:31 +02:00
Mark Jansen 00ac9e763e
[INCLUDE/CRT] Add some debug macro implementations for _DEBUG
CORE-11834
2020-04-04 19:55:31 +02:00
Mark Jansen 62c1bb6448
[CRT] Implement _CrtDbgReport and _CrtDbgReportW
Most functionality is working, except output to file
CORE-11835
2020-04-04 19:55:24 +02:00
Oleg Dubinskiy e9f5438eea
[DXSDK] Sync axextend.idl with Wine Staging 3.3 (#2421)
Required by Wine's qcap.dll CORE-16350

[DXSDK] Restore all deleted code in axextend.idl to propely fix compilation
Also regularize some parts of added code and replace IAMStreamControl interface
with Wine's one, because otherwise compilation fails.
2020-04-03 23:58:54 +02:00
Serge Gautherie 8c986e17a0
[PSDK] guiddef.h: Remove unwanted '&& !defined(CINTERFACE)' (#2492)
Cherry-pick
4626db2bb2
Import
54f58769fe
34f3e7793b
2020-04-03 13:59:34 +02:00
Joachim Henze 45b5ec8e7b [RDBSS] Avoid CORE-13938
Pierre recommended this workaround for 0.4.8rls before.
Avoids "GetVolumeInformation now fails on NFS volume"

This workaround was recurrently applied for all releases
0.4.8, 0.4.9, 0.4.10, 0.4.11, 0.4.12, 0.4.13.

I never got any reply in the regression-ticket and recurrently
applying this over and over again is a waste of time.
So I decided to commit to master today, but will leave
the ticket unresolved, so when a proper fix will arrive in the future,
the existing ticket will remind us to undo this workaround.

Please note that I replaced #if 0 with #if 1
as discussed with Pierre. That's different to the patch in ticket.
2020-04-02 15:09:46 +02:00
Mark Jansen c1464a4030
[SPEC2DEF] Omit skipped exports from ordinal numbering.
CORE-16769
2020-03-31 22:49:44 +02:00
Serge Gautherie 724466597f [REACTOS] Remove forced _WIN32_IE defines
No impact, as already deactivated or superseded or superfluous.

Import
7770e26f2d
2020-03-30 13:47:09 +03:00
Mark Jansen 177ae91bf6
[RTL] Introduce RtlpImageNtHeader,
which implements the required functionality.
ntdll and ntoskrnl now have a wrapper for this, with SEH.
This protects the function against malformed / bad images,
whilst still being able to use the code in freeldr et al.
Idea from Thomas.
CORE-14857
2020-03-29 21:27:38 +02:00
Mark Jansen 4b2665046d
[NDK] Ensure RTL_IMAGE_NT_HEADER_EX_FLAG_NO_RANGE_CHECK is available regardless of NTOS_MODE_USER being defined.
CORE-14857
2020-03-29 21:27:38 +02:00
Andreas Maier 782ff23261
[MSV1_0] LsaApLogonUserEx2: use RtlRunDecodeUnicodeString to decode password 2020-03-28 23:27:34 +01:00
Serge Gautherie 8ae8083378
[ADVAPI32][PSDK] CryptReleaseContext(): dwFlags parameter is DWORD, only
Import
9cc8b501ee
2020-03-28 20:43:03 +01:00
Bișoc George 7481bda679
[SDK][NDK][PSTYPES] Align the PROCESS_PRIORITY_CLASS structure during compile time (#2478)
CORE-16757

After doing investigations on the priority class structure alignment, it's been revealed that in Windows XP and Server 2003 this PROCESS_PRIORITY_CLASS structure is aligned as a 4-bytes of size hence NtQueryInformationProcess() probes the alignment of user mode arguments buffer output and buffer length with requirement of a ULONG.

As PROCESS_PRIORITY_CLASS was initially aligned as a 1-byte size because both BOOLEAN and UCHAR are just unsigned characters, the compiler may not align such structure and gracefully let the default alignment of such structure as is, 1-byte because an unsigned char has a size of 1 byte. Setting an align attribute to this structure fixes the problem of a potential datatype misalignment which caused GetPriorityClass() to not retrieve the process' priority class properly.
2020-03-28 19:17:10 +01:00
Vadim Galyant ae0e0569d5
[SDK][NDK] MMPTE for PAE (#2453)
This not only makes PAE possible, but also allows to make the definitions and macros in the memory manager header files more human-readable.

CORE-16702

* [SDK][NDK] Make the _MMPTE_HARDWARE structure more compact and more human-readable.

* [SDK][NDK] Add definitions a struct _MMPTE for PAE mode.
2020-03-28 13:45:51 +01:00
Hervé Poussineau 796c1ac993 [TCPIP] Add some static specifiers, to prevent exporting FORCEINLINE function outside compilation unit 2020-03-26 16:39:16 +01:00
Hervé Poussineau ff045b2dbe [NDK] Fix RTL_PAGED_CODE macro in user mode
NOP_FUNCTION is defined to "(void)0". Calling :
	RTL_PAGED_CODE();
in user mode was changed to:
	(void)0();

As "0" is not callable, this was leading to a compilation error.
2020-03-26 16:39:16 +01:00
Hervé Poussineau 7eac585ebf [SDK] Fix dummy SEH to always reference the parameter in _SEH2_EXCEPT
Otherwise, we may have compilation errors if this parameter is the name of a static function.
2020-03-26 16:39:16 +01:00
jimtabor 78098f99e0 [Explorer|Shell32] Fix Build
Missed a file. See CORE-14439.
2020-03-21 19:18:15 -05:00
Mark Jansen 315765ed8b
[MSVCRT] Add _snwscanf 2020-03-15 13:12:20 +01:00
Timo Kreuzer 64bc9c233f [HOST] Do not pack structures
Most of them are unaffected by packing, the ones that are affected have pointers, and packing them will only misalign them, but not making the structures 32 bit compatible.
2020-03-14 10:26:21 +01:00
Serge Gautherie dbfd511ecd
[PSDK] SYSTEM_POWER_STATUS: Rename Reserved1 to SystemStatusFlag (#2419)
As on Win10.

Cherry pick
7c5ea436af
2020-03-13 18:14:16 +01:00
Timo Kreuzer c735dbac35 [PRINTING] Add x64 print environment keys and folders 2020-03-09 07:03:47 +01:00
Serge Gautherie 29c1089983 [CMAKE] gcc.cmake: '-Wno-unused-const-variable' applies to GCC 6.1+
GCC 4.7.2 logs
'cc1: error: unrecognized command line option "-Wno-unused-const-variable" [-Werror]'

Addendum to 8eb7a1a2f4.
2020-03-08 13:30:10 +01:00
Dmitry Borisov c14cc22bfd [FREELDR] Add ARC-emulation support for NEC PC-98 series
- Add ARC-emulation support for NEC PC-98 series
- Add global definition for PC-98 port into CMakeLists.txt
- Add floppy verison of freeldr.ini for PC-98 CD boot
2020-03-07 00:52:40 +01:00
Hermès Bélusca-Maïto 93beefacbe
[CMAKE][FREELDR] Take the global defines into account when compiling ASM files.
Now the SARCH_xxx can be used in ASM files too.
Dedicated to Dmitry Borisov ;)
2020-03-06 22:55:12 +01:00
Dmitry Borisov 222e79232c
[CPORTLIB][NTOS:INBV][KDCOM][FREELDR] Add ComPort library for NEC PC-98 series (#2407)
There are 2 known serial ports:
    COM1 - based on Intel 8251A
    COM2 - National Semiconductor 16550
2020-03-06 19:50:31 +01:00
Serge Gautherie e7790abb02 [PSDK][XDK] Move 2 aliases to psdk/winbase.h from xdk/winnt_old.h 2020-03-06 18:26:01 +01:00
Serge Gautherie 2e82175ba4 [PSDK] winbase.h: Add missing LPEXCEPTION_RECORD
ROSTESTS-251
2020-03-06 18:26:01 +01:00
Andreas Maier 11fe17c3a1
[PSDK] Extend struct _SECPKG_DLL_FUNCTIONS, fix definitions.
* Add missing enums to MSV1_0_PROTOCOL_MESSAGE_TYPE and SECPKG_EXTENDED_INFORMATION_CLASS
* Add missing function entries to LSA_SECPKG_FUNCTION_TABLE and add needed definitions.
* Fix params of PLSA_AP_CALL_PACKAGE
* Fix SpInitializeFn (+ NTAPI)
2020-03-04 07:02:37 +01:00
Jérôme Gardou 2b067d6494 [WINESYNC]: d3dx9 is now in sync with wine-staging wine-4.2 2020-02-26 18:19:18 +01:00
winesync 8c7529df7e [WINESYNC] d3dx9_36: Implement ID3DXSkinInfoImpl_UpdateSkinnedMesh.
This patch fixes last problem of bug 32572.

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync 69a02efd33 [WINESYNC] d3dx9_36: Align texture dimensions to block size for compressed textures in D3DXCheckTextureRequirements.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync b7a4b73b65 [WINESYNC] d3dx9_36: No need to fail if we don't support vertices reordering in D3DXMESHOPT_ATTRSORT
A non optimized mesh does not prevent rendering as long as we return valid data to the application.
In our case we provided an identity remapping array when no vertices reordering is done.

Avencast demo works perfectly well (using native effects functions).

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync e362e098a3 [WINESYNC] d3dx9_36: Filter out D3DCompile warning messages that are not present with D3DCompileShader. (try 4)
This patch fixes vertex processing issue of bug 33770.

The problem comes from the fact that even if the call succeeds,
the game interprets a non null error_messages pointer as an error.

By calling D3DCompile we use a newer version of the compiler which is more
strict and generates the following warning.
  - warning X3206: 'dot': implicit truncation of vector type
  - warning X3206: implicit truncation of vector type
  - warning X3206: 'mul': implicit truncation of vector type
D3DCompileShader does not generate such warnings.

These is confirmed in the DX SDK release note:
New Warning X3206: Implicit Truncation of Vector Type
Beginning in the August 2009 release of the DirectX SDK, the compiler will warn
when an implicit truncation of a vector type occurs.

The warnings cannot be disable so this patch filters out these strings in D3DCompileShader
and reset the error messages pointer if the resulting buffer is empty.

Try 2:
  - only filter out lines containing "X3206:" in case d3dcompiler_43 has localization

Try 3:
  - use move in place instead of copying the buffer

Try 4:
  - filter simplification by Sebastian and remove 'mul' testing left-out in search string

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync cab82604c1 [WINESYNC] d3dx9_36/tests: Add initial tests for dummy skininfo interface.
wine-staging patch by Michael Müller <michael@fds-team.de>
2020-02-26 18:19:18 +01:00
winesync 7b8f79e550 [WINESYNC] d3dx9_36: Return dummy skininfo interface in D3DXLoadSkinMeshFromXof when skin information is unavailable.
wine-staging patch by Michael Müller <michael@fds-team.de>
2020-02-26 18:19:18 +01:00
winesync 58d515ea16 [WINESYNC] d3dx9_36: ID3DXFont_DrawText calc_rect can be null
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

wine-staging patch by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-02-26 18:19:18 +01:00
winesync f9c6d6e396 [WINESYNC] d3dx9_36: Support NULL terminated strings in ID3DXFont_DrawText
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

wine-staging patch by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-02-26 18:19:18 +01:00
winesync 5b56f3d681 [WINESYNC] d3dx9_36: Fix horizontal centering in ID3DXFont_DrawText.
Fix remaining text issues in Air Strike.
Should fix text placement in Stronghold Kingdoms.

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync cbed631506 [WINESYNC] d3dx9_36: Implement ID3DXFontImpl_DrawText.
Changes by Sebastian Lackner <sebastian@fds-team.de>:
* Use pitch value for locked buffer instead of assuming that pitch = width * bytesperpixel
* Avoid one for loop to simplify code
* Ensure that DrawText doesn't dereference a NULL pointer when count != 0.

Changes by Christian Costa <titan.costa@gmail.com>
* Use dedicated variables for text width & height instead of reusing rect.right and rect.bottom
* Remove useless test in pixel conversion
* Remove left over 'partial stub' in fixme

Changes by Sebastian Lackner <sebastian@fds-team.de>:
* Replace code to convert text from ascii to widechar
* Strip terminating NULL chars before drawing text

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync 83d1420b3c [WINESYNC] d3dx9_36: add DXTn support
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync de19dd3e38 [WINESYNC] d3dx9_36: Improve D3DXSaveTextureToFile to save simple texture to dds file.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync 6e7150ee67 [WINESYNC] d3dx9_36: Add support for FOURCC surface to save_dds_surface_to_memory.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync 5ba697c68b [WINESYNC] d3dx9: Implement D3DXComputeTangent
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

wine-staging patch by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-02-26 18:19:18 +01:00
winesync e131c1834d [WINESYNC] d3dx9_*: Add D3DXSHProjectCubeMap stub
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46284

wine-staging patch by Andrey Gusev <andrey.goosev@gmail.com>
2020-02-26 18:19:18 +01:00
winesync 54e07d18d5 [WINESYNC] d3dx9_36: Add semi-stub for D3DXOptimizeVertices.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00
winesync 2420da1158 [WINESYNC] d3dx9_36/tests: Remove useless \n within some ok messages.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2020-02-26 18:19:18 +01:00