Commit graph

164884 commits

Author SHA1 Message Date
Rémi Bernon d1f9aae599 imm32/tests: Test how deleting a character can behave. 2023-06-20 20:30:26 +02:00
Eric Pouech 5efe29edc0 dbghelp: Implement SymSrvGetFileIndexInfo for PE modules.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-06-20 20:29:53 +02:00
Eric Pouech 4d32b2ee30 dbghelp/tests: Add tests for SymSrvGetInfoIndexes.
Tests related to debug directories.
Extending the PE image generator with debug directories.

Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2023-06-20 20:29:52 +02:00
Eric Pouech 954f302f70 dbghelp/tests: Add tests for SymSrvGetIndexesInfo.
Tests on PE image (header part, no debug directory).
Add infrastructure to generate PE image (derived from
kernel32/tests/loader.c).

Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2023-06-20 20:29:49 +02:00
Eric Pouech 1f437ed89a dbghelp: Create implementation basis for SymSrvGetFileIndex*().
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-06-20 20:29:48 +02:00
Eric Pouech 20f6b54019 include/dbghelp.h: Added some missing definitions.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-06-20 20:29:45 +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
Nikolay Sivov 05aa740787 oleaut32: Trace typelib guid in GetRecordInfoFromGuids(). 2023-06-20 20:27:38 +02:00
Nikolay Sivov fb083f4f37 oleaut32/recinfo: Use CoTaskMem* allocations for the record data. 2023-06-20 20:27:37 +02:00
Nikolay Sivov d9d665705e oleaut32/recinfo: Use CRT allocation functions. 2023-06-20 20:27:36 +02:00
Alex Henrie 078f4dcd44 wbemprox: Fix memory leak on error path in enum_key (scan-build). 2023-06-20 20:27:21 +02:00
Alexandre Julliard c938f92e4c wordpad: Use nameless unions/structs. 2023-06-20 15:58:05 +02:00
Alexandre Julliard 35299b39cb winhlp32: Use nameless unions/structs. 2023-06-20 15:58:05 +02:00
Alexandre Julliard 6c9246e022 winemenubuilder: Use nameless unions/structs. 2023-06-20 15:58:05 +02:00
Alexandre Julliard 63f94c4925 winefile: Use nameless unions/structs. 2023-06-20 15:58:05 +02:00
Alexandre Julliard f20710d9b3 winedbg: Use nameless unions/structs. 2023-06-20 15:58:05 +02:00
Alexandre Julliard 4368bd8e60 winecfg: Use nameless unions/structs. 2023-06-20 15:58:05 +02:00
Rémi Bernon c47c4d54bd winegstreamer: Lazily allocate wg_allocator unix memory. 2023-06-19 22:51:05 +02:00
Rémi Bernon ca03b68cf4 winegstreamer: Move release_memory_sample helper around. 2023-06-19 22:51:05 +02:00
Rémi Bernon ca20e06051 winegstreamer: Remove the callback mechanism from wg_allocator. 2023-06-19 22:51:05 +02:00
Rémi Bernon 59dedf2754 winegstreamer: Remove colorimetry and chroma-site from wg_format caps.
They are set by default and will force color conversions we may not
want in the wg_transform videoconvert.
2023-06-19 22:50:55 +02:00
Connor McAdams 41f07a8a0f uiautomationcore: Implement UiaEventAddWindow.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-06-19 22:50:45 +02:00
Connor McAdams 92623ccdf0 uiautomationcore: Add support for advising providers of events on serverside events.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-06-19 22:50:45 +02:00
Connor McAdams 2da4d47b5d uiautomationcore: Prevent creation of duplicate serverside events.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-06-19 22:50:45 +02:00
Connor McAdams 549a276c32 uiautomationcore: Add support for creating serverside events.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-06-19 22:50:45 +02:00
Connor McAdams fa02af30e6 uiautomationcore/tests: Add tests for cross-process events.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-06-19 22:50:45 +02:00
David Kahurani 101bcc221d gdiplus: Allow NULL format in GdipAddPathString.
GdipAddPathString accepts NULL for format and presumably uses
the default format for formating

Signed-off-by: David Kahurani <k.kahurani@gmail.com>
2023-06-19 21:10:17 +02:00
Alex Henrie 29d543d12a advpack: Check the return value of adv_install in DoInfInstallW (scan-build). 2023-06-19 17:43:19 +02:00
Alex Henrie 2455229549 conhost: Use correct pointer type in edit_line_transpose_words (scan-build). 2023-06-19 17:42:16 +02:00
Olivier F. R. Dierick 58e81212fc ntoskrnl.exe: Add Ke386QueryIoAccessMap stub.
Simply print a FIXME, instead of triggering the display of a terminal window to show 'call to unimplemented function' debugging info.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54380
2023-06-19 17:41:28 +02:00
Alexandre Julliard ac1761d1da loader: Build the preloader as PIE on 64-bit. 2023-06-19 17:32:24 +02:00
Alexandre Julliard c55578f3a5 loader: Always build the main loader as PIE if we have a preloader. 2023-06-19 17:30:45 +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
Alexandre Julliard 718068c42c include: Disallow fastcall functions in Unix libraries. 2023-06-19 16:28:54 +02:00
Alex Henrie 0a07f5984e wininet: Don't overallocate in urlcache_encode_url_alloc (scan-build).
The URL is encoded in UTF-8, not UTF-16.
2023-06-19 16:28:54 +02:00
Alex Henrie b97b2fbf00 urlmon: Don't export urlmon_instance. 2023-06-19 16:28:54 +02:00
Davide Beatrici cafed10a11 wineoss: Use mmdevapi's stream_release. 2023-06-19 16:28:54 +02:00
Davide Beatrici def6e1c77d winecoreaudio: Use mmdevapi's stream_release. 2023-06-19 16:28:54 +02:00
Davide Beatrici d49a6b773e winealsa: Use mmdevapi's stream_release. 2023-06-19 16:28:54 +02:00
Davide Beatrici 959dd9a9a3 winepulse: Move stream_release into mmdevapi. 2023-06-19 16:28:54 +02:00
Alex Henrie add5c43fdb hhctrl: Initialize item->items to NULL in parse_index_sitemap_object (scan-build).
Initializing to NULL makes it more clear that the initial value is only
used as a parameter to realloc.
2023-06-19 16:28:54 +02:00
Alex Henrie 47e044b81d comctl32: Remove duplicate declarations of MONTHCAL functions.
MONTHCAL_MonthLength and MONTHCAL_CalculateDayOfWeek are already
declared in dlls/comctl32/comctl32.h.
2023-06-19 16:28:54 +02:00
Alex Henrie 15c00627ee comdlg32: Don't use GetProcAddress for SHSimpleIDListFromPath.
The function is exported by name from shell32 and declared in a public
header.
2023-06-19 13:18:01 +02:00
Fabian Maurer 2c235b6fe4 gdiplus: Refactor and add comments for easier understanding.
Hopefully useful for people like me who had a hard time understanding
what was going on. Especially with the rearranged divison and the
simplification I had a hard time seeing why that does what it does

Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
2023-06-19 13:17:24 +02:00
Andrey Gusev a5ea2c57c9 include: Add flags in D3D11_RESOURCE_MISC_FLAG. 2023-06-19 13:17:13 +02:00
Jactry Zeng 7a353e15f6 atl: Convert REG_DWORD to a correct type. 2023-06-19 13:16:05 +02:00
Jactry Zeng 6468ffd8bb atl/tests: Move regular DWORD tests into a loop. 2023-06-19 13:16:05 +02:00
Alex Henrie f9785543a8 combase: Don't export hProxyDll or rpc_execute_call. 2023-06-19 13:15:31 +02:00
Zebediah Figura e8b0e7c1fc xaudio2/tests: Fix the IID_IXAudio28 declaration.
This was accidentally copied from the 2.9 version instead in 14c44d0b0.
2023-06-19 13:15:25 +02:00
Rémi Bernon 8d2de5dbe1 win32u: Use a specific flag instead of shrinking the clip rect.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55047
2023-06-16 21:42:44 +02:00