23 months ago[TRANSLATION] Hindi translation of the shell extensions. (#1405)
Arnav Bhatt [Mon, 11 Mar 2019 15:52:21 +0000 (21:22 +0530)]
[TRANSLATION] Hindi translation of the shell extensions. (#1405)

23 months agoMerge pull request #1412 from njlyf2011/improve-zh-translation
Luo Yufan [Mon, 11 Mar 2019 15:50:17 +0000 (23:50 +0800)]
Merge pull request #1412 from njlyf2011/improve-zh-translation

[TRANSLATION] Update Traditional Chinese translation

23 months ago[EXPLORER] Show the Desktop Russian translation update
Oleg Dubinskiy [Mon, 11 Mar 2019 14:07:34 +0000 (16:07 +0200)]
[EXPLORER] Show the Desktop Russian translation update

23 months ago[USBUHCI_NEW] Fix an infinite loop. 1392/head
Thomas Faber [Wed, 6 Mar 2019 09:20:39 +0000 (10:20 +0100)]
[USBUHCI_NEW] Fix an infinite loop.

23 months ago[USBPORT] Implement interface setting in USBPORT_OpenInterface.
Thomas Faber [Wed, 6 Mar 2019 08:59:41 +0000 (09:59 +0100)]
[USBPORT] Implement interface setting in USBPORT_OpenInterface.

23 months ago[USBPORT] Correctly handle alternate settings returned from USBPORT_ParseConfiguratio...
Thomas Faber [Wed, 6 Mar 2019 08:57:23 +0000 (09:57 +0100)]
[USBPORT] Correctly handle alternate settings returned from USBPORT_ParseConfigurationDescriptor.

The last parameter of USBPORT_ParseConfigurationDescriptor is a pointer
to a boolean indicating whether any alternate interface settings were
found for the specified interface.
Interpreting it as an alternate setting value, as we did before,
would always override the alternate setting to '1' (if any alternate
descriptors were present), therefore selecting the wrong interface
setting, and possibly causing a buffer overflow on the InterfaceList's
Pipes array.

Found by Special Pool.

23 months ago[USBPORT] Correctly find interface descriptor in USBPORT_ParseConfigurationDescriptor
Thomas Faber [Wed, 6 Mar 2019 08:22:55 +0000 (09:22 +0100)]
[USBPORT] Correctly find interface descriptor in USBPORT_ParseConfigurationDescriptor

There can be other descriptors between the config descriptor and the
first interface descriptor, so we specifically need to check for
the interface descriptor type and skip anything before that.
We also need to guard against bLength == 0, which would cause an
infinite loop, instead of doing a second bDescriptorType check.

23 months ago[USBPORT] Acquire EndpointSpinLock in addition to MiniportSpinLock in USBPORT_ReopenPipe.
Thomas Faber [Wed, 6 Mar 2019 08:23:26 +0000 (09:23 +0100)]
[USBPORT] Acquire EndpointSpinLock in addition to MiniportSpinLock in USBPORT_ReopenPipe.

23 months ago[USBPORT] Release StateChangeSpinLock before acquiring MiniportSpinLock.
Thomas Faber [Tue, 5 Mar 2019 21:27:15 +0000 (22:27 +0100)]
[USBPORT] Release StateChangeSpinLock before acquiring MiniportSpinLock.

Found by Driver Verifier.

23 months ago[USBPORT] Leave IRP status untouched for unhandled interfaces.
Thomas Faber [Tue, 5 Mar 2019 21:23:46 +0000 (22:23 +0100)]
[USBPORT] Leave IRP status untouched for unhandled interfaces.

Found by Driver Verifier.

23 months ago[USBPORT] Don't change the status of IRP_MJ_SYSTEM_CONTROL requests.
Thomas Faber [Tue, 5 Mar 2019 16:28:20 +0000 (17:28 +0100)]
[USBPORT] Don't change the status of IRP_MJ_SYSTEM_CONTROL requests.

Found by Driver Verifier.

23 months ago[USBHUB_NEW] Don't leak IRP_MJ_SYSTEM_CONTROL requests.
Thomas Faber [Wed, 6 Mar 2019 08:21:39 +0000 (09:21 +0100)]

Found by Driver Verifier.

23 months ago[NTOS:IO] Enable privilege check in NtLoadDriver.
Thomas Faber [Tue, 5 Mar 2019 11:33:12 +0000 (12:33 +0100)]
[NTOS:IO] Enable privilege check in NtLoadDriver.

23 months ago[USETUP] Use for-loops; simplify the code.
Hermès Bélusca-Maïto [Tue, 5 Mar 2019 01:00:13 +0000 (02:00 +0100)]
[USETUP] Use for-loops; simplify the code.

23 months ago[SETUPLIB][USETUP] Remove CurrentDisk/Partition from the partlist lib code, and move...
Hermès Bélusca-Maïto [Tue, 5 Mar 2019 00:42:33 +0000 (01:42 +0100)]
[SETUPLIB][USETUP] Remove CurrentDisk/Partition from the partlist lib code, and move these into the UI code.

- Add also some validation ASSERTs and simplify the code here and there.

- The installation partition is called "InstallPartition", while the
  global "CurrentPartition" is the disk region currently selected in
  the partition UI list, on which prtitioning operations are effectued.

- Extend CheckActiveSystemPartition() to use an optional alternative
  disk or partition in case the actual system partition (present in the
  first disk) cannot be used, e.g. because we don't support writes on it.

23 months ago[SETUPLIB] Improve the discovery of the active system partition.
Hermès Bélusca-Maïto [Mon, 25 Feb 2019 22:43:20 +0000 (23:43 +0100)]
[SETUPLIB] Improve the discovery of the active system partition.

CORE-7749, CORE-6305, CORE-13205

23 months ago[NET] Display the country along with the users country code.
Eric Kohl [Sun, 10 Mar 2019 21:00:41 +0000 (22:00 +0100)]
[NET] Display the country along with the users country code.

23 months ago[TRANSLATION] Update Hebrew translations (#1408)
Shy Zedaka [Sun, 10 Mar 2019 18:21:57 +0000 (20:21 +0200)]
[TRANSLATION] Update Hebrew translations (#1408)

23 months ago[USETUP] Improve the formatter & check-disk state machine. CORE-7749
Hermès Bélusca-Maïto [Mon, 25 Feb 2019 19:29:16 +0000 (20:29 +0100)]
[USETUP] Improve the formatter & check-disk state machine. CORE-7749

- Find or set the active system partition only once, when we start the
  formatting stage. If the system partition is to be created in some
  non-partitioned space, we create it.

- A file-system check is always scheduled for both the system and the
  installation partitions.

- If the system partition was already formatted (which usually means
  that it already existed on the system), don't ask for formatting it.


- For each partition to be formatted, the file-system menu list is
  re-created, in order to display only the FSes that are compatible
  with the selected partition, and allow to give the user the choice
  to keep the existing file-system only if the selected partition was
  already formatted.

- Check whether the user attempts to delete the partition on which
  the installation source is present, only if it is not "new" and is

- Check first whether the current partition is the system partition,

23 months ago[SETUPLIB][USETUP] Minor improvements.
Hermès Bélusca-Maïto [Sun, 24 Feb 2019 18:04:57 +0000 (19:04 +0100)]
[SETUPLIB][USETUP] Minor improvements.

- Make some partitioning functions not dependent on the selected "CurrentPartition".
- Add some sanity checks.
- Improve some of the "is-partitioned" checks.

23 months ago[SETUPLIB][USETUP] Factor out the usage of FS provider structures.
Hermès Bélusca-Maïto [Sun, 24 Feb 2019 16:52:33 +0000 (17:52 +0100)]
[SETUPLIB][USETUP] Factor out the usage of FS provider structures.

Similarly to FMIFS this structure should be private. Instead file-system
names are passed to the helper functions, allowing to use the names
returned by the FS drivers. The names are then internally mapped to the
corresponding FS providers.

In particular this allows to handle the "RAW" file-system and to assign
the 'Unformatted' flag to partitions having this FS.

Finally this helps us refining the checks performed to see whether the
current "active" system partition uses a supported file-system.

23 months ago[ACLAYERS] Implement the ForceDXSetupSuccess shim 1399/head
Mark Jansen [Thu, 7 Mar 2019 23:32:20 +0000 (00:32 +0100)]
[ACLAYERS] Implement the ForceDXSetupSuccess shim
This shim is used on older installers that try to install DirectX,
but encounter errors doing so with the bundled setup.

23 months ago[APPSHIM_APITEST] Add tests for ForceDXSetupSuccess
Mark Jansen [Thu, 7 Mar 2019 20:18:52 +0000 (21:18 +0100)]
[APPSHIM_APITEST] Add tests for ForceDXSetupSuccess

23 months ago[ACLAYERS][ACGENRAL] Do not use the crt entrypoint.
Mark Jansen [Tue, 9 Oct 2018 22:19:54 +0000 (00:19 +0200)]
[ACLAYERS][ACGENRAL] Do not use the crt entrypoint.

23 months ago[AFD] Don't reallocate buffers if windows sizes didn't change
Pierre Schweitzer [Sun, 10 Mar 2019 11:27:30 +0000 (12:27 +0100)]
[AFD] Don't reallocate buffers if windows sizes didn't change

23 months ago[WIN32K] Keep a reference on an ETHREAD while THREADINFO exists
Timo Kreuzer [Tue, 13 Mar 2018 22:00:17 +0000 (23:00 +0100)]
[WIN32K] Keep a reference on an ETHREAD while THREADINFO exists

23 months ago[NET] Move the remaining IDS_GENERIC_PAGE strings into the command messages and fix...
Eric Kohl [Sun, 10 Mar 2019 08:55:15 +0000 (09:55 +0100)]
[NET] Move the remaining IDS_GENERIC_PAGE strings into the command messages and fix a size restriction of ConPrintf().

23 months ago[NET] Add help message for the NET USER command and move the IDS_GENERIC_PAGE string...
Eric Kohl [Sun, 10 Mar 2019 07:59:32 +0000 (08:59 +0100)]
[NET] Add help message for the NET USER command and move the IDS_GENERIC_PAGE string into the help messages.

23 months ago[NET] Implement the NET SYNTAX pseudo command.
Eric Kohl [Sun, 10 Mar 2019 00:04:26 +0000 (01:04 +0100)]
[NET] Implement the NET SYNTAX pseudo command.

23 months ago[NET] Fix some 'net help' and 'net user' issues.
Eric Kohl [Sat, 9 Mar 2019 23:30:27 +0000 (00:30 +0100)]
[NET] Fix some 'net help' and 'net user' issues.

23 months ago[NETAPI32] Initialize parm_err
Eric Kohl [Sat, 9 Mar 2019 19:26:00 +0000 (20:26 +0100)]
[NETAPI32] Initialize parm_err

23 months ago[Win32SS] Add TextOut to GDI Batch
James Tabor [Sat, 9 Mar 2019 04:21:41 +0000 (22:21 -0600)]
[Win32SS] Add TextOut to GDI Batch

Add fix ups to PolyPatBlt and freetype.
TextOut supports 580 characters w/o Dx and Dx at a max of 193 characters
with Dx*1, both if offset is 0.

Noticed a lot of over drawing with start menu from ComCtl32 SB_SETTEXT
going through User32 DrawText/Worker ExtTextOutW. Explain why it might
be slowing down.

If issues arise, commenting out lines in win32ss/include/gdi32p.h can

else if (Cmd == GdiBCTextOut) cjSize = 0;//sizeof(GDIBSTEXTOUT); <----
this one most of all.
 else if (Cmd == GdiBCExtTextOut) cjSize = 0;//sizeof(GDIBSEXTTEXTOUT);

Test results:,66262

23 months ago[BOOTDATA] Fix Volgograd time zone (UTC+04:00)
Stanislav Motylkov [Fri, 8 Mar 2019 21:11:00 +0000 (00:11 +0300)]
[BOOTDATA] Fix Volgograd time zone (UTC+04:00)


23 months ago[SHUTDOWN] Small Italian translation update (#1397)
Daniele Campione [Fri, 8 Mar 2019 14:49:56 +0000 (15:49 +0100)]
[SHUTDOWN] Small Italian translation update (#1397)

23 months ago[TRANSLATION] Hindi translation of SYSSETUP AND SAMSRV. (#1400)
Arnav Bhatt [Fri, 8 Mar 2019 14:48:20 +0000 (20:18 +0530)]
[TRANSLATION] Hindi translation of SYSSETUP AND SAMSRV. (#1400)

23 months agoHindi translation of comdlg32. (#1391) 1396/head
Arnav Bhatt [Thu, 7 Mar 2019 09:05:08 +0000 (14:35 +0530)]
Hindi translation of comdlg32. (#1391)

Hindi translation of comdlg32.

23 months ago[WALLPAPER] Add ReactOS Soft Blue (#1376)
Foxlet [Wed, 6 Mar 2019 22:14:08 +0000 (17:14 -0500)]
[WALLPAPER] Add ReactOS Soft Blue (#1376)


23 months ago[WALLPAPERS] Added Silhouette collection (#1383)
polar [Wed, 6 Mar 2019 22:12:18 +0000 (22:12 +0000)]
[WALLPAPERS] Added Silhouette collection (#1383)


23 months ago[ZIPFLDR] Allow the shell extension to extract passworded zip files 1382/head
Mark Jansen [Wed, 27 Feb 2019 21:18:52 +0000 (22:18 +0100)]
[ZIPFLDR] Allow the shell extension to extract passworded zip files

23 months ago[ZLIB] Restore 'uncrypt' functionality in minizip
Mark Jansen [Wed, 27 Feb 2019 21:18:44 +0000 (22:18 +0100)]
[ZLIB] Restore 'uncrypt' functionality in minizip

23 months ago[ZIPFLDR] Move CConfirmReplace to a new file
Mark Jansen [Wed, 27 Feb 2019 21:18:32 +0000 (22:18 +0100)]
[ZIPFLDR] Move CConfirmReplace to a new file

23 months ago[DRWTSN32] Print some extra exception info 1384/head
Mark Jansen [Thu, 28 Feb 2019 22:10:43 +0000 (23:10 +0100)]
[DRWTSN32] Print some extra exception info

23 months ago[NTOS:PS] Use NULL instead of 0 in ps/kill.c
Timo Kreuzer [Thu, 12 Jul 2018 13:18:53 +0000 (15:18 +0200)]
[NTOS:PS] Use NULL instead of 0 in ps/kill.c

23 months ago[PSDK] Use CALLBACK instead of APIENTRY
Timo Kreuzer [Mon, 20 Aug 2018 14:03:08 +0000 (16:03 +0200)]

23 months ago[PSDK] Add missing D3DFORMAT enum members to d3d9types.h
Timo Kreuzer [Sat, 14 Jul 2018 18:04:50 +0000 (20:04 +0200)]
[PSDK] Add missing D3DFORMAT enum members to d3d9types.h

23 months ago[SPEC] Add missing newlines
Timo Kreuzer [Tue, 20 Jun 2017 13:50:01 +0000 (15:50 +0200)]
[SPEC] Add missing newlines

23 months ago[NTOS:KE] Add function comments
Timo Kreuzer [Thu, 12 Jul 2018 13:36:11 +0000 (15:36 +0200)]
[NTOS:KE] Add function comments

23 months ago[NtGDI] Fix crash and simplify code.
James Tabor [Tue, 5 Mar 2019 23:05:23 +0000 (17:05 -0600)]
[NtGDI] Fix crash and simplify code.

Revert previous changes. simplify rendering check.
Fix missed unlocking which caused a crash.

23 months agoMerge branch 'master' of
James Tabor [Tue, 5 Mar 2019 22:03:31 +0000 (16:03 -0600)]
Merge branch 'master' of

23 months ago[NtGDI] Change TextOut
James Tabor [Tue, 5 Mar 2019 22:03:15 +0000 (16:03 -0600)]
[NtGDI] Change TextOut

Separate TextOut for internal use.
Use flTextAlign internally.
Not sure why GetDeviceCap was used for determining rendering. SVN commit
logs are unavailable. Include code from wine that might make more sense.

23 months ago[BOOTDATA] Comment out (but still keep it for documentation purposes only) the overri...
Hermès Bélusca-Maïto [Tue, 5 Mar 2019 21:33:35 +0000 (22:33 +0100)]
[BOOTDATA] Comment out (but still keep it for documentation purposes only) the overridden default user shell, since we use by default the one specified in HKLM Winlogon key.
If people want to override it for a given user, or at a global level, they can do it later.

See CORE-15807

23 months ago[REACTOS] Fix 64 bit issues
Timo Kreuzer [Sun, 6 Jan 2019 22:14:09 +0000 (23:14 +0100)]
[REACTOS] Fix 64 bit issues

23 months ago[LIBTIRPC] Silence MSVC warnings
Timo Kreuzer [Sat, 5 Jan 2019 11:06:17 +0000 (12:06 +0100)]
[LIBTIRPC] Silence MSVC warnings

23 months ago[GDI32] Add casts to silence warnings on x64
Timo Kreuzer [Sun, 13 Jan 2019 14:29:13 +0000 (15:29 +0100)]
[GDI32] Add casts to silence warnings on x64

The cast is required, because FARPROC is only compatible with function pointer types that return INT_PTR and the ones used return int/BOOL.

23 months ago[GDI32] Fix bDDCreateSurface
Timo Kreuzer [Sun, 13 Jan 2019 14:09:57 +0000 (15:09 +0100)]
[GDI32] Fix bDDCreateSurface

23 months ago[DXG] Fix 64 bit build
Timo Kreuzer [Sun, 6 Jan 2019 22:41:52 +0000 (23:41 +0100)]
[DXG] Fix 64 bit build

23 months ago[VGA_NEW] Fix 64 bit issues
Timo Kreuzer [Sun, 13 Jan 2019 14:56:23 +0000 (15:56 +0100)]
[VGA_NEW] Fix 64 bit issues

23 months ago[SACDRV] Fix CHECK_PARAMETER_WITH_STATUS error handling macro
Timo Kreuzer [Sun, 13 Jan 2019 18:23:41 +0000 (19:23 +0100)]

23 months ago[CDROM_NEW] Fix SLIST_ENTRY vs SINGLE_LIST_ENTRY issues
Timo Kreuzer [Mon, 7 Jan 2019 01:59:24 +0000 (02:59 +0100)]

Timo Kreuzer [Tue, 8 Jan 2019 04:17:19 +0000 (05:17 +0100)]

23 months ago[NTOS:EX] Fix 64 bit issues in ExfWaitForRundownProtectionReleaseCacheAware
Timo Kreuzer [Sun, 13 Jan 2019 12:35:51 +0000 (13:35 +0100)]
[NTOS:EX] Fix 64 bit issues in ExfWaitForRundownProtectionReleaseCacheAware

23 months ago[PSDK] Improve definition of CBR_BLOCK
Timo Kreuzer [Sun, 13 Jan 2019 12:42:23 +0000 (13:42 +0100)]
[PSDK] Improve definition of CBR_BLOCK

The cast doesn't exist in native headers, but this causes warnings.

23 months ago[PSDK] Fix PRINTDLG structure definition
Timo Kreuzer [Mon, 7 Jan 2019 01:21:10 +0000 (02:21 +0100)]
[PSDK] Fix PRINTDLG structure definition

23 months ago[MKISOFS] Silence MSVC warnings
Timo Kreuzer [Sun, 6 Jan 2019 16:31:43 +0000 (17:31 +0100)]
[MKISOFS] Silence MSVC warnings

23 months ago[WIDL] Fix non-x86 builds
Timo Kreuzer [Sat, 2 Feb 2019 10:46:19 +0000 (11:46 +0100)]
[WIDL] Fix non-x86 builds

23 months ago[NtGDI] Use flag for text align mode.
James Tabor [Mon, 4 Mar 2019 18:17:00 +0000 (12:17 -0600)]
[NtGDI] Use flag for text align mode.

Use the lTextAlign instead of the user one for internal use.

23 months ago[MSV1_0] Check logon hours and workstation names on logon. Also return the machine...
Eric Kohl [Mon, 4 Mar 2019 16:25:11 +0000 (17:25 +0100)]
[MSV1_0] Check logon hours and workstation names on logon. Also return the machine name on logon and fix the LOGONSERVER environment variable.

23 months ago[SHELL32] Implement SHTestTokenMembership and forward IsUserAnAdmin to it
Ged Murphy [Mon, 4 Mar 2019 11:02:38 +0000 (11:02 +0000)]
[SHELL32] Implement SHTestTokenMembership and forward IsUserAnAdmin to it
Moved to the bottom of the file with the other ros functions to help keep wine syncs easier.

23 months ago[MSV1_0] Export LsaApLogonUserEx2 instead of LsaApLogonUser and remove the outdated...
Eric Kohl [Mon, 4 Mar 2019 09:20:10 +0000 (10:20 +0100)]
[MSV1_0] Export LsaApLogonUserEx2 instead of LsaApLogonUser and remove the outdated logon functions.

23 months ago[LSASRV] LsapLogonUser: Support LsaTokenInformationNull logins.
Eric Kohl [Mon, 4 Mar 2019 00:35:26 +0000 (01:35 +0100)]
[LSASRV] LsapLogonUser: Support LsaTokenInformationNull logins.

23 months ago[MSV1_0] LsaApLogonUser: Pass the Authenticating Authority to the caller.
Eric Kohl [Mon, 4 Mar 2019 00:31:20 +0000 (01:31 +0100)]
[MSV1_0] LsaApLogonUser: Pass the Authenticating Authority to the caller.

23 months ago[DCOMLAUNCH][WMISVC] Stop busy waiting shutdown
Pierre Schweitzer [Sun, 3 Mar 2019 22:14:07 +0000 (23:14 +0100)]
[DCOMLAUNCH][WMISVC] Stop busy waiting shutdown

23 months agoFix the MSVC version of ldexp filling up the FPU stack and bailing out with #IND...
Colin Finck [Fri, 1 Mar 2019 16:49:03 +0000 (17:49 +0100)]
Fix the MSVC version of ldexp filling up the FPU stack and bailing out with #IND after a few calls. Additionally, add it back to libcntpr.

MSVC was previously given a "result" variable to copy the fscale result from st(0). This led to another "fld" FPU stack push at the very end without popping the source value from the FPU stack.
Moreover, this copy isn't even needed: A simple "fstp st(1)" at the end pops an element from the FPU stack while effectively storing the result in st(0), the register used for returning a double value.
This problem didn't affect GCC, as it is only given the "fscale" instruction and does all necessary stack operations itself.

However, looking into the CRT sources, I found many other i386 implementations with inline assembly suffering from the same problem.
Fortunately, they have been replaced by pure assembly implementations a while ago, so it's time to finally remove them.
ldexp would have also been a candidate for a pure assembly implementation, but the required check for NaN and setting errno (verified on Win2003) already outweighs the benefits.
And we cannot just do a NaN check with FUCOMI as this is an i686/pentiumpro instruction while we're still targeting i586/pentium.

I'm also using this opportunity to clean up the ldexp.c header and only put in the remaining contributors as returned by "git blame".

Thanks to NightWolve1975 for reporting the problem! (

23 months ago[DCOMLAUNCH] Add a DcomLaunch service stub
Pierre Schweitzer [Sun, 3 Mar 2019 13:21:46 +0000 (14:21 +0100)]
[DCOMLAUNCH] Add a DcomLaunch service stub

This stub is responsible for providing the UUID seed to the kernel.
For now, it generates a purely random seed - MAC address support
is to be added.
Because it's purely random seed and local the machine (not tied
to the MAC address) it's made so that ExUuidCreate keeps returning
RPC_NT_UUID_LOCAL_ONLY. It won't fix failing test for now.

Nota: this service shouldn't exist as it. It should be implemented
though rpcss DLL for both rpcss service (network service) and
dcomlaunch service (local system service).
Because rpcss is EXE based and wine-synced for now, I prefered
stubbing a new service. This will have to be changed at some point.

23 months ago[SHELL32] Update all languages RCs to fix possible text truncation CORE-15765
Joachim Henze [Sun, 3 Mar 2019 01:23:34 +0000 (02:23 +0100)]
[SHELL32] Update all languages RCs to fix possible text truncation CORE-15765

IDD_BROWSE_FOR_FOLDER displays text controlled by the calling applications in
IDC_BROWSE_FOR_FOLDER_TITLE. Its old height could lead to text truncation
for existing 3rd party apps.
The new height value for IDC_BROWSE_FOR_FOLDER_TITLE
was inspired by IDC with the same from dialog IDD_BROWSE_FOR_FOLDER_NEW.
I could change all languages to the same height,
as dimensions of the dialog and surrounding controls were same.

23 months ago[MSI] In dialogs show titlebar buttons CORE-15301
Joachim Henze [Sun, 3 Mar 2019 00:26:59 +0000 (01:26 +0100)]
[MSI] In dialogs show titlebar buttons CORE-15301

Import the Wine fix;h=84e6b331918d57f39e20a3063b67eb7fc0876288
Many thanks to the fixes author Fabian Maurer.

23 months ago[TASKMGR] Update german rc to avoid text truncation in status-bar CORE-15615
Joachim Henze [Sat, 2 Mar 2019 23:46:23 +0000 (00:46 +0100)]
[TASKMGR] Update german rc to avoid text truncation in status-bar CORE-15615

which became a necessity after the second field was reduced in width
by commit 0.4.12-dev-363-g

23 months ago[SETUPAPI] Implement CM_Next_Range()
Eric Kohl [Sat, 2 Mar 2019 19:52:52 +0000 (20:52 +0100)]
[SETUPAPI] Implement CM_Next_Range()

23 months ago[COVERITY][SETUPAPI] Release the blocks of memory when done
Bișoc George [Fri, 1 Mar 2019 19:24:18 +0000 (20:24 +0100)]
[COVERITY][SETUPAPI] Release the blocks of memory when done

pRange variable allocates blocks of memory from the heap by HeapAlloc() although this resource is never freed afterwards.


23 months agoUse GDI Batch for PatBlt
jimtabor [Sat, 2 Mar 2019 17:30:21 +0000 (11:30 -0600)]
Use GDI Batch for PatBlt

This should increase speed a bit. Makes a good argument to use
PolyPatBlt for more than one call.
PolyPatBlt is not fully tested yet.

23 months ago[NTOSKRNL] Fix MSVC2010 build
Pierre Schweitzer [Sat, 2 Mar 2019 10:10:37 +0000 (11:10 +0100)]
[NTOSKRNL] Fix MSVC2010 build

23 months ago[NTOSKRNL] Fix ClockDiff aka fix MSVC build
Pierre Schweitzer [Sat, 2 Mar 2019 09:45:34 +0000 (10:45 +0100)]
[NTOSKRNL] Fix ClockDiff aka fix MSVC build

23 months ago[NTOSKRNL] Add a test for ExUuidCreate
Pierre Schweitzer [Sat, 2 Mar 2019 09:29:26 +0000 (10:29 +0100)]
[NTOSKRNL] Add a test for ExUuidCreate

23 months ago[SNDVOL32] In record mode, rename the 'Mute' autocheckbox to 'Select', turn it into...
Eric Kohl [Fri, 1 Mar 2019 21:01:14 +0000 (22:01 +0100)]
[SNDVOL32] In record mode, rename the 'Mute' autocheckbox to 'Select', turn it into a checkbox and make it behave like a radiobutton.

23 months ago[NTOSKRNL] Rewrite/fix our UUID generation implementation
Pierre Schweitzer [Wed, 27 Feb 2019 20:12:32 +0000 (21:12 +0100)]
[NTOSKRNL] Rewrite/fix our UUID generation implementation
So that it matches Windows behavior
Also implement ExUuidCreate that will generate UUID version 1

The implementation is based on the RFC 4122

23 months ago[NTOSKRNL] Introduce the UUID_CACHED_VALUES_STRUCT structure
Pierre Schweitzer [Wed, 27 Feb 2019 08:02:30 +0000 (09:02 +0100)]


23 months ago[NTOSKRNL] UuidMutex -> ExpUuidLock
Pierre Schweitzer [Wed, 27 Feb 2019 07:54:48 +0000 (08:54 +0100)]
[NTOSKRNL] UuidMutex -> ExpUuidLock

23 months ago[OSK] Implement "Use Click Sound" feature
Bișoc George [Sun, 24 Feb 2019 15:40:02 +0000 (16:40 +0100)]
[OSK] Implement "Use Click Sound" feature

- Implement the save/load handler for this feature
- Check the "Use Click Sound" item state accordingly depending if it's enabled or disabled
- Use PlaySoundW() to play the wave sound file from resource
- Add the WAV sound click file. The work is made thanks to Midori Mizuno

2 years ago[HDAUDBUS] Wait until the correct number of responses was received. CORE-15465
Thomas Faber [Wed, 27 Feb 2019 14:02:38 +0000 (15:02 +0100)]
[HDAUDBUS] Wait until the correct number of responses was received. CORE-15465

We previously only gave the device a hard-coded amount of time to respond,
which could lead to interpreting the contents of uninitialized memory as
a response. This would lead to an unreasonably large number of audio function
groups being detected.

A KSEMAPHORE mirrors what Haiku uses here, though it may not be the optimal
synchronization primitive for this case under Windows.

2 years ago[HDAUDBUS] Handle responses in a DPC instead of the ISR.
Thomas Faber [Wed, 27 Feb 2019 13:34:23 +0000 (14:34 +0100)]
[HDAUDBUS] Handle responses in a DPC instead of the ISR.

2 years ago[HDAUDBUS] Fix a DPRINT.
Thomas Faber [Wed, 27 Feb 2019 14:02:23 +0000 (15:02 +0100)]

2 years ago[HDAUDBUS] Prevent overflow of the AudioGroups array. CORE-14153 CORE-15465
Thomas Faber [Wed, 27 Feb 2019 09:51:02 +0000 (10:51 +0100)]
[HDAUDBUS] Prevent overflow of the AudioGroups array. CORE-14153 CORE-15465

This protects against crashing in case of faulty/malicious hardware,
but also works around a bug in HDA_SendVerbs that causes it to return
invalid data, thereby suggesting more groups than are actually present.

2 years ago[SNDVOL32] Small Italian translation update
Bișoc George [Tue, 26 Feb 2019 14:49:47 +0000 (15:49 +0100)]
[SNDVOL32] Small Italian translation update

2 years ago[HDAUDBUS] Implement HDA_Unload. Stub HDA_Power and HDA_SystemControl. 1377/head
Thomas Faber [Sun, 24 Feb 2019 11:29:34 +0000 (12:29 +0100)]
[HDAUDBUS] Implement HDA_Unload. Stub HDA_Power and HDA_SystemControl.

2 years ago[HDAUDBUS] Correctly mask register values.
Thomas Faber [Mon, 25 Feb 2019 00:56:25 +0000 (01:56 +0100)]
[HDAUDBUS] Correctly mask register values.


This fixes various device reset failures and probably other issues.

2 years ago[HDAUDBUS] Implement PDO removal. CORE-14617
Thomas Faber [Mon, 25 Feb 2019 12:47:14 +0000 (13:47 +0100)]
[HDAUDBUS] Implement PDO removal. CORE-14617

2 years ago[HDAUDBUS] Implement FDO removal. CORE-14617
Thomas Faber [Sun, 24 Feb 2019 13:33:41 +0000 (14:33 +0100)]
[HDAUDBUS] Implement FDO removal. CORE-14617

2 years ago[HDAUDBUS] Use IoForwardIrpSynchronously instead of HDA_SyncForwardIrp.
Thomas Faber [Sun, 24 Feb 2019 11:23:45 +0000 (12:23 +0100)]
[HDAUDBUS] Use IoForwardIrpSynchronously instead of HDA_SyncForwardIrp.

2 years ago[HDAUDBUS] Forward FDO requests instead of completing them.
Thomas Faber [Mon, 25 Feb 2019 11:48:54 +0000 (12:48 +0100)]
[HDAUDBUS] Forward FDO requests instead of completing them.

2 years ago[HDAUDBUS] Use a switch for minor function codes.
Thomas Faber [Sat, 23 Feb 2019 20:52:21 +0000 (21:52 +0100)]
[HDAUDBUS] Use a switch for minor function codes.