Commit Graph

754 Commits

Author SHA1 Message Date
Francois Gouget bda70216a6 wpp: Standardize the error and warning messages.
Use lowercase 'error:' and 'warning:' prefixes like other tools so the
messages can be recognized by standard tools.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:42:30 +02:00
Alexandre Julliard d87d4a4a04 unicode: Store data for CT_CTYPE3 types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 11:26:47 +01:00
Alexandre Julliard b83af7c763 unicode: Update data tables to Unicode 13.0.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 13:23:11 +01:00
Alexandre Julliard b507fe49ea unicode: Use the standard compression function for the casemap table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-18 11:14:58 +01:00
Alexandre Julliard 23cee79d72 libport: Move the composition tables back to libwine and stop updating them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 13:49:05 +01:00
Alexandre Julliard 4dab9bc04b unicode: Move the compatibility decomposition table to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 10:29:47 +01:00
Alexandre Julliard 5b4bdb9fd3 libport: Move the codepage tables back to libwine and stop updating them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:03 +01:00
Alexandre Julliard 831f58caa5 libport: Move the codepage table functions back to libwine and make them obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Alexandre Julliard d81f96a8fc libport: Move wine_cp_wcstombs implementation back to libwine and make it obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Alexandre Julliard 23a50fb0bd libport: Move wine_cp_mbstowcs implementation back to libwine and make it obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Rémi Bernon 7154c8676f wpp: Do not pass NULL %s to fprintf.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 22:39:59 +01:00
Alexandre Julliard cb524e09a6 unicode: Remove some codepages that don't exist on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 14:56:49 +01:00
Alexandre Julliard 09d97e9685 unicode: Use codepage files from Microsoft's Open Specification data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 14:56:49 +01:00
Alexandre Julliard 44ce5d9283 unicode: Support fetching a zip containining the data files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-09 09:48:42 +01:00
Alexandre Julliard d94b605a8a unicode: Add JIS-0212 mappings to the 20932 (EUC-JP) codepage table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-08 12:15:41 +01:00
Alexandre Julliard fd86c85918 libport: Move the collation table back to libwine and stop updating it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:47 +01:00
Alexandre Julliard 599166bd35 libport: Move the digitmap table back to libwine and stop updating it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:40 +01:00
Alexandre Julliard 473914f6a5 libport: Move wine_utf8 functions back to libwine and make them obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:30 +01:00
Alexandre Julliard f4b7260d29 libport: Move wine_cpsymbol functions back to libwine and make them obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:22 +01:00
Alexandre Julliard 5a1e897df7 libport: Move wine_compare_string implementation back to libwine and make it obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:14 +01:00
Alexandre Julliard afd681ebd9 libport: Move wine_fold_string implementation back to libwine and make it obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:04 +01:00
Alexandre Julliard 6346809302 unicode: Move the combining class table to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard 0576fa43c4 unicode: Expand surrogates in decomposition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard cd8eaef47e unicode: Avoid copying the decomposition data when not necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard a646e4e6f2 unicode: Store recursive decompositions directly in the tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard dba4bd756a unicode: Store variable-length sequences also for the main decomposition table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard cc300a20b3 libport: Move Unicode normalization implementation to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 19:20:39 +01:00
Alexandre Julliard c599ec1494 libwine: Make some loader functions obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-29 20:14:54 +01:00
Alexandre Julliard c1dadbcfb1 libwine: Make the debug functions obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-29 20:14:54 +01:00
Alexandre Julliard 39138478fd libwine: Make some functions obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-29 20:14:54 +01:00
Alexandre Julliard f17a228d45 unicode: Try harder to reuse subsequences when compressing data arrays.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:26:13 +01:00
Alexandre Julliard bfeb0a97fe unicode: Use a standard two-level mapping table for the sortkeys map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:25:07 +01:00
Alexandre Julliard 31360d4785 unicode: Use a standard two-level mapping table for the digit map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 18:58:50 +01:00
Alexandre Julliard a08821186a unicode: Use existing helpers to build the sortkeys table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard 4b5c67ee0b unicode: Remove case mappings that don't round-trip.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard 802803a028 libport: Fix the Cygwin build.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47959
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-16 12:00:10 +01:00
Nikolay Sivov 624ed18b1f Update to Unicode 12.1.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:45 +01:00
Alexandre Julliard 7e8f1dac30 kernelbase: Reimplement MultiByteToWideChar() using Win32-format codepage tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Stefan Dösinger 934c02c794 libs/port: Use MSVC intrinsics for interlocked functions.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 20:01:17 +01:00
Alexandre Julliard 4f63971169 libport: Add codepage 28601 (Latin/Thai).
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 18:23:54 +02:00
Alexandre Julliard a9285c5131 make_unicode: Avoid duplicate lead bytes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-06 13:39:53 +02:00
Francois Gouget 896292a7fe libwine: Like Linux, NetBSD has /proc/self/exe.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-03 12:51:23 +02:00
Francois Gouget 728b6fc5e6 libwine: Fully dereference the /proc/self/exe symbolic link.
Linux will do it for us but not NetBSD. That is, if foo is an executable
that prints the path /proc/self/exe points to, on Linux one gets:

$ ./foo
/tmp/foo
$ ln -s foo bar
$ ln -s bar babar
$ /tmp/babar
/tmp/foo

But on NetBSD one gets instead:

$ ./foo
/tmp/./foo
$ ln -s foo bar
$ ln -s bar babar
$ /tmp/babar
/tmp/babar

Fully dereferencing /proc/self/exe is necessary to be able to run both
32 and 64 bit executables from the build tree.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-03 12:51:16 +02:00
Naveen Narayanan 624bcd314c libwine: Only link libi386 with the libraries that need it.
In particular it does not make sense to link executables and dlls built
with MinGW with it.

Signed-off-by: Francois Gouget <fgouget@icodeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-02 20:45:20 +02:00
Alexandre Julliard 918723186b wpp: Get rid of the no longer needed callbacks.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 14:59:40 +02:00
Piotr Caban 324082a8f3 libwine: Fix NORM_IGNORESYMBOLS flag handling in compare_weights.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:11:11 +02:00
Alexandre Julliard 333e6b3c69 make_unicode: Avoid including wine/unicode.h in generated files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Piotr Caban 4a6e69ad3a libwine: Ignore 0 weights as described in Unicode collation algorithm.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Piotr Caban 40a1a9e9a2 libwine: Decompose characters before comparing in wine_compare_string.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Piotr Caban ac5ac588f3 libwine: Add helper function to compare character weights.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Alexandre Julliard d5a372abbb include: Move inline assembly definitions to a new wine/asm.h header.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 13:45:07 +02:00
Nikolay Sivov 13364151a4 tools: Update to Unicode 12.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Alexandre Julliard 44dc9d7383 libwine: Remove some conditional code that was only needed for Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 10:43:57 +02:00
Alexandre Julliard f689c723a2 makefiles: Don't use libwine for Windows builds.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 10:43:57 +02:00
Alexandre Julliard 69da21f120 libport: Add stubs for libwine functions that don't make sense on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 10:43:57 +02:00
Alexandre Julliard f438ff566d ntdll: Remove no longer used debug functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:28:19 +02:00
Alexandre Julliard cf8193df5b include: Make wine_dbg_log() into an inline function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:27:50 +02:00
Alexandre Julliard 9911cfdeae ntdll: Export __wine_dbg_get_channel_flags().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:27:50 +02:00
Alexandre Julliard ddf1ff2f6a include: Make wine_dbg_printf() into an inline function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:27:50 +02:00
Alexandre Julliard f2e6f05fe3 include: Make wine_dbg_sprintf() into an inline function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:27:50 +02:00
Alexandre Julliard 9f75f71899 include: Make wine_dbgstr_an()/wine_dbgstr_wn() into inline functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 19:23:43 +02:00
Alexandre Julliard a37c38191e libport: Don't hide the casemap and wctype tables.
For libwine backwards compatibility.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:20:21 +02:00
Alexandre Julliard c3398b7eab libwine: Move string functions to libwine_port.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 12:45:23 +02:00
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
Alexandre Julliard 7fc9e45dd8 make_unicode: Don't output array sizes that could be over-estimated.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-22 19:45:39 +01:00
Alexandre Julliard d45d751d76 libport: Avoid issues with struct timeval on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 23:52:59 +01:00
Alexandre Julliard fb4c127705 libport: Don't build some functions that aren't needed on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 23:52:59 +01:00
Alexandre Julliard 817fb9755c configure: Hardcode some functions for Windows platforms.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-13 23:40:39 +01:00
Alexandre Julliard 595386250a libwpp: Use __int64 instead of long long.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-13 23:40:39 +01:00
Alexandre Julliard 2ae84d5240 Avoid using Windows includes that are already handled in wine/port.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 20:19:00 +01:00
Alexandre Julliard 47c440a8a9 libport: Remove checks for strerror().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 19:47:35 +01:00
Alexandre Julliard 4fcd86e17d libport: Remove checks for memmove().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 19:47:21 +01:00
Alexandre Julliard cba41d9bfd libport: Remove checks for gettimeofday().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 19:47:21 +01:00
Alexandre Julliard 96b815fcca libport: Simplify configuration checks in getopt.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 19:47:21 +01:00
Alexandre Julliard 25e4cfbdb3 libport: Get rid of memcpy_unaligned().
The code that uses it is no longer built on non-i386.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 19:47:02 +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 2d2e935190 kernel32: Implement canonical composing.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Huw Davies db3ae2ca9f libport: Add support for singleton decomposition.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Huw Davies eceb69e172 libport: Add support for compatibility decomposition.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Huw Davies dc919db2bf kernel32: Implement canonical reordering.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +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
Gabriel Ivăncescu e84c26cec6 libport: Handle partially overlapping buffers.
Cause of bug discovered by Jason Edmeades.

Some applications partially overlap the two buffers, so don't assume they
don't overlap.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38558
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 17:33:38 +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
Jacek Caban bdea31c177 wpp: Skip parsing #if expression if it's ignored anyway.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 10:21:51 +01:00
Michael Stefaniuc a0d4401ddc libs/port: Avoid an ARRAY_SIZE-like macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-08 07:59:00 +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 9d36aad457 libport: Add a replacement implementation for strnlen.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-15 11:00:36 +01: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
Alex Henrie ef104c3a33 libport: Fix typo in rintf.
Spotted by Joris Huizer.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-13 23:02:34 +01:00
Alex Henrie 06d9c7e25e libport: Move rint fallback implementations from msvcrt to libport.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:39:04 +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
Akihiro Sagawa 6938fec4ae libport: Fix null character handling when mapping DBCS characters.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-17 16:43:52 +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
Alexandre Julliard 34174e2ca8 libport: Mark internal functions and data tables as hidden.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 00:25:00 +09:00
Alexandre Julliard 1a16235de1 libport: Mark codepage tables as hidden.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 00:25:00 +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
André Hentschel 3b9f6449cd libport: Fix build on PowerPC. 2015-05-27 14:31:39 +09:00
Grazvydas Ignotas af6066c288 port.h: Make use of compiler support for pointer atomic ops. 2015-05-12 15:45:06 +09:00
Grazvydas Ignotas ae8408f147 port.h: Make use of compiler support for 64bit atomic ops. 2015-05-12 15:45:01 +09:00
Grazvydas Ignotas 4419edd79c port.h: Make use of compiler support for 32bit atomic ops. 2015-05-12 15:44:56 +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
Matteo Bruni b5db97ac51 wpp: Correctly handle OOM in pop_buffer(). 2014-06-26 20:02:03 +02:00
Matteo Bruni 1b79df4e80 wpp: Free some filename strings after processing an include (Valgrind). 2014-06-26 20:00:54 +02:00
Matteo Bruni efcaad3911 wpp: Free the include filename on error (Valgrind). 2014-06-25 11:35:50 +02:00