Commit graph

619 commits

Author SHA1 Message Date
Mark Jansen
6abe0e50aa
[SDK][SHIMENG] Ensure that module entrypoints are not called while loading the shim engine
This is done by marking everything that is already loaded but not 'processed'.
After the shim engine is done initializing, the original state is restored,
with the exception of the shim engine itself.
CORE-15846
2019-03-14 20:02:01 +01:00
Eric Kohl
e5904abf94 [NET] Move the remaining IDS_GENERIC_PAGE strings into the command messages and fix a size restriction of ConPrintf(). 2019-03-10 09:55:15 +01:00
Eric Kohl
e2b8141eb6 [NET] Add help message for the NET USER command and move the IDS_GENERIC_PAGE string into the help messages. 2019-03-10 08:59:32 +01:00
Eric Kohl
eaee5e840b [NET] Implement the NET SYNTAX pseudo command. 2019-03-10 01:04:26 +01:00
Mark Jansen
a672665911
[ZLIB] Restore 'uncrypt' functionality in minizip 2019-03-06 23:09:35 +01:00
Timo Kreuzer
33c6f6f4b5 [PSDK] Use CALLBACK instead of APIENTRY 2019-03-06 00:42:43 +01:00
Timo Kreuzer
22bacc6e08 [PSDK] Add missing D3DFORMAT enum members to d3d9types.h 2019-03-06 00:41:52 +01:00
Timo Kreuzer
f5f6ea2965 [REACTOS] Fix 64 bit issues 2019-03-04 21:58:42 +01:00
Timo Kreuzer
252114a3a1 [PSDK] Improve definition of CBR_BLOCK
The cast doesn't exist in native headers, but this causes warnings.
2019-03-04 21:58:42 +01:00
Timo Kreuzer
6756e1adaf [PSDK] Fix PRINTDLG structure definition 2019-03-04 21:58:42 +01:00
Timo Kreuzer
6ddf034ab4 [MKISOFS] Silence MSVC warnings 2019-03-04 21:58:42 +01:00
Timo Kreuzer
73c776c744 [WIDL] Fix non-x86 builds 2019-03-04 21:58:42 +01:00
Ged Murphy
0649f25b48 [SHELL32] Implement SHTestTokenMembership and forward IsUserAnAdmin to it
Moved to the bottom of the file with the other ros functions to help keep wine syncs easier.
2019-03-04 11:54:43 +00:00
Colin Finck
bd0a28d1e4 Fix the MSVC version of ldexp filling up the FPU stack and bailing out with #IND after a few calls. Additionally, add it back to libcntpr.
MSVC was previously given a "result" variable to copy the fscale result from st(0). This led to another "fld" FPU stack push at the very end without popping the source value from the FPU stack.
Moreover, this copy isn't even needed: A simple "fstp st(1)" at the end pops an element from the FPU stack while effectively storing the result in st(0), the register used for returning a double value.
This problem didn't affect GCC, as it is only given the "fscale" instruction and does all necessary stack operations itself.

However, looking into the CRT sources, I found many other i386 implementations with inline assembly suffering from the same problem.
Fortunately, they have been replaced by pure assembly implementations a while ago, so it's time to finally remove them.
ldexp would have also been a candidate for a pure assembly implementation, but the required check for NaN and setting errno (verified on Win2003) already outweighs the benefits.
And we cannot just do a NaN check with FUCOMI as this is an i686/pentiumpro instruction while we're still targeting i586/pentium.

I'm also using this opportunity to clean up the ldexp.c header and only put in the remaining contributors as returned by "git blame".

Thanks to NightWolve1975 for reporting the problem! (https://twitter.com/nightwolve1975/status/1099042477531643912)
2019-03-03 16:11:27 +01:00
Mark Jansen
fa548efb41
[XDK] Remove _M_AMD64 special case 2019-02-25 20:00:35 +01:00
Mark Jansen
28a091ac12
[APPHELP][APPHELP_APITEST] Implement SdbGetDatabaseInformation
CORE-11301
2019-02-25 20:00:34 +01:00
Serge Gautherie
6accaef3c7 [NDK] Fix 'DeletedChidren' typo (#1367)
On behalf of Vadim Galyant.
CORE-15769
2019-02-20 22:16:16 +01:00
Thomas Faber
a951d66002
[RTL] Fix GCC build. 2019-02-17 09:59:49 +01:00
Thomas Faber
7246909a80
[RTL] Protect pointer validity check in RtlFreeHeap with SEH.
Fixes crash in kernel32_winetest:heap.
2019-02-17 09:51:12 +01:00
Hermès Bélusca-Maïto
3ddf59e1ed
[CMLIB] Assign a signature to the in-memory HHIVE registry hive structure. CORE-15753
Makes the `!reg hivelist` WinDbg command working in ReactOS.

Dedicated to Mark Jansen.

See for more details:
https://webcache.googleusercontent.com/search?q=cache:fmHJX9eFGkkJ:https://blogs.technet.microsoft.com/ganand/archive/2008/01/05/internal-structures-of-the-windows-registry.aspx
and
http://moyix.blogspot.com/2008/02/enumerating-registry-hives.html
2019-02-17 01:21:37 +01:00
Hermès Bélusca-Maïto
70180ee06a
[CMLIB] Minor code style changes only: Use slightly more explicit signature #define names so that we know to which hive structure they correspond. 2019-02-17 01:21:36 +01:00
Katayama Hirofumi MZ
a8002fc065
msgdump.h undocumented drag & drop support (#1359)
In sdk/include/reactos/msgdump.h, support Drag & Drop undocumented messages.
2019-02-16 17:27:25 +09:00
Pierre Schweitzer
c9c3622ef1
[VFATLIB] Don't forcibly delete LFN when not in RW mode 2019-02-14 10:13:32 +01:00
Timo Kreuzer
2a5bf96891 [CRT] Implement thread/fiber safe support for MSVC and Clang-CL
This is the most trivial (but also most efficient) implementation possible. Should be good enough for now.
2019-02-12 19:31:33 +01:00
Timo Kreuzer
dc77e7d379 [CRT] Use alias names for rot functions when compiling with Clang-CL
Clang-CL does not support #pragma function like CL. The alternative to this approach is to disable all intrinsics for this single source file, but that is not trivial to do, as it can only be done by removing a compiler switch, which we have no CMake support for. Therefore this solution is simpler and as good.
2019-02-12 19:31:33 +01:00
Timo Kreuzer
cf5926c207 [CPPRT] Implement __std_terminate wrapper for Clang-CL 2019-02-12 19:31:33 +01:00
Timo Kreuzer
68abf035c6 [NDK] Fix INIT_SECTION for Clang (use the GCC definition) 2019-02-12 19:31:33 +01:00
Timo Kreuzer
afe203a1a5 [CRT] Don't define _DECLSPEC_I on Clang builds 2019-02-12 19:31:33 +01:00
Hermès Bélusca-Maïto
1e74ca5075
[BUGCODES] Add WIN32K_INIT_OR_RIT_FAILURE to the list. 2019-02-10 22:44:23 +01:00
Serge Gautherie
237110604b [CMAKE] msvc.cmake: Remove 2 now redundant '/GF' (#1239)
Addendum to 5e673f3.
CORE-14373
2019-02-10 16:46:23 +01:00
Hermès Bélusca-Maïto
1b473cbeee
[SDK:CMAKE] Fix LINK command-line from the VS IDE for CMake VSSolution configurations, when using MSVC "linker script" files.
MSBuild, via the VS IDE, uses response files when calling CL or LINK.
We cannot specify a custom response file on the linker command-line,
since specifying response files from within response files is forbidden.
We therefore have to pre-process, at configuration time, the linker
script so as to retrieve the custom linker options to be appended
to the linker command-line.
2019-02-10 00:47:43 +01:00
Hermès Bélusca-Maïto
7d0cd6e937
[FREELDR][SDK:CMAKE] Move the `MSVC "linker script" file' functionality out of FreeLdr's cmake file and place it in the dedicated files instead. 2019-02-10 00:43:31 +01:00
Mark Jansen
e1aae1c620
[RTL] Implement RtlComputePrivatizedDllName_U 2019-02-07 18:48:49 +01:00
Amine Khaldi
a587a0e68e [PSDK] Update wincodec.idl. CORE-15682 2019-02-04 13:11:54 +01:00
Amine Khaldi
601cdab402 [PSDK] Update shellapi.h and shlobj.h. CORE-15682 2019-02-04 13:00:25 +01:00
Amine Khaldi
1f7c95d621 [PSDK] Update schannel.h. CORE-15682 2019-02-02 14:13:03 +01:00
Amine Khaldi
f5580f4c9d [PSDK] Update tom.idl. CORE-15682 2019-02-02 14:08:53 +01:00
Amine Khaldi
2801bfeea1 [PSDK] Update propvarutil.h. CORE-15682 2019-02-02 13:28:43 +01:00
Amine Khaldi
5db885cae7 [OLEAUT32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:18:42 +01:00
Amine Khaldi
22c8b4bf12 [WIDL] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:18:09 +01:00
Amine Khaldi
64040f7c9f [PSDK] Update ndrtypes.h. CORE-15682 2019-01-29 13:17:38 +01:00
Amine Khaldi
2c59bb1450 [PSDK] Update winerror.h. CORE-15682 2019-01-29 13:11:30 +01:00
Amine Khaldi
e783670140 [PSDK] Update icm.h. CORE-15682 2019-01-29 13:03:59 +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
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
07c408ae72 [PSDK] Update gdiplusflat.h. CORE-15682 2019-01-25 13:22:24 +01:00
Amine Khaldi
9755a82226 [PSDK] Update wincrypt.h. CORE-15682 2019-01-25 13:18:23 +01:00
Amine Khaldi
07f4be3faf [PSDK] Update commctrl.h. CORE-15682 2019-01-25 13:15:42 +01:00
Jérôme Gardou
115aa24a29 [PSDK] Add PFD_SUPPORT_COMPOSITION definition 2019-01-19 14:23:54 +01:00
Jérôme Gardou
905bcf617f [SDK] Provide .const macro for gas 2019-01-19 14:23:54 +01:00
Thomas Faber
af4421c39a
[LIBXSLT] Update to version 1.1.33. CORE-15280 2019-01-16 09:27:26 +01:00
Thomas Faber
5bb277a54b
[LIBXML2] Update to version 2.9.8. CORE-15280 2019-01-16 09:27:22 +01:00
Mark Jansen
f9e50f5471 [ATL] Add GET_X_LPARAM and GET_Y_LPARAM to atlwin.h
Remove all local definitions
2019-01-15 14:34:53 +02:00
Hermès Bélusca-Maïto
5e673f3118
[CMAKE] MSVC cmake settings improvements.
- Always use string pooling when building: this helps reducing the
  size of the binaries due to string redundancy coming from the usage
  of __FILE__ / __RELFILE__ in the debugging helper macros. Note also
  that GCC builds use string pooling by default.

- Use suitable add_compile_flags() command.
- Add some explanative comments for some settings.

Some numbers (obtained with my local builds):

Before / After => Reduction
===========================

freeldr.sys  :  443 KB (  453.632 bytes) /  364 KB (  372.736 bytes) => ~ 18%
win32k.sys   : 1877 KB (1.922.048 bytes) / 1562 KB (1.599.488 bytes) => ~ 17%
ntoskrnl.exe : 2253 KB (2.307.072 bytes) / 1902 KB (1.947.136 bytes) => ~ 15.6%
kernel32.dll : 3008 KB (3.080.192 bytes) / 2906 KB (2.975.744 bytes) => ~ 3.4%
2019-01-12 18:09:51 +01:00
Thomas Faber
b61b18157b
[LIBPNG] Update to version 1.6.36. CORE-15280 2019-01-12 16:27:18 +01:00
Thomas Faber
0ba5bc40fb
[MBEDTLS] Update to version 2.7.9. CORE-15280 2019-01-09 10:47:38 +01:00
Andrew Boyarshin
3636b46dfd [SPEC2DEF] Fix compilation of generated stub C files with int64 parameters 2019-01-08 18:58:56 +01:00
Denis Malikov
655d24d9eb [KERNEL32] make some NLS and Format functions work. Wine-sync with latest version 2019-01-05 19:01:30 +01:00
Mark Jansen
db8488e5ca
[SDK] Reset InDbgPrint state when an exception occurs
Previously this would not get reset, and all debug prints from the
current thread would be muted.
2019-01-05 15:21:40 +01:00
Serge Gautherie
c5d8d8d289 [LOG2LINES] Use translate_line() for command line input too
NB: Last step would be to re-use translate_files()...
2019-01-05 13:39:02 +01:00
Andrew Boyarshin
04c851194c [NTDLL][RTL] Implement RtlGetFullPathName_UEx 2019-01-05 13:33:28 +01:00
Mark Jansen
1692ab3fe3
[APPCOMPAT] Move sdbtagid.h and sdbtypes.h to a shared location 2019-01-05 13:11:35 +01:00
Timo Kreuzer
cfd1647914
[REACTOS] Fix misc 64 bit issues (#783)
* [WIN32K] Fix handle calculation in DbgGdiHTIntegrityCheck
* [NOTEPAD] Fix MSVC warnings
* [PSDK] Simplify *PROC definitions in windef.h
* [VIDEOPRT] Don't try to use NtVdmControl on x64
* [FREELDR] Fix some macros
* [CRT] Make qsort 64 bit compatible
* [NTOS] Use #ifndef _WIN64 instead of #ifdef _M_IX86 around C_ASSERTs
* [FAST486] Fix 64 bit warnings and change DWORD to ULONG, so it can be used in kernel mode
* [APPHELP_APITEST] Fix 64 bit issue
2019-01-05 10:50:11 +01:00
Thomas Faber
d67156fa98
[MPG123] Update to version 1.25.10. CORE-15280 2019-01-05 09:20:40 +01:00
Thomas Faber
d9e6c9b539
[MBEDTLS] Update to version 2.7.6. CORE-15280
Note: this disables the MBEDTLS_DEPRECATED_REMOVED configuration value,
because we require the now-deprecated MD5 & SHA functions for bcrypt.
2019-01-05 09:20:35 +01:00
Thomas Faber
9f1e053260
[LIBPNG] Update to version 1.6.35. CORE-15280 2019-01-05 09:20:21 +01:00
Pierre Schweitzer
44fdf3fc30 [RXCE] Fix leftover 2019-01-03 16:59:45 +01:00
Hermès Bélusca-Maïto
8d878f4bfa
[RDBSS] Fix pointer value assignation. 2019-01-03 15:49:07 +01:00
Timo Kreuzer
cdee669619 [RXCE] Fix 64 bit build 2019-01-03 14:27:15 +01:00
Pierre Schweitzer
a9124b412d
[RDBSS][RXCE] Implement IRP cancellation
CORE-15441
2019-01-02 15:02:15 +01:00
Hermès Bélusca-Maïto
3fc3447f3e
Happy New Year 2019 everybody! 2019-01-01 00:00:00 +01:00
Hervé Poussineau
a179012563
[ZLIB] Import upstream commit 38e8ce32afbaa82f67d992b9f3056f281fe69259:
Fix CLEAR_HASH macro to be usable as a single statement.
As it is used in deflateParams().
2018-12-31 14:23:59 +01:00
Hervé Poussineau
c4d25d27f6
[RTL] Fix RtlNewSecurityGrantedAccess improperly zeroing output buffer 2018-12-31 11:19:36 +01:00
Pierre Schweitzer
1a93d83f92
[SDK] Add PsGetCurrentThreadTeb() to the DDK 2018-12-31 11:19:35 +01:00
Pierre Schweitzer
ebf8785661
[SERVICES] pszName is a string, mark it so
This fixes returning string with RI_ScQueryServiceTagInfo
2018-12-30 21:44:39 +01:00
Pierre Schweitzer
2ee627ba63
[SERVICES] On service start control message, send the service tag 2018-12-30 21:44:25 +01:00
Pierre Schweitzer
dfaee51f98
[SERVICES] Define the RI_ScQueryServiceTagInfo RPC call
All the definitions are taken from ProcessHacker:
https://github.com/processhacker/processhacker/blob/master/phnt/include/subprocesstag.h
2018-12-30 14:26:57 +01:00
Timo Kreuzer
71fefa32db
[NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779)
* Add an NDK header to define INIT_FUNCTION/INIT_SECTION globally
* Use _declspec(allocate(x)) and _declspec(code_seg(x)) on MSVC versions that support it
* Use INIT_FUNCTION on functions only and INIT_SECTION on data only (required by MSVC)
* Place INIT_FUNCTION before the return type (required by MSVC)
* Make sure declarations and implementations share the same modifiers (required by MSVC)
* Add a global linker option to suppress warnings about defined but unused INIT section
* Merge INIT section into .text in freeldr
2018-12-30 12:19:11 +01:00
Timo Kreuzer
bcb0d7c6c9 [CABMAN] Fix a problem with creating temp files on some Windows system 2018-12-29 21:37:42 +01:00
Pierre Schweitzer
f75ea083e3
[NTOSKRNL_VISTA] Implement FsRtlGetEcpListFromIrp and FsRtlGetNextExtraCreateParameter
CORE-15452
2018-12-25 13:50:41 +01:00
Pierre Schweitzer
a76b8843a8
[NTOSKRNL_VISTA] Implement IoGetIrpExtraCreateParameter
CORE-15452
2018-12-25 13:50:40 +01:00
Eric Kohl
9703a42a6e [MC] Fix the build 2018-12-24 18:19:58 +01:00
Eric Kohl
f0d096838b [MC] Fix build issue? 2018-12-24 18:10:38 +01:00
Eric Kohl
4e28e65490 [NET] Move TIME, USE, USER, VIEW and NET command syntax and help texts into a message table and add the translators names to the message file. 2018-12-24 11:48:23 +01:00
Eric Kohl
4984e1b810 [NET] Move START, STATISTICS and STOP command syntax and help texts into a message table. 2018-12-24 10:20:44 +01:00
Eric Kohl
01af56140c [NET] Move PAUSE, PRINT, SEND, SESSION and SHARE command syntax and help texts into a message table. 2018-12-24 01:25:30 +01:00
Eric Kohl
e560fa2741 [NET] Move HRELPMSG, LOVALGROUP and NAME command syntax and help texts into a message table. 2018-12-24 00:13:16 +01:00
Eric Kohl
e1824b5bd3 [NET] Move FILE, GROUP and HELP command syntax and help texts into a message table. 2018-12-23 21:42:49 +01:00
Eric Kohl
34e9290821 [NET] Move COMPUTER, CONFIG and CONTINUE command syntax and help texts into a message table. 2018-12-23 20:22:48 +01:00
Pierre Schweitzer
d0b263f26f
[SDK] Set proper lang IDs, aka fix build 2018-12-23 18:22:57 +01:00
Eric Kohl
7292af515d [NET] Move ACCOUNTS command syntax and help text into a message table. 2018-12-23 16:50:25 +01:00
Eric Kohl
5c6eeb5018 [MC] Remove some useless quotation marks from message strings. 2018-12-22 19:04:54 +01:00
Pierre Schweitzer
78d703933d
[SDK] Define GetOwnerModuleFromUdpEntry() 2018-12-21 19:17:11 +01:00
Serge Gautherie
5c77cd9050 [LOG2LINES] Partially sync output format from command line input (#1109) 2018-12-21 00:27:01 +01:00
Giannis Adamopoulos
9924da34cc [USERSRV] Add definition for the USER_CREATE_SYSTEM_THREAD api message 2018-12-19 16:13:18 +02:00
Thomas Faber
0d6dcee968
[CRT] Use explicit C linkage for intrinsic functions.
Fixes MSVC warnings:
sdk\include\crt\xmmintrin.h(33): warning C4162: '_mm_getcsr': no function with C linkage found
sdk\include\crt\xmmintrin.h(35): warning C4162: '_mm_setcsr': no function with C linkage found
2018-12-19 10:55:20 +01:00
Serge Gautherie
36c1b87a0b [PSDK] Fix 5 MSVC-x64 "C4028" warnings about SQL*() (#1160)
Missed parts of sqlext.h in r74826 WineSync.
CORE-13362 CORE-7538
2018-12-18 22:48:40 +01:00
Mark Jansen
b5aa5bcdc1
[SDK] Define some constants for use with _mm_prefetch (#1147)
* [SDK] Define some constants for use with _mm_prefetch
This should fix the build for x64
Add __INTRIN_INLINE for gcc and clang
2018-12-16 23:25:52 +01:00
Serge Gautherie
d840d7cb1b [CMAKE] MSVC: Make C4028 warning into error, on "i386" only
"C4028: formal parameter N different from declaration"

CORE-7538
2018-12-16 23:12:22 +01:00
Hermès Bélusca-Maïto
596b1a8d24
[STLPORT] Fix MSVC x64 build.
Timo, can you check whether this disabled code block is really needed?
2018-12-15 20:19:31 +01:00