Commit Graph

406 Commits

Author SHA1 Message Date
Alexandre Julliard a02b23e418 Revert "libwine: Move string functions to libwine_port."
This reverts commit 47242d25f5.
It breaks in modules that import msvcrt because it uses libc
functions.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-29 21:13:43 +01:00
Alexandre Julliard 47242d25f5 libwine: Move string functions to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-27 16:51:26 +01:00
Alexandre Julliard 84cd904334 libwine: Move collation table to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-24 10:34:46 +01:00
Alexandre Julliard 9de388258f libwine: Move casemap tables to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-24 10:34:44 +01:00
Alexandre Julliard a67dca1bc8 libwine: Move wctype tables to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-23 13:45:52 +01:00
Ken Thomases abfa6784ab libwine: On Mac, don't manually exclude the stack when reserving above the user space limit.
Since we don't rely on trial and error, there's no advantage to this heuristic.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 19:03:59 +01:00
Ken Thomases 4a89dd1b4d libwine: On Mac, use Mach APIs to enumerate address space holes instead of using trial and error.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 19:03:57 +01:00
Ken Thomases 91d5d56748 libwine: On Mac, use a more capable Mach function to map memory and avoid calling mmap() in some cases.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 19:03:55 +01:00
Brendan McGrath 5d577ae9ea libwine: get_sortkey to return consistent length with and without dstlen.
Signed-off-by: Brendan McGrath <brendan@redmandi.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 20:42:41 +01:00
Huw Davies e4a9e2ff2e kernel32: Initial support for canonical decomposition in NormalizeString().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Ken Thomases ecd53057b5 libwine: On Mac, disable ASLR for Wine processes.
ASLR can allow dyld to be loaded where it overlaps one of the regions that the
preloader would like to reserve.  That, in turn, can prevent Wine from using the
shared user data region.  With ASLR disabled, dyld will be loaded immediately
after the preloader, which has a defined base address.

This uses an Apple extension to posix_spawn() that allows it to replace the
calling process's image, like a more featureful execve().  The flag to disable
ASLR is technically private SPI, but has remained stable for many versions of
the OS.  And the Mac preloader is already stepping over that line.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-04 15:39:36 +01:00
Denil Verghese 86bab890dd libwine: Fix missing semi-colon.
Signed-off-by: Denil Verghese <denilverghese@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-06 17:01:09 +01:00
Alexandre Julliard 05fa21e188 makefiles: Remove some unused variables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-05 10:47:05 +01:00
Sebastian Lackner a0ab2a7b0c loader: Implement preloader for macOS.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 11:10:09 +01:00
Michael Müller 9fd13a1a5e libwine: Do not restrict base address of main thread on 64 bit mac os.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 10:46:38 +01:00
Alexandre Julliard 493129d638 libwine: Look for the 64-bit wineserver using the 64-bit loader symlink.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 13:24:19 +01:00
Alexandre Julliard 27254d849b libwine: Add a helper function to read a symlink.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 13:10:15 +01:00
Alexandre Julliard d84de4ca00 makefiles: Support specifying installed files in the top-level makefile.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 14:48:04 +01:00
Michael Stefaniuc 93acf3a695 libs/wine: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-25 20:37:06 +02:00
Chip Davis bdca749f7b libwine: Use getsegmentdata(3) on Mac OS to find the end of the __TEXT segment.
Don't assume it ends with the fake PE header. This assumption doesn't
hold on Mac OS: the __data section where it was placed is located after
several other sections, all in the __DATA segment.

Unfortunately, this causes Wine, when DEP/NX is turned off, to override
the page protections for the start of the __DATA segment, removing write
permission from them, leading to a crash when winemac.drv attempted to
use an Objective-C class for the first time.

Also, be sure to include the zero-fill (i.e. BSS) sections in the total
size of the .data section. This should fix some tests that use large
uninitialized arrays.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:12:38 +02:00
Nikolay Sivov d4eeb162bb tools: Update to Unicode 11.0.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-03 12:01:40 +02:00
Alexandre Julliard ec14c220d2 libwine: Print thread id by default in all traces.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-25 11:43:11 +01:00
André Hentschel b0fc60d279 libwine: Reserve memory areas for ARM64 in case we don't have a preloader.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-17 10:28:44 +01:00
Alexandre Julliard 20d13d0b78 libwine: Also apply the load delta to the FirstThunk table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 15:41:43 +02:00
Jens Reyer b736dbe933 make_unicode: Update data tables to Unicode 10.0.0.
Signed-off-by: Jens Reyer <jre.winesim@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 11:44:41 +02:00
Alexandre Julliard 4ee9bbc889 libwine: Fall back to the WINELOADER path for the bin directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 13:38:00 +02:00
Alexandre Julliard 56b14d637f libwine: Add a helper function to set the dll directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 13:37:25 +02:00
Alexandre Julliard 161f3fc417 libwine: Add a helper function to set the bin directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 13:32:38 +02:00
Alexandre Julliard 98860707bc libwine: Handle WINEDEBUGLOG variable on Android to specify a log file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-30 21:49:49 +02:00
Alexandre Julliard 5142e56aee libwine: Clear the %fs register we got from Android to force allocating a new one.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-21 22:06:52 +02:00
Alexandre Julliard 2b1b7a0a80 libwine: Set a non-null entry for the GDT selector to make sure it's properly reserved.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-21 18:55:17 +02:00
Nikolay Sivov 58e0972c5c Update data tables to Unicode 9.0.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:09:28 +09:00
Alexandre Julliard 877a4a733f libwine: Don't include backwards compatibility functions on Android.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-14 19:28:51 +09:00
Hugh McMaster a9fb9ac657 libwine: strtoulW and strtolW should set errno to ERANGE if an overflow will occur.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:21 +09:00
Alexandre Julliard 3602962275 makefiles: Generate dependencies for static libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 19:38:37 +09:00
Alexandre Julliard 2afa8f0c4c makefiles: Get rid of libwine_static.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 19:38:37 +09:00
Alexandre Julliard 52333e9c5d libwine: Move the wide char to multi-byte conversion functions to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 11:49:48 +09:00
Alexandre Julliard f7368aaa97 libwine: Move the multi-byte to wide char conversion functions to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 11:48:09 +09:00
Alexandre Julliard faf3871e77 libwine: Generate the composition tables access code along with the tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 11:38:14 +09:00
Alexandre Julliard a951d53394 libwine: Move the decomposition table to a separate file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 11:34:02 +09:00
Alexandre Julliard 18699623b3 libwine: Move the CP_SYMBOL conversion functions to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 00:49:10 +09:00
Alexandre Julliard 2087f38e84 libwine: Move the codepage tables to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 00:49:10 +09:00
Alexandre Julliard fa84ea2555 libwine: Move the wine_fold_string implementation to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 00:49:10 +09:00
Alexandre Julliard d59d45e457 libwine: Move the digit folding tables to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 00:49:09 +09:00
Charles Davis b5f210ddc9 libwine: Define some functions only on i386 (Clang).
Signed-off-by: Charles Davis <cdavis5x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-16 23:26:30 +09:00
Dmitry Timoshkov dfbbd55af7 kernel32: CompareStringW should abort on the first nonmatching character to avoid an invalid memory access.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:06:55 +09:00
Alexandre Julliard 6203373496 libwine: Map partial DBCS characters to the default char.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 13:46:48 +09:00
Alexandre Julliard dec6a946d3 makefiles: Replace the libwine makefile rules by variable declarations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-13 22:24:53 +09:00
Alexandre Julliard 1fa7710ff9 makefiles: Get rid of the DLLPREFIX variable.
Android libraries will be handled differently.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 12:12:58 +09:00
Alexandre Julliard 90d66cc874 makefiles: Only define the dummy target in makefiles that need it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-22 21:36:15 +09:00
Alexandre Julliard d197252fb3 libwine: Pass the correct length to GetStringUTFRegion.
Spotted by Jactry Zeng.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-20 00:30:36 +09:00
Nikolay Sivov e8c1cf4402 Update data tables to Unicode 8.0.0. 2015-10-02 15:37:05 +09:00
Nikolay Sivov a7e294c064 libwine: Fix double byte default char initialization. 2015-09-11 20:58:04 +09:00
Jacek Caban 719a7d32c5 ntdll: Added new pid debug channel to append process id to debug output. 2015-08-25 21:13:22 +09:00
Alexandre Julliard a6a9b05dee libwine: No longer look for libraries in the dll path on Android. 2014-07-24 09:25:21 +02:00
Alexandre Julliard 8478cece69 libwine: Update LD_LIBRARY_PATH in the current process from the JNI environment. 2014-07-24 09:24:49 +02:00
Alexandre Julliard 500bbb3e9a libwine: Update the codepage tables to Unicode 7.0.0. 2014-06-23 16:41:52 +02:00
Alexandre Julliard cf0e96c6d0 configure: Rename substituted variables to a standard _CFLAGS and _LIBS format. 2014-01-30 14:51:33 +01:00
Alexandre Julliard 509364e1dd makefiles: Get rid of Make.rules. 2014-01-14 12:18:02 +01:00
Alexandre Julliard 0d533cf0bd makefiles: Allow define arguments to be specific to a single file. 2014-01-07 12:20:25 +01:00
André Hentschel 02e6f7d146 libwine: Added LDT support for GNU/Hurd.
Based on a patch by Andrew Nguyen.
2014-01-06 17:10:05 +01:00
Alexandre Julliard ce25c89585 makedep: Don't expand variable references that use ${}. 2014-01-04 20:33:57 +01:00
Alexandre Julliard e9afeb2a50 makefiles: Automatically add dll flags where necessary. 2014-01-01 21:33:06 +01:00
Alexandre Julliard d822f32a4f makefiles: Define libwine soversion from configure. 2013-12-31 19:25:54 +01:00
Alexandre Julliard 1047e0474d makefiles: Leave it to install-sh to create destination directories. 2013-12-26 14:35:15 +01:00
Alexandre Julliard 067d3f0ddb makefiles: Merge the relpath functionality into makedep. 2013-11-09 12:32:06 +01:00
Alexandre Julliard 3571c06799 makefiles: Generate explicit build rules for C source files from makedep. 2013-10-28 11:16:11 +01:00
Ken Thomases e577e4b3e6 libwine: Fix a potential write through a null pointer. (Clang). 2013-10-21 10:47:22 +02:00
Alexandre Julliard 13479aa7b8 tools: Update the character data tables to Unicode 6.3.0. 2013-10-15 16:09:16 +02:00
Alexandre Julliard e318b4a59c makefiles: Move the static library rules to the global Make.rules file. 2013-10-09 11:25:04 +02:00
Alexandre Julliard 8d5b8b1346 makefiles: Define __WINESRC__ globally. 2013-10-07 10:48:04 +02:00
Alexandre Julliard a60ebd3ade makefiles: Link libwine statically into the tools to avoid run-time path dependencies. 2013-10-04 17:46:22 +02:00
Alexandre Julliard c30923f25b libwine: Add JNI initialisation support to start Wine from an Android activity. 2013-10-01 17:32:17 +02:00
Alexandre Julliard 8355887560 makefiles: Clean files from the top-level makefile where possible. 2013-09-30 20:34:53 +02:00
Alexandre Julliard 626be2eab1 libwine: Look for all libraries in the dll search path on Android. 2013-09-26 18:15:12 +02:00
Alexandre Julliard a83c598c79 makefiles: Add support for specifying a prefix for installed library file names. 2013-09-26 14:35:45 +02:00
Alexandre Julliard 2b2bf64d3b libwine: Put the server directory inside the wineprefix on Android. 2013-09-16 12:51:11 +02:00
Alexandre Julliard 876189a405 libwine: Don't add a user id to the server directory if not supported. 2013-09-16 12:43:07 +02:00
Alexandre Julliard 16c8ca8082 libwine: Use the argv[0] directory as bin directory only if all other methods fail. 2013-09-16 12:34:44 +02:00
Alexandre Julliard 4be4ad8278 libwine: Add support for codepage 10005 (Mac Hebrew). 2013-08-19 19:02:01 +02:00
Alexandre Julliard 23ddde8850 libwine: Add support for codepage 10004 (Mac Arabic). 2013-08-19 19:00:55 +02:00
Alexandre Julliard 4f718ca07d libwine: Add support for defining round-trip mappings using the Unicode private range. 2013-08-19 18:59:40 +02:00
Alexandre Julliard 194c43ac30 libwine: Compress code page tables by merging identical sequences. 2013-07-22 17:16:02 +02:00
Alexandre Julliard 6cb5cf183a libwine: Update the codepage tables to Unicode 6.2.0. 2013-07-22 17:16:01 +02:00
Alexandre Julliard 4be0f88e8d libwine: Use the best fit data for codepage 1361. 2013-07-22 17:16:00 +02:00
Alexandre Julliard 5fbb68769a libwine: Fix the default Unicode character for codepage 20932. 2013-07-22 17:16:00 +02:00
Alexandre Julliard 89a54082be libwine: Fix the default character for EBCDIC codepages. 2013-07-22 17:15:59 +02:00
Alexandre Julliard 2db2303bbc libwine: Add support for codepage 10082 (Mac Croatian). 2013-06-26 17:57:28 +02:00
Alexandre Julliard 085eda4e2d libwine: Add support for codepage 10021 (Mac Thai). 2013-06-26 17:56:26 +02:00
Alexandre Julliard 0928012251 libwine: Add support for codepage 10017 (Mac Ukrainian). 2013-06-26 17:55:31 +02:00
Alexandre Julliard ee34072cfb libwine: Add support for codepage 10010 (Mac Romanian). 2013-06-26 17:54:16 +02:00
Alexandre Julliard 1aebebaf72 libwine: Add support for codepage 10008 (Mac Simplified Chinese). 2013-06-26 17:52:31 +02:00
Alexandre Julliard 701d5efdef libwine: Add support for codepage 10003 (Mac Korean). 2013-06-26 17:50:04 +02:00
Alexandre Julliard c90c593288 libwine: Add support for codepage 10002 (Mac Traditional Chinese). 2013-06-26 17:47:17 +02:00
Alexandre Julliard aa23d6ecc6 libwine: Add support for codepage 10001 (Mac Japanese). 2013-06-26 17:42:33 +02:00
Alexandre Julliard ce4b6451aa configure: Add explicit install targets in libs/wine for make_makefiles. 2013-05-10 22:01:44 +02:00
Alexandre Julliard 54244470f3 makefiles: Generate the platform-specific libwine rules from configure. 2013-05-01 13:33:39 +02:00
Dmitry Timoshkov e2791cdfb1 include: Make IMAGE_RESOURCE_DIRECTORY_ENTRY match PSDK definition. 2013-04-29 13:33:54 +02:00
Ken Thomases 304463b4e1 libwine: Add libwine's directory (@loader_path) to rpath. 2013-04-16 12:10:24 +02:00
Ken Thomases cf73350d9f loader: On Mac, if Wine is already on secondary thread, don't reserve it for the system frameworks. 2013-04-16 12:05:22 +02:00