* [WINESYNC] ntdll: Add support for parsing application settings in manifests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id fc14442970dc6b97032c3cdd76cab33d774dc1a2 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Implement RtlQueryActivationContextApplicationSettings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 14b9a5af0b44d7e2ca5232ad810c77e561d5d30c by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Propagate the error through the XML buffer in manifest parser.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 7b871727e5cbb8581167acbaae2f4e34dc4ee59e by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Check the namespace in RtlQueryActivationContextApplicationSettings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id e46259fb823f55aa331381fe56916d20049d52f2 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 10f23ddb58b0583c8bce99e59d879c653b389363 by Michael Stefaniuc <mstefani@winehq.org>
* [WINESYNC] ntdll/actctx: Don't stop looking for manifest if dll without manifest is found.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 56b3304a019486b52681a05d4b5454b475275e51 by Fabian Maurer <dark.shadow4@web.de>
* [WINESYNC] ntdll: Use the current platform as processorArchitecture instead of a wildcard.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 6abf99b4803003812d4fcf7bf9effc99030cbec9 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use strncmpiW instead of memicmpW for strings without embedded nulls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 6fc259a57dafab9e72af13980c021e2a59257935 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Avoid dead initialization (scan-build).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 6ea282c7e1abd7ab09a5f0a18a437e63f909da96 by Alex Henrie <alexhenrie24@gmail.com>
* [NDK] Add RtlUTF8ToUnicodeN for user mode
* [WINESYNC] ntdll: Use the Rtl UTF8 conversion functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id f46fa9c92d08c6e656bc22b94e09aa9dbe7d3be9 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use module path as assembly path for manifests embedded in resources.
Fixes Office 2016 installer, which removes its .exe directory from load
path, but expects to be able to load files listed in manifest.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 2d764e90dd2c624f7a2d863ab29bd418ed33d252 by Jacek Caban <jacek@codeweavers.com>
* [WINESYNC] ntdll: Store the default process activation context into the PEB.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id e95d0813fdfcfcac2bb1761e62e1d54e6f73cd6d by Gabriel Ivăncescu <gabrielopcode@gmail.com>
* [WINESYNC] ntdll: Use wcsicmp() instead of strcmpiW() where possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 3e049b6b962b8e6f048101b9910c09d5b1d8f167 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcsnicmp() instead of strncmpiW() where possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id f831b3bd3d6b013893be7645df3a9cd05289c415 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use RtlEqualUnicodeString() instead of strcmpiW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 4d93bafe961ed53488ff0fb4b44cb1ad085531fe by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Avoid using memchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 186f189107972b739311f95a4ba3833838349b32 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Avoid using atoiW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 8f3d869d784753d814a3493d01c3650f45389eda by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Avoid using sprintfW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id eb1b2e548656dc3d08cbf3c35454621491b84126 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcscpy() instead of strcpyW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 18411a19b4ea3a68234980c56d4c252670dfc000 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcscat() instead of strcatW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 80005ee016aeed42967adfe5b3042803d008c50d by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcschr() instead of strchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 6de0ab276b3b79db4331993316f529a43f67c29a by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcsrchr() instead of strrchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 285c5490a4c0ee4a92d042a3e6ab32e6bc14fb49 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcslen() instead of strlenW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id e003b9884edcccc417d41d30073b312648741aaa by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcscmp() instead of strcmpW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 4501ab0a7c80e31e602c540a446809e8ae3ebade by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use wcsncmp() instead of strncmpW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id e36b97e1d0644f90606d27f5104bb09a910540d2 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Make the windows directory a global variable.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id ca13f489e18fb1f7944e3bdcfdfc4a810bf80994 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Use single field for misc flags in ComClass redirection section.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 72d055854b59db9059a3465f1e65247c0cc5e94e by Nikolay Sivov <nsivov@codeweavers.com>
* [WINESYNC] ntdll: Create class section for proxy-stub interface entries.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id dd9295b415345f2b686b65bd05fae0320cf6dc39 by Nikolay Sivov <nsivov@codeweavers.com>
* [WINESYNC] ntdll: Use the standard C library names for the printf functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id 4478ba258e45559ac97353ab27951e84dd9865c1 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Implement RtlActivateActivationContextEx().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id c71da19d24a5d6f01e65b3b3691a9d7dd17a2278 by Alexandre Julliard <julliard@winehq.org>
* [WINESYNC] ntdll: Fix a memory leak (Valgrind).
Signed-off-by: Chao Long <longchao@uniontech.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
wine commit id d0946955ec21e4da57aaec92459f81f131b27a49 by Chao Long <longchao@uniontech.com>
* [WINESYNC] rtl is now in sync with wine-staging wine-5.18
---------
Co-authored-by: winesync <ros-dev@reactos.org>
Co-authored-by: winesync <rosdev@reactos.org>
The change is needed, because the previous version emitted multiple ".seh_handlerdata" blocks and GAS isn't able to merge them into one, but will instead only include the first one. This is fixed by generating "asm defines" in the code and pass the line number to the "REACTOS seh" pragma, which is then used to create all handler data by referring to the predefined symbols, that include the line number.
Also the EstablisherFrame parameter passed to the filter/finally function is the original stack pointer, not the frame pointer! Take this into account by passing __builtin_frame_address(0) from the filter context to the global wrapper function, which includes the frame-offset, and use that to recalculate the frame-pointer from the passed in stack pointer.
GCC 8.4 and Clang 13.0.1:
`cc1: note: unrecognized command-line option ‘-Wno-deprecated-non-prototype’ may have been intended to silence earlier diagnostics`
Addendum to commit 4e3bf252d
- Simplify patch directory usage;
- Fix the path shown in the warning message.
The staging patch path in the warning message didn't show the correct
sub-directory where the patch resides.
This fixes in particular problems when reverting created new files (i.e.
they are deleted). I suspect this is due to an endline-format "expectation"
from the git apply command.
This now correctly sets the commit author as 'winesync' (before it was
the committer's developer name) for the following types of commits:
`[WINESYNC]: revert wine-staging patchset for <MODULE_NAME>`
and
`[WINESYNC]: <MODULE_NAME> is now in sync with wine-staging <WINE_TAG>`
Expand on Timo's commit 4b5a55516.
We may encounter cases where either the 'directories' or 'files' lists
in the .cfg YAML files are empty, and we don't want the script to throw
an exception in that case.
Furthermore, explicitly check for such empty lists when calling PyGit2
index.add_all(...) function, because if it's called on a None or empty
list, _all_ untracked files in the selected git repository get added,
which is not what we want there.
Wine-Staging switched to staging/patchinstall.py , removing the
deprecated patches/patchinstall.sh in Feb.16, 2023 commit
c1b4af92f7
just before the v8.2 release.
In order to maintain interoperability between older and newer
Wine-Staging versions, try to run first the new script; if it fails,
fall back to the older script.
Whenever using git, be it on Windows CMD, git-bash on Windows, or in
*nix systems, git appears to always use posix-like paths internally.
So, enforce them with posixpath when building/concatenating paths that
are going to be passed to pygit2 functions.
Otherwise, exceptions like the following one happens:
```
File "./winesync.py", line 296, in revert_staged_patchset
self.reactos_index.remove(os.path.join(self.staged_patch_dir, patch_file_name))
[... skipped ...]
OSError: index does not contain sdk\tools\winesync\setupapi_staging\0002-wine-staging-4.0-setupapi_winetest.patch at stage 0
```
(The git index actually contains the specified path, but in "posix" form
with slash-separators.)
On *nix platforms, these changes should not matter.
mkisofs and its components uses K&R-style function definitions
to support very old compilers. Modern compilers consider K&R syntax
to be deprecated. Clang therefore emits a large number of warnings
over this.
* [SDK:TOOLS] Improve gen_baseaddress.py
Adds some kbd layout modules into the excludes-section:
that we do lack for todays master: e.g._ kbdeo, kbdsf, kbdrost
and also some that we lacked in the past
(for improving backwards compatibility of the script to older rls-branches):
kbdgm, kbdes, kbdgrist, kbdja, kbdko, kbdsk, kbdsk1
* [SDK:CMAKE] Highlight in the output files where the script does misbehave
This DLL was exporting legacy NT-incompatible or ROS-specific SM client
functions, that have been since 10 years now (2012) replaced by the new
NT-compatible SM:
- SmConnectApiPort(): was just SmConnectToSm().
- SmCompleteSession():
The legacy SMSS used it for when a subsystem initialization was finished.
Now (NT-compatible) this function is called by subsystems **only** when a
subsystem session **terminates**: SmSessionComplete().
- SmExecuteProgram(): was just the client side of SmLoadDeferedSubSystem()
(whose server side is not implemented yet). The legacy SM "old" SmExecPgm
implementation actually was "SmLoadDeferedSubSystem"...
- SmLookupSubsystem(): is a utility-only function to read any registry value
inside "Session Manager\SubSystems".
Move SMDLL's readme into SMLIB and update its contents.
Collect some residual useful functions into smutils.c (and moved in SMLIB,
though not compiled yet):
- SmExecuteProgram(), now implemented as a wrapper around SmExecPgm();
- SmLookupSubsystem(), described above;
- SmQueryInformation(), that retrieves a list of currently-running subsystems.
[SMLIB] Validate SbApiPortName's length in SmConnectToSm().
Fix CommandLine length validation in SmStartCsr().
Add documentation (+ SAL annotations) to the NT-compatible SMSS client functions.
smmsg.h: Add both Win32 and Win64 struct sizes C_ASSERTs for those whose size
change between these two processor architecture sizes.
[SMLIB] Introduce SmSendMsgToSm() as helper to send data into the SM LPC port.
+ Make the other API functions use it.
It should be observed that in Vista+, both functions SmConnectToSm() and this
new SmSendMsgToSm() are exported by NTDLL under the names RtlConnectToSm()
and RtlSendMsgToSm() (and use the same signature).
See: https://www.geoffchappell.com/studies/windows/win32/ntdll/history/names60.htm
[NTDLL] Correctly stub RtlConnectToSm() and RtlSendMsgToSm().
[NTDLL_VISTA] Link to SMLIB and simply export RtlConnectToSm() and RtlSendMsgToSm().
The keyboard layout file names of ReactOS are different from Windows' ones. It was one reason why ImmInstallIMEW fails.
- s/kbdbgm/kbdbu/ Bulgarian (Typewriter)
- s/kbdgrist/kbdgr1/ German_IBM
- s/kbdes/kbdsp/ Spanish (non-alternate!)
- s/kbdja/kbdjpn/ Japanese
- s/kbdko/kbdkor/ Korean
- s/kbdsk/kbdsl/ Slovak
- s/kbdsk1/kbdsl1/ Slovak (QWERTY)
CORE-11700
Used winesync.py script, commits which needed obious adjustments have explicit
note in commit message, that it is manually adjusted. Internationalization is
skipped while automated sync and done in last manual step.
Additonal manual adjustments to compile in ros are in this commit:
- wcsupr -> _wcsupr
- only 3 arguments for swprintf, instead of 4 in wine
- disable tests for "/reg:32" and "/reg:64", because they fail on w2k3
Manually addjusted base/applications/cmdutils/reg/lang/zh-CN.rc while rebase to
actuall master (4a66cbb224) on 19.06.2022