Commit graph

1381 commits

Author SHA1 Message Date
Piotr Caban
19018abf86 wine.inf: Set MountMgr service start option to SERVICE_BOOT_START.
This matches with native. It's needed to ensure that mountmgr is started
before other services that use functionality provided by it. Fixes
Autodesk Desktop Licensing Service that uses GetVolumeInformationByHandleW.
2024-11-13 18:48:42 +01:00
Alexandre Julliard
35d2f8767c documentation: Update URLs to point to the Gitlab Wiki. 2024-10-04 19:10:14 +02:00
Hans Leidekker
b67ec18972 wine.inf: Add a couple of NTFS registry values. 2024-10-03 20:38:12 +02:00
Alexandre Julliard
fa3a23c60d loader: Formatting tweaks in the man pages. 2024-10-02 17:27:20 +02:00
Rémi Bernon
03c616f83e l3codecx.ax: Register the MP3 Decoder class. 2024-09-06 21:03:28 +02:00
Rémi Bernon
0d75a1ba21 mfh264enc: Register the H264 Encoder MFT class. 2024-09-03 14:36:33 +02:00
Rémi Bernon
23d303e8ee msmpeg2vdec: Register the H264 Decoder MFT class. 2024-09-03 14:36:33 +02:00
Rémi Bernon
2d92d14de5 wmvdecod: Register the WMV Decoder DMO class. 2024-09-03 14:36:33 +02:00
Rémi Bernon
77e3acd5c4 msauddecmft: Register the AAC Decoder MFT class. 2024-09-03 14:36:33 +02:00
Rémi Bernon
a01e9eed6b wmadmod: Register the WMA Decoder DMO class. 2024-09-03 14:36:32 +02:00
Rémi Bernon
008cf28373 resampledmo: Register the Resampler DMO class. 2024-09-03 14:36:32 +02:00
Rémi Bernon
d8cfc9c474 msvproc: Register the Video Processor MFT class. 2024-09-03 14:36:32 +02:00
Rémi Bernon
ef4cd564a9 colorcnv: Register the Color Converter DMO class. 2024-09-03 14:36:32 +02:00
Rémi Bernon
9109a10b25 mfasfsrcsnk: Register the Asf Byte Stream Handler class. 2024-09-02 10:59:25 +02:00
Rémi Bernon
2bc3615212 mfmp4srcsnk: Register the MPEG4 Byte Stream Handler class.
This introduces a new module, sharing source with mfsrcsnk, to register
the classes in the same module as native, and prefer native by default.
2024-09-02 10:59:25 +02:00
Brendan Shanks
8cb1009e4c ntdll: Use environ/_NSGetEnviron() directly rather than caching it in main_envp.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57005
2024-07-31 21:07:14 +02:00
Brendan Shanks
62d3767161 wine.inf: Don't register wineqtdecoder.dll.
wineqtdecoder was removed in 34289e749f.
2024-07-23 21:30:48 +02:00
Alexandre Julliard
3cf8d501f8 ntdll: Load xtajit64.dll on ARM64EC. 2024-07-09 12:03:10 +02:00
Alexandre Julliard
06fdcba7cf loader: Build relative paths at run-time instead of depending on makedep. 2024-06-25 13:32:57 +02:00
Alexandre Julliard
0fb9e616bc makefiles: Hardcode the dll directory.
It's Wine-specific anyway.
2024-06-24 15:21:42 +02:00
Brendan Shanks
7b82f507bd loader: Use zerofill sections instead of preloader on macOS when building with Xcode 15.3.
Xcode 15.3 adds a new linker flag ('-no_huge') which allows the loader
to use zero-fill sections to reserve the areas currently being
reserved by the preloader.

This means the preloader is no longer needed (a good thing, since it's
heavily dependent on private APIs).

The preloader will still be used when Xcode <15.3 is being used, or when
building for i386 (32-bit for 10.14 and earlier).
2024-06-21 17:33:24 +02:00
Paul Gofman
1bccb4cf9a wine.inf: Add Explorer\Advanced registry key. 2024-05-22 22:28:44 +02:00
Paul Gofman
c3d641927a wine.inf: Add InstallationType field to CurrentVersion. 2024-05-20 11:55:32 +02:00
Zebediah Figura
b381f9d095 wine.inf: Set the EnableLUA value to 1.
This signifies that UAC is active.

Foobar2000 checks this value, and won't even try to elevate itself otherwise.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50727
2024-03-04 15:39:06 +01:00
Michael Müller
cfab11e16a wine.inf: Register the New menu as a directory background context menu handler.
CDBurnerXP expects the ContextMenuHandlers key to exist, and apparently
enumerates it until it receives ERROR_NO_MORE_ITEMS. If it fails to open the
key, it will spin forever trying to call RegEnumKeyExW(NULL) and getting
ERROR_INVALID_HANDLE.

We could simply create an empty ContextMenuHandlers key here, but this will
allow the New menu to work in the builtin explorer view once shellex handlers
are implemented.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=29523
2024-03-01 23:14:22 +01:00
Zebediah Figura
227408c4fc wine.inf: Add ShellNew registry entries for Folder. 2024-02-29 19:21:08 +01:00
Rémi Bernon
0ed830eac5 mouhid.sys: Introduce a new HID pointer device driver.
This only matches with digitizer devices for now, it could later be
used for HID mice but for now we use a different path for that.
2024-02-14 19:19:32 +01:00
Alexandre Julliard
5a26d87bab Revert "loader: Associate folder with explorer".
This reverts commit 7a941fd59a.
It doesn't work properly since explorer fails to launch, and it breaks
the tests.
2024-01-30 22:41:17 +01:00
Vijay Kiran Kamuju
f51b4d014e wine.inf: Create security directory.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52399
2024-01-22 10:11:27 +01:00
Haidong Yu
7a941fd59a loader: Associate folder with explorer.
Signed-off-by: Haidong Yu <yuhaidong@uniontech.com>
2024-01-18 18:08:48 +01:00
Alexandre Julliard
8d628b1254 loader: Remove absolute paths references from the man page.
All paths are relative to the installation directory by default.
2024-01-02 21:54:41 +01:00
Shaun Ren
ad8f354f62 msttsengine: Add stub dll. 2023-11-08 17:25:41 +01:00
Alexandre Julliard
4502eb56ba configure: Use hidden visibility also when building Unix libraries. 2023-11-08 10:27:21 +01:00
Hans Leidekker
fd00d8e4cc ntdll: Bump current build number to 19043 (Win10 2009).
Based on Proton commit 0fa76dd66a8.
2023-10-31 17:04:57 +01:00
Alex Henrie
b520a19fc2 loader: Associate Wine with internet shortcuts. 2023-10-30 13:33:28 +01:00
Alexandre Julliard
8db7f7a6ae Revert "loader: Translate wine.desktop to Catalan".
This reverts commit 7a22152ba1.
There was already a translation.
2023-10-19 14:56:32 +02:00
Alex Henrie
e5679b5ff6 loader: Add separating dash to Spanish translation of wine.desktop. 2023-10-17 21:48:20 +02:00
Alex Henrie
7a22152ba1 loader: Translate wine.desktop to Catalan. 2023-10-17 21:48:20 +02:00
Alex Henrie
474536c0d6 loader: Associate Wine with batch files. 2023-10-17 21:48:20 +02:00
Dmitry Timoshkov
3acdfe3180 srvsvc: Add LanmanServer stub service.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
2023-09-08 17:47:32 +02:00
Jinoh Kang
da74da2939 loader: Don't return from __stack_chk_fail() stub in preloader.
GCC expects __stack_chk_fail() to be noreturn[1].  Returning from
__stack_chk_fail() can thus lead to subtle failures.

When crashing, use a volatile NULL pointer dereference.  Ideally we
would like to "abort()" here, but doing so would require two more
syscall definitions just for a cold function.  After all, the function
isn't even used at all if -fno-stack-protector is specified.

Also, don't say "stack smashing" (unlike glibc).  The preloader
currently initializes the stack canary value to a fixed value (0), which
serves little value in protecting against actual buffer overrun attacks.

[1]: https://gcc.gnu.org/onlinedocs/gcc-9.1.0/gccint/Stack-Smashing-Protection.html
2023-09-04 11:40:38 +02:00
Jinoh Kang
81f7329f4c loader: Fix calculation of thread_data address in Linux x86-64 preloader.
Fixes: ac1761d1da
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55508
2023-09-04 11:39:14 +02:00
Brendan Shanks
4e6dbf3b9e loader: In macOS preloader, add __program_vars section.
This is needed to be a correct macOS 10.7 binary.
2023-07-18 15:16:12 +02:00
Brendan Shanks
cfa0dd9dd9 loader: On 64-bit macOS, reserve the low 8GB using a zerofill section.
A zerofill section is the only way to reserve address space and prevent
system frameworks from using it, including preventing allocations
before any preloader code runs:
- starting with Ventura, dyld allocates private memory from 0x1000-0x81000.
  This breaks EXEs that have an image base of 0x10000.
- Rosetta allocates memory starting at 0x100000000, which breaks EXEs based there.
- starting with Monterey, for proper 10.7 binaries (which include a __program_vars section),
  libSystem initializes itself before the preloader runs. This fragments the <4GB
  address space which is needed for Wow64.

This will need to be adjusted if any EXEs based at 0x200000000 or higher
are found.
2023-07-18 15:16:12 +02:00
Jinoh Kang
966233aee6 loader: Set the visibility of symbols in preloader to "hidden".
Today, the preloader is linked with -fPIE in spite of the fact that the
preloader is a non-PIE statically linked binary.  This is due to a
limitation in tools/makedep that makes it difficult to specify CFLAGS
for each individual object file's recipe.

This can seemingly cause problems with some GOTPCREL(X) relocations
inside the preloader. Since preloader does not link to the system
library directly, there is no need for a Global Offset Table (GOT).
However, a few extern (non-static) function symbols are declared, the
use of which makes GCC emit instructions that references those symbols
by indirection through GOT.  The linker then tries to optimize such
instructions to eliminate GOT references, which can fail due to various
reasons.

This stands in contradiction with Jinoh Kang's suggestion (in bug 55050)
that "-fPIE is harmless even when applied to an object linked into
non-PIE executables." The claim is theoretically true since
position-independent code can in principle be relocated to any address
(fixed or dynamic); however, it fails due to some peculiar practical
issues, which is arguably a limitation in the linker's implementation
(since it can be worked around with -Wl,--no-relax without issues).

Fix this by eliminating GOT usage by setting the default visibility of
non-static declarations to "hidden". Assuming GCC's medium code model
(-mcmodel=medium; default code model for x86_64), this suppresses any
unnecessary PLT or GOT relocations for defined symbols, and provides
opportunity for GCC to optimize the code better.

Fixes: 78ed343842
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55091
2023-06-20 20:27:45 +02:00
Alexandre Julliard
ac1761d1da loader: Build the preloader as PIE on 64-bit. 2023-06-19 17:32:24 +02:00
Alexandre Julliard
78ed343842 loader: Force building the main loader as PIE on 64-bit.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55050
2023-06-19 17:30:45 +02:00
Tim Clem
6b0836e3f1 loader: Reserve some space for 32-bit top-down allocations on 64-bit. 2023-05-31 22:50:10 +02:00
Hans Leidekker
956e580f06 wine.inf: Use FLG_ADDREG_NOCLOBBER for CurrentMajor/MinorVersionNumber.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54844
2023-04-17 18:55:41 +02:00
Sven Baars
cabd68728d wine.inf: Put the Clients key in the right place. 2023-03-29 22:29:37 +02:00