Commit Graph

615 Commits

Author SHA1 Message Date
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
Matteo Bruni f91fa37221 wpp: Properly free defines (Valgrind). 2014-06-25 11:32:23 +02:00
Alexandre Julliard 500bbb3e9a libwine: Update the codepage tables to Unicode 7.0.0. 2014-06-23 16:41:52 +02:00
Frédéric Delanoy 0f2bed51bd Assorted spelling fixes. 2014-02-10 15:47:29 +01: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
Stefan Dösinger 9138dce367 libport: Include stdlib.h on MSVC for getenv. 2013-12-19 17:30:29 +01:00
Alexandre Julliard 3bcad54fc6 makefiles: Generate individual .gitignore files corresponding to the build targets. 2013-12-16 12:02:37 +01:00
Francois Gouget e4856dbb70 libport: Add an isfinite() implementation for Solaris. 2013-11-29 17:58:40 +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