Commit Graph

600 Commits

Author SHA1 Message Date
Alexandre Julliard 8ccb24b151 ntdll: Move user/system locale initialization to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-23 18:42:13 +01:00
Zebediah Figura 26a3690796 kernelbase: Do not parse the hostname of internet URLs if they are missing a double slash.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-23 18:42:13 +01:00
Zebediah Figura a110b2e68e kernelbase: Do not parse username, password, and port separately for file URLs in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-23 18:42:13 +01:00
Zebediah Figura c2daf4f01e kernelbase: Do not allow schemes to be less than two characters in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-23 18:42:13 +01:00
Zebediah Figura a521bfd3f4 kernelbase: Do not return S_FALSE from UrlGetPartW().
Only return it from UrlGetPartA().

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-23 18:42:13 +01:00
Alistair Leslie-Hughes aa2851f167 kernelbase: Trace not supported flags in CopyFileExW.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 22:42:33 +01:00
Paul Gofman d67129a777 kernelbase: Use FILE_LIST_DIRECTORY instead of GENERIC_READ in FindFirstFileExW().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-18 17:36:57 +01:00
Paul Gofman b3132be819 kernelbase: Query FileStandardInformation instead of FileEndOfFileInformation in SetFilePointerEx().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-18 17:36:53 +01:00
Eric Pouech f034084d49 kernelbase: Handle corner case in CreateProcess.
In CreateProcess, if:
- parent isn't attached to a console
- CreateProcess's flag isn't set with DETACHED_PROCESS nor
  CREATE_NEW_CONSOLE
- child is a CUI program
then a console must be allocated for the child.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52048
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-17 21:06:10 +01:00
Daniel Lehman a5d14fa980 kernelbase: Check for invalid value in FileTimeToSystemTime.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-16 21:16:21 +01:00
Francois Gouget 082c647e68 kernelbase: Add a trailing linefeed to a couple of FIXME() messages.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-15 18:05:28 +01:00
Gijs Vermeulen 205a9322f1 kernelbase: Add PathMatchSpecExA/W.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52645
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-14 18:30:28 +01:00
Eric Pouech 68b4ffebfb kernelbase: Return key state in ReadConsoleW with control.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-01 22:41:15 +01:00
Eric Pouech ef8d44e58e kernelbase: Support CONSOLE_READCONSOLE_CONTROL in ReadConsoleW.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-01 22:41:15 +01:00
Eric Pouech c0096afdb7 kernelbase/tests: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-28 10:32:37 +01:00
Alexandre Julliard 77973e7e72 kernelbase: Implement IsApiSetImplemented().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-22 18:20:23 +01:00
Alexandre Julliard 4a5a3ba702 kernel32: Move some more console functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 11:03:22 +01:00
Zebediah Figura 439600d5ce kernelbase: Prepend the scheme even if the requested URL part is empty.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-17 09:07:07 +01:00
Zebediah Figura 91ae5ffe08 kernelbase: Allow schemes to contain uppercase characters in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-17 09:07:07 +01:00
Zebediah Figura 6cb1264585 kernelbase: Get rid of the "size" and "type" arguments to scan_url().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-17 09:07:07 +01:00
Zebediah Figura b72f7afc8b kernelbase: Allow the two initial slashes to be backslashes in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-17 09:07:07 +01:00
Zebediah Figura 224d073388 kernelbase: Return E_INVALIDARG when requesting URL_PART_PORT and there is no port.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 08:21:11 +01:00
Zebediah Figura 67ea5ccc6b kernelbase: Return E_INVALIDARG when requesting URL_PART_PASSWORD and there is no password.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 08:21:08 +01:00
Zebediah Figura 68323afa08 kernelbase: Return E_INVALIDARG when requesting URL_PART_USERNAME and there is no username.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 08:21:04 +01:00
Zebediah Figura a3d67465d8 kernelbase: Return void from parse_url().
If we cannot parse a scheme, the entire parsed_url structure will be zero, in
which case we will always return S_FALSE from UrlGetPartW().

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 08:20:07 +01:00
Zebediah Figura 77ac962ded kernelbase: Parse query strings even without a slash after the host in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 08:20:00 +01:00
Zebediah Figura c57992f8dc kernelbase: Do not return the question mark as part of the query string from UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 10:36:08 +01:00
Zebediah Figura 932daf59c3 kernelbase: Allow usernames and passwords to contain any characters in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 10:36:04 +01:00
Zebediah Figura 0b9b73d6ef kernelbase: Allow ports to contain any characters in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 10:36:00 +01:00
Zebediah Figura 4ff109c3d6 kernelbase: Allow hostnames to contain any characters in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 10:35:56 +01:00
Zebediah Figura ef64aea701 kernelbase: Also return E_FAIL when trying to parse username, password, or port for non-Internet URLs.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 10:35:52 +01:00
Zebediah Figura 1747b0b1d5 kernelbase: Do not initialize output params on failure in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 11:04:19 +01:00
Zebediah Figura 0df41c3535 kernelbase: Also parse hostnames for news schemes in UrlGetPart().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 11:04:19 +01:00
Zebediah Figura 05e82ba113 kernelbase: Ignore URL_PARTFLAG_KEEPSCHEME for file URLs.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 11:04:19 +01:00
Zebediah Figura 2db68d8191 kernelbase: Ignore URL_PARTFLAG_KEEPSCHEME when used with URL_PART_SCHEME or URL_PART_QUERY.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 11:04:19 +01:00
Zebediah Figura 149b6869a2 kernelbase: Include the null terminator in the length passed to WideCharToMultiByte() in UrlGetPartA().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-14 11:04:19 +01:00
Eric Pouech 2dcfe06442 kernelbase: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-11 11:21:29 +01:00
Hugh McMaster 27df7f518c kernelbase: Implement SetCurrentConsoleFontEx.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-10 10:47:05 +01:00
Eric Pouech 3a7a612776 kernelbase: Removed useless casts to long.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-01 18:23:19 +01:00
Zebediah Figura d0ed0b676c kernelbase: Use ntdll ctype functions.
These were open-coded in 5933c2a690, but there's
no reason not to use the ASCII versions from ntdll.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-31 18:38:54 +01:00
Zebediah Figura 628f2a1e56 kernelbase: Use wcsnlen().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-31 18:38:54 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Nikolay Sivov c89ce41ec9 version: Use same Windows 10 build number for version information.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
André Zwing 34841c0148 kernel32: Fix GetCompressedFileSize[AW] spec file entries.
Signed-off-by: André Zwing <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-10 11:38:22 +01:00
André Zwing 25e1fcc563 kernelbase/tests: Don't test functions directly when reporting GetLastError().
Signed-off-by: André Zwing <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-29 13:43:29 +01:00
Keno Fischer d96975d649 kernel32: Fix CancelIoEx return value.
In commit 27ecc6ba5 ("ntdll: Fix iosb handling in NtCancelIoFile()"),
NtCancelIoFile(Ex) was updated to return its status rather than
unconditionally setting it in io_status->u.Status (though the write
was retained in the success case). As a result, in the error case,
the kernelbase wrappers now interpret unitialized memory as an error
code, since io_status->u.Status is never written.

Signed-off-by: Keno Fischer <keno@juliacomputing.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-23 10:50:10 +01:00
Eric Pouech 488a00c3be kernelbase: Don't hardcode magic constants.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-20 10:15:06 +01:00
Alexandre Julliard f08eb97c48 kernelbase/tests: Fix some test failures on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-16 18:15:52 +01:00
Alexandre Julliard 8125687441 ntdll: Fix the RtlCreateTimer() argument order.
Found by Dávid Török.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-14 21:48:44 +01:00
Mohamad Al-Jaf a866e9150e kernelbase: Add CreateBoundaryDescriptorW stub.
Needed for IE11 iertutil.dll.

Signed-off-by: Mohamad Al-Jaf <mohamadaljaf@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00