Compare commits

..

6264 Commits

Author SHA1 Message Date
Joachim Henze
f362ced23c [NETSTAT] pragma once, reorder, fix pl-PL.rc
- add a pragma once into the header
- order -o options alphabetically also for the global variables, not only in usage-help
- pl-PL.rc: fix wrong alignment of IDS_ETHERNET_THEADER and its data for
- pl-PL.rc: also don't pad the data with 2 spaces here in the beginning, which
            we don't do in any other locale, and MS netstat also doesn't do that here.
            pl-PL.rc most likely got this wrong because it was created while en-US wasn't finished yet.
2023-07-06 02:26:29 +02:00
Katayama Hirofumi MZ
a1f7b3f2dd [MSPAINT] s/IsGuidEqual/::IsEqualGUID/
CORE-18867
2023-07-06 08:24:46 +09:00
Stanislav Motylkov
818908d9d3 [NETSTAT] Fix Traditional Chinese (zh-TW) translation
Take double-width characters into account. Addendum to 06ca384f78.
2023-07-06 01:56:14 +03:00
Stanislav Motylkov
5df6963754 [NETSTAT] Add Russian (ru-RU) translation 2023-07-06 01:41:41 +03:00
Stanislav Motylkov
06ca384f78 [NETSTAT] Fix some unintuitive formatting in translations 2023-07-06 01:30:06 +03:00
Stanislav Motylkov
af18a970a9 [MSPAINT] Update Russian (ru-RU) translation 2023-07-06 01:04:13 +03:00
Stanislav Motylkov
fa4c72b79e [MSPAINT] Improve wording of IDS_SAVEERROR
Addendum to 3e23cdf9e. CORE-18867
2023-07-06 01:02:33 +03:00
Joachim Henze
8ef47d2e5e [NETSTAT] Optimize a bit (#5405)
in netstat.c 100% of the calls to
    DisplayTableHeader();
have in the exact line beforehand a call to
    ConResPuts(StdOut, IDS_ACTIVE_CONNECT);

So let's fuse them.

Also fix a superfluous space in the *.rc files before it will get duplicated
a thousand times.
2023-07-05 20:52:04 +02:00
Katayama Hirofumi MZ
3e23cdf9ee [MSPAINT] Some bug fixes on loading/saving files (#5385)
- Display a correct error message on failing to save a file.
- Don't confuse the main file info and the non-main file info.
- Rename ShowFileLoadError as ShowError, and strengthen and move it to dialogs.cpp.
- Add SetFileInfo and InitializeImage helper functions.
- Add IDS_SAVEERROR resource string.
- Modify SaveDIBToFile, SetBitmapAndInfo, and DoLoadImageFile functions.
CORE-18867
2023-07-05 12:06:22 +09:00
Katayama Hirofumi MZ
17e9dcc922 [RTL][ADVAPI32_APITEST] RtlIsTextUnicode: Don't change weight unless lead-byte flag (#5396)
- Fix the garbled characters (a.k.a. mojibake) in some Japanese text files.
- weight will remain 3 unless IS_TEXT_UNICODE_DBCS_LEADBYTE flag is set.
- Strengthen advapi32_apitest IsTextUnicode testcase.
CORE-19016
2023-07-05 12:01:42 +09:00
Carl J. Bialorucki
7fafeb6390 [EXPLORER] Save taskbar position and locked state after reboot (#5393)
- Save locked state of the taskbar when toggled using its context menu.
- Save position of the taskbar after dragging it around the desktop.
- Invoke TRAYCMD_LOCK_TASKBAR command when (un)locking the taskbar
  by the context menu, instead of duplicating this functionality.

CORE-11621 CORE-16997
2023-07-04 16:16:24 +03:00
Katayama Hirofumi MZ
bfb973e0b3 [THEMEUI] Fix Japanese translation (ja-JP) as UTF-8
CORE-18706
2023-07-04 19:35:31 +09:00
Yukinari Mitsu
cce12eb9ed [SERVMAN] Respect the user-selected export format (#5394)
- Use either tab or comma separator depending on user's selection.
- Skip adding a separator after the last table cell.

CORE-19001
2023-07-04 13:04:44 +03:00
Katayama Hirofumi MZ
7342163b0d [CHARMAP] Improve Japanese (ja-JP) translation 2
CORE-18706
2023-07-04 13:28:19 +09:00
Katayama Hirofumi MZ
93445131e3 [CHARMAP] Improve Japanese (ja-JP) translation
CORE-18706
2023-07-04 13:18:11 +09:00
Katayama Hirofumi MZ
180bc8155e [SAMSRV] Improve Japanese (ja-JP) translation
CORE-18706
2023-07-04 12:58:23 +09:00
Katayama Hirofumi MZ
de85acff69 [THEMEUI] Add Japanese (ja-JP) translation
CORE-18706
2023-07-04 12:50:31 +09:00
Katayama Hirofumi MZ
e8cb1677ee [IPCONFIG] Add Japanese (ja-JP) translation
CORE-18706
2023-07-04 12:32:47 +09:00
Joachim Henze
5ee97b9537 [NETSTAT] -b flag implies -o flag on Windows XP/2003. CORE-19006 (#5377)
When calling 'netstat -abn'
Win 2k3sp2 and XPSP3 do show both: the processes name and the PID.
Contrary Win 7 and Win 8.1 would show only the process name then without the PID.

The newer Windows versions would require you to explicitly pass -o
if you want to see the PID also.

We do follow 2k3sp2 because it is our target. The process name is not of much use
without having the PID as well, especially if multiple processes with the
same name do run on a system, e.g.: multiple 'svchost.exe' processes.

Ros will automatically switch to the Win7-way when newer
Windows versions will be targeted at build-time.
2023-07-03 22:30:34 +02:00
Andrei Miloiu
99c4ffb0ae [THEMEUI] Update Romanian (ro-RO) translation (#5398) 2023-07-03 22:22:27 +02:00
Andrei Miloiu
87950be329 [TAPIUI] Improve Romanian (ro-RO) translation (#5397) 2023-07-03 22:21:15 +02:00
Andrei Miloiu
b807a95731 [CHARMAP] Improve Romanian (ro-RO) translation (#5390) 2023-07-03 22:20:03 +02:00
Andrei Miloiu
5d8aedf0e3 [USER32] Update Romanian (ro-RO) translation (#5395) 2023-07-03 22:19:43 +02:00
Andrei Miloiu
821d9422fe [SAMSRV] Update Romanian (ro-RO) translation (#5388) 2023-07-03 22:17:45 +02:00
Andrei Miloiu
f502d34b04 [NETID] Update Romanian (ro-RO) translation (#5384) 2023-07-03 22:17:16 +02:00
Andrei Miloiu
497009da82 [IPCONFIG] Update Romanian (ro-RO) translation (#5381) 2023-07-03 22:16:43 +02:00
Andrei Miloiu
b41615376b [MMC] Improve Romanian (ro-RO) translation (#5389) 2023-07-03 22:16:01 +02:00
Andrei Miloiu
0f62d80f2d [SHELL32] Improve Romanian (ro-RO) trnaslation (#5392) 2023-07-03 22:15:28 +02:00
Piotr Hetnarowicz
4c7ef7b1a2 [MSPAINT] Update Polish (pl-PL) translation (#5368) 2023-07-03 15:28:38 +03:00
Andrei Miloiu
e369caef4e [MSPAINT] Update Romanian (ro-RO) translation (#5353) 2023-07-03 15:24:21 +03:00
Stanislav Motylkov
489655a414 [IPCONFIG] Update Russian (ru-RU) translation 2023-07-03 15:20:02 +03:00
Eric Kohl
eb30050e1b [IPCONFIG] Add error messages for Release and Renew and fix magic values 2023-07-03 12:28:39 +02:00
Joachim Henze
a5360f542f [IPHLPAPI] Formatting only, no functional change
- Strip inconsistent spaces from the spec file.
- iphlpapi_main: Harmonize inconsistent and line-wasting function-comments and fix mixed space-tab-indentation.
- ipstats_reactos.c: Compactify horizontally accordingly to the coding guidelines

I am interested in that code for a backport, so I want it to be well-formatted.
Ftr: IPHLPAPI was *forked* more than a decade ago from Wine.
Therefore no diff ever was guarded within those files whenever we implemented anything here.
2023-07-03 00:38:41 +02:00
Stanislav Motylkov
5ae65ab7a7 [NTOS:KE] Add x86 CPU features reporting to AMD64
CORE-18023 CORE-14922
2023-07-02 21:00:32 +03:00
Stanislav Motylkov
6a6b383abd [NTOS:KE] Report x86 CPU features in a separate function
KiGetFeatureBits() is now being called in the early boot phase 0
when the Kernel Debugger is not yet initialized, so debug prints
are not available here. Move the debug prints into a new function
and call it at the right time. CORE-18023
2023-07-02 21:00:31 +03:00
Stanislav Motylkov
00715ccf8b [NTOS:KE] Fix magic constants for x86 CPU features
Do it the same way as in amd64 ke.h/cpu.c. CORE-18023
2023-07-02 21:00:31 +03:00
Thamatip Chitpong
c7e4c3a8e9 [NTUSER] NtUserWaitForInputIdle: Fix unhandled exception BSOD 0x1E (#5391)
Fix CLIENTINFO usermode pointer access once again.
Based on a patch by Michael Fritscher from CORE-10017.
Addendum to 7052282507 (r68702).

CORE-18728 CORE-19014
2023-07-02 20:30:30 +03:00
Eugen Podrug
8e01dee251 [NTOS:EX] Fix swapped values in ExGetCurrentProcessorCounts() (#4565)
The function should return the kernel time for the idle thread in the
first argument, and kernel time + user time for the current thread in
the second argument.

Also retrieve the processor number from the cached PRCB instead of
calling KeGetCurrentProcessorNumber() which retrieves the PRCB again
since the processor could switch in-between those calls.

NdisGetCurrentProcessorCounts() function follows the same prototype
which is the correct one.
2023-07-02 16:10:36 +03:00
Stanislav Motylkov
bc85db7d8c [IPCONFIG] Update Russian (ru-RU) translation 2023-07-02 16:02:19 +03:00
Eric Kohl
ed80df29e0 [IPCONFIG] Improvements to Release and Renew functions
- Reimplement the Release and Renew functions using GetAdaptersInfo().
- Check for enabled DHCP and connected medium
- Check for already released Lease in the Release function
- Add required messages
2023-07-02 14:48:03 +02:00
Doug Lyons
12e1919e5e [NTGDI][GDI32] Icon fixes for Office 2000, VB6, and Hoyle Cards (#5227)
Many thanks for Simone Lombardo for pointing to the code needing attention
and providing a working proof-of-concept solution.

CORE-12377
CORE-18084
CORE-13889
2023-07-02 13:24:15 +02:00
Serge Gautherie
38560761ce [WIN32K:NTUSER] Add ASSERT() on "linking window to itself" (#4749)
Addendum to ee0511b (0.4.10-dev-323).
CORE-18132
2023-07-02 13:19:06 +02:00
Andrei Miloiu
5e4c6ae983 [INPUT] Improve Romanian (ro-RO) translation (#5386) 2023-07-02 13:01:09 +02:00
Andrei Miloiu
8fe890e963 [SHELL32] Update Romanian (ro-RO) translation (#5382) 2023-07-02 13:00:10 +02:00
Victor Perevertkin
16882dcfa4 [HALX86] Bugcheck in case the ACPI initialization failed (for ACPI HAL) (#5376)
CORE-16302
2023-07-02 02:01:11 +03:00
Stanislav Motylkov
fb1162431d [IPCONFIG] Update Russian (ru-RU) translation 2023-07-02 00:58:45 +03:00
Stanislav Motylkov
d764b4232a [SHELL32] Fix last attribute width and button position
Addendum to f3a07f2a78. CORE-18829
2023-07-02 00:50:11 +03:00
Yukinari Mitsu
f3a07f2a78 [SHELL32] Fix overlapping attributes in the Folder properties dialog (#5383)
The sum of X and width exceeds the X of next element.
So, change the width to <next x> - <current x>.

All affected translations were changed.

CORE-18829
2023-07-02 00:24:21 +03:00
Andrei Miloiu
ad2d88f275 [FONTVIEW] Update Romanian (ro-RO) translation (#5371) 2023-07-01 22:59:49 +02:00
Yukinari Mitsu
3801acb914 [SHIMGVW] Display filename in taskbar even if the file isn't loaded (#5379)
If the file could not be loaded, its name wasn't displayed in the taskbar.
Now, always display the file name in all cases.

CORE-18954
2023-07-01 19:22:03 +03:00
Eric Kohl
4328b858e5 [IPCONFIG] Replace some DNS related strings by resources 2023-07-01 15:32:47 +02:00
Eric Kohl
edd332c952 [IPCONFIG] Implement globbing for the Release and Renew options
- Add a simple Wildcard Matcher.
- Use the Wildcard Matcher in the Release and Renew functions.
2023-07-01 10:28:33 +02:00
Joachim Henze
40864bc15c [NETSTAT] Fix crash when parsing the protocol CORE-19005 (#5363)
fixes symptom CORE-19005 [NETSTAT] crashes when called with -abnop
and no further argument (protocol name missing).

The crash was a regression of
0.4.11-dev-814-g 2b55073360

also meticulously try to match Windows exact screen output and ERRORLEVEL then
instead of e.g.: simply showing the usage help
which means:
ERRORLEVEL 0 for 'netstat -abnop' and displaying Active-string + table header *but without any sane contents*
ERRORLEVEL 1 for 'netstat -abnop bullshit' and displaying usage help
ERRORLEVEL 0 for 'netstat -abnop tcp' and displaying Active-string + table header + contents
ERRORLEVEL 0 for 'netstat -abnop udp' and displaying Active-string + table header + contents

while touching the file do also some unrelated whitespace tweaks.
2023-06-29 22:33:53 +02:00
Doug Lyons
40233a3644 [ADVAPI32_APITEST] Add new RegCreateKeyEx tests (#5234)
* [ADVAPI32_APITEST] Add new RegCreateKeyEx tests
* Remove trailing spaces.
* Initialize SECURITY_ATTRIBUTES sa with zeroes.

Add a set of tests for RegCreateKeyExW and -A.
Created to prove the correctness of the already merged PR (#5230)

JIRA issue: CORE-15471
2023-06-29 21:33:44 +02:00
Victor Perevertkin
8cfc4a3376 [NTOS:PNP] Complete the PlugPlayControlInitializeDevice control class
Besides creating the PDO and device node for it, it has to set up the
necessary registry keys, and register PDO at PnP root driver properly.

CORE-18989
2023-06-29 19:25:28 +03:00
Victor Perevertkin
6cac5b8c9e [NTOS:PNP] Refactor PnpRootCreateDevice
- Remove unused "DriverObject" argument
- Make "FullInstancePath" mandatory
- Extract the PDO creation into separate function, it will be used later
2023-06-29 19:25:28 +03:00
Victor Perevertkin
bbf64c0cc4 [NTOS:PNP] Do not create an extra "PDO" device inside PnP root driver
The root device object is in fact a PDO and a FDO at the same time. Thus
there is no need in creating two device objects here, one is enough.
This commit also removes the explicit device extension for the root DO,
because the only reason it existed is to distinguish the root driver's
FDO from its PDOs. This can easily be done by comparing with
IopRootDeviceNode.

Also collect some unused garbage while we are here.
2023-06-29 19:25:25 +03:00
Eric Kohl
e1eb9e3620 [UMPNPMGR] PNP_Get(First/Next)LogConf: return proper tags for the resource list case 2023-06-29 18:06:02 +02:00
Carl J. Bialorucki
209439a5ae [BROWSEUI] Add status bar view state persistence (#5366)
- Use `HKCU\Software\Microsoft\Internet Explorer\Main\StatusBarOther` registry key for the setting persistence.
- Set its value to 1 when the status bar is visible, and to 0 when the status bar is hidden.
- Query it when the file browser is initialized to set the correct view state for the status bar.
- Set the default state of the status bar to hidden if the registry key does not exist, matching the behavior of Windows Server 2003.

CORE-19010
2023-06-29 18:50:43 +03:00
Eric Kohl
44a312478d [UMPNPMGR] OpenConfigurationKey: Open subkeys depending on the configuration type
- Boot and Basic Configurations are located in the LogConf subkey.
- Alloc and filtered Configurations are located in the Control subkey.
2023-06-28 23:15:26 +02:00
Eric Kohl
7f55dd36ea [IPCONFIG] Show data for SOA DNS Entry 2023-06-28 22:16:25 +02:00
Hermès Bélusca-Maïto
5cb2b73988 [VIDEOPRT] VideoPortGetAccessRanges: Return ERROR_MORE_DATA if there exist more device access ranges that can be returned than what is specified by NumAccessRanges. 2023-06-28 17:22:01 +02:00
Hermès Bélusca-Maïto
122eaeb6ad [VIDEOPRT] VideoPortGetAccessRanges: Add doxygen doc, SAL annotations and minor formatting. 2023-06-28 17:22:00 +02:00
Hermès Bélusca-Maïto
61c77d1f87 [XBOXVMP] Real OG XBOX NVidia GPU exposes 3 access ranges, so retrieve them.
CORE-19011

Fix a "bug" I introduced in commit 61012eb54.
VideoPortGetAccessRanges() expects the caller to specify at least the
total number of ranges the hardware exposes, otherwise it fails with
ERROR_MORE_DATA. (Tested also with the help of Windows' videoprt.sys.)

On real original XBOX there are three:
```
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation NV2A [XGPU] [10de:02a0] (rev a1)
    Subsystem: Unknown [0000:0000]
    Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 03
    Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
    Memory at f0000000 (32-bit, prefetchable) [size=128M]
    Memory at 00000000 (32-bit, prefetchable) [size=512K]
```

Thanks to Stanislav and Daniel for tests on the real XBOX.
2023-06-28 17:21:58 +02:00
Piotr Hetnarowicz
f135d23f4c [FONTVIEW] Update Polish (pl-PL) translation (#5369) 2023-06-28 12:40:29 +03:00
Piotr Hetnarowicz
22233e66ce [IPCONFIG] Update Polish (pl-PL) translation (#5367) 2023-06-28 12:32:05 +03:00
Stanislav Motylkov
79de1846ac [IPCONFIG] Remove trailing whitespace
Addendum to bfc87de1d8.
2023-06-28 12:14:08 +03:00
Andrei Miloiu
bfc87de1d8 [IPCONFIG] Update Romanian (ro-RO) translation (#5360) 2023-06-28 09:57:16 +02:00
Andrei Miloiu
6ebadb4d39 [GETUNAME] Improve Romanian (ro-RO) translation (#5365)
Lines 44032-54000

Addendum to 0887c1c (#5323) and 60f4c38 (#[5327]).
2023-06-28 09:54:51 +02:00
Stanislav Motylkov
d09433a2da [FONTVIEW] Update copyright headers 2023-06-27 23:10:03 +03:00
Stanislav Motylkov
bfdb012f1f [FONTVIEW] Improve English wording of IDS_ERROR_OPENKEY 2023-06-27 21:44:06 +03:00
Stanislav Motylkov
f5200e6c25 [MSPAINT] Update copyright years for the C++ code
According to Benedikt Freisen, he didn't port the code base to C++
until 2015. Addendum to 8f1f1c7a5a. CORE-18867
2023-06-27 21:22:21 +03:00
Eric Kohl
1abfdde2d4 [IPCONFIG] Show data for MX and SRV DNS Entries 2023-06-27 09:27:30 +02:00
Fernando Isnaldo Silva de Faria
8c695b9437 [CMD] Add Portuguese Brazilian (pt-BR) translation (#4957)
Based on the Portuguese translation from Portugal.

Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2023-06-26 20:22:10 +03:00
Jose Carlos Jesus
bd761568f5 [EXPLORER] Improve Portuguese (pt-PT) translation (#5351)
- Improve and fix typo to pt-PT rc file
- Fix SUBLANG type to pt-PT language
2023-06-26 19:28:24 +03:00
Eric Kohl
0d0bd954a8 [IPCONFIG] Simplify the not type output 2023-06-26 12:26:04 +02:00
Eric Kohl
d737153ac9 [IPCONFIG] Remove unused resources 2023-06-26 08:12:07 +02:00
Hermès Bélusca-Maïto
3121aee56e [VIDEOPRT] Honour NumAccessRanges == 0 / AccessRanges == NULL in VideoPortVerifyAccessRanges()
These are specified for releasing the hardware resources previously
acquired by either a previous call to VideoPortVerifyAccessRanges()
or a call to VideoPortGetAccessRanges().
2023-06-25 21:25:08 +02:00
Hermès Bélusca-Maïto
de6313d89e [VIDEOPRT] Reformat VideoPortVerifyAccessRanges()
Fix indentation, add SAL annotations and Doxygen description.
2023-06-25 21:25:07 +02:00
Hermès Bélusca-Maïto
7eca194709 [VIDEOPRT] In legacy detection, don't guess the maximum number of buses of a certain type.
Use whatever number there is on the system.
Also ensure that vpStatus is correctly initialized.
2023-06-25 21:25:07 +02:00
Hermès Bélusca-Maïto
6409f97bc4 [NTOS:CONFIG] Use correct "Interface" variable type; use InterfaceTypeUndefined instead of -1. 2023-06-25 21:25:06 +02:00
Hermès Bélusca-Maïto
bd5209d9f4 [HALX86] These HalpNo* functions are actually _implemented_. Document their purpose.
Remove the misleading comment in HalpNoBusData().
Update the SAL annotations.
2023-06-25 21:25:06 +02:00
Hermès Bélusca-Maïto
9ba1849a97 [HAL][MINIHAL] Minor cleanup in reboot.c files (#5359)
And remove pic/processor.c from minihal compilation.
2023-06-25 19:39:44 +02:00
Eric Kohl
50d78f04e3 [IPCONFIG] Improve adapter type and name output 2023-06-25 14:00:47 +02:00
Katayama Hirofumi MZ
cb98e91b55 [MSPAINT] Rename some identifiers (#5362)
- s/CANVAS_HITTEST/HITTEST/
- s/m_whereHit/m_hitCanvasSizeBox/
- s/m_rcNew/m_rcResizing/
- Add comments to CCanvasWindow.
CORE-18867
2023-06-24 19:39:07 +09:00
Hilmar Preuße
5bb0a2c484 [FONTVIEW] Update German (de-DE) translation (#5345)
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2023-06-24 00:35:08 +02:00
Andrei Miloiu
60f4c3839c [GETUNAME] Improve Romanian (ro-RO) translation (#5327)
Lines 11001-44025.

Addendum to 0887c1c0 (#5323).
2023-06-24 00:36:09 +03:00
Stanislav Motylkov
00dafff740 [IPCONFIG] Update Russian (ru-RU) translation 2023-06-23 21:43:49 +03:00
Stanislav Motylkov
ec09fffbfc [MSPAINT] Update and improve Russian (ru-RU) translation 2023-06-23 20:54:02 +03:00
Stanislav Motylkov
b6c4222f25 [MSPAINT] Make Attributes dialog layout consistent between languages
- Add missing mnemonic keys
- Remove unneeded mnemonic keys
- Fix some translated strings being too long
- Fix mispositioned elements
- Reposition overlapping elements

Validated the changes with Resource Hacker. CORE-18867
2023-06-23 20:51:45 +03:00
Stanislav Motylkov
8f1f1c7a5a [MSPAINT] Update copyright headers
Use LGPL-2.0-or-later as the first available LGPL version on SPDX
taking into account 530512f17e commit message.

CORE-18867
2023-06-23 20:49:28 +03:00
Eric Kohl
c63489f1e8 [IPCONFIG] Improve the German translation 2023-06-23 12:24:26 +02:00
Eric Kohl
a38b133dd1 [NET] Add the net session command 2023-06-22 12:40:46 +02:00
Eric Kohl
b0b40ce520 [IPCONFIG] Convert more strings to resources 2023-06-22 10:19:01 +02:00
Katayama Hirofumi MZ
d04e049284 [MSPAINT] s/Bound/Clamp/
CORE-18867
2023-06-22 07:57:36 +09:00
Katayama Hirofumi MZ
ec53d42278 [MSPAINT] s/pointSP/s_pointSP/ and s/pointStack/s_pointStack/
CORE-18867
2023-06-22 07:28:15 +09:00
Katayama Hirofumi MZ
3fa6d74a01 [MSPAINT] Fix ShapeTool with Shift key (#5358)
Fix the behavior of the ShapeTool in pressing Shift key. CORE-18867
2023-06-22 07:19:48 +09:00
Oleg Dubinskiy
e7ccb36b9b [WIN32SS][NTDDRAW] Don't startup DirectX graphics each time on DirectDraw object creation (#5329)
CORE-17561, CORE-17932, CORE-18221

Do it at each system startup instead: Remove old DirectX initialization code.
It's now outdated and not needed anymore.

Previously, the corresponding hackish intEnableReactXDriver() function
did two things: load dxg.sys and enable DirectDraw.
Now loading DirectX graphics is done during WINSRV initialization, and
enabling DirectDraw is called during each (and also first) display mode
switch, as in Windows. As debug analysis proves, there are no any other
calls in NtGdiDdCreateDirectDrawObject, besides the corresponding DXG
function.
2023-06-21 18:03:27 +02:00
Oleg Dubinskiy
e034377b51 [WIN32SS][ENG][NTDDRAW] Manage DirectDraw instances when switching display mode (#4519)
CORE-17932

[ENG] Implement DirectDraw management in switch display mode functions
(e.g. resolution change, color depth, display frequency etc.):

- Switch DirectDraw instances between the two PDEVs (the current one and
  the new one allocated by ourselves) by calling dxg!DxDdDynamicModeChange
  function.

- Suspend them before and resume after the display mode switch, by calling
  dxg!DxDdsuspendDirectDraw and dxg!DxDdResumeDirectDraw appropriately.

We currently don't have these functions implemented, but MS DXG has, so
it allows to properly manage DirectDraw PDEVs using this driver, similarly
to Windows.
My analysis confirms that these functions are always called in XP/2k3 on
display mode switch, even when there is no any DirectX app running at the
moment. Analyzing their prototypes show that my guesses are correct.

- Initialize hDev and dhpdev members for EDD_DIRECTDRAW_GLOBAL for newly
  created surfaces, switch them during mode change and re-initialize after
  it also. They are commonly used by DirectDraw stack.
  In addition, enable DirectDraw for old and new PDEVs, by calling
  dxg!DxDdEnableDirectDraw function.


[NTDDRAW] Additionally, fix usage of DirectDraw lock count in the PDEVOBJ
structure.

- Enable cDirectDrawDisableLocks member for storing its value, instead of
  DxDd_nCount, which is marked as ROS-specific.

- Use it in win32k!DxEngGet/SetHdevData for getting/setting DirectDraw
  count appropriately.

My analysis also shows that in Windows, the PDEVOBJ::cDirectDrawDisableLocks
method calls DxEngGetHdevData with type 8, which corresponds to our DxDd_nCount.
So there are no doubts that this member is used there.

- Rename DxEngGetHdevData_dd_count alias of type 8 to DxEngGetHdevData_dd_locks,
  to match more accurately an actual member name. Update the enumeration
  and fix all code parts appropriately.

All these changes allow to properly change display mode during executing
DirectDraw applications, when they try to switch in full-screen mode.
At least a bugcheck that happened before my changes, does no longer appear.

There are still some games that don't run correctly, as if there is no
3D acceleration (which actually exists). This requires further investigations.
2023-06-21 18:00:24 +02:00
Hermès Bélusca-Maïto
3fa613b9da [MINIHAL] Remove sysinfo.c from compilation. 2023-06-20 22:40:58 +02:00
Hermès Bélusca-Maïto
d6a78d580b [HALX86] Tabs to 4-space indentation in generic/sysinfo.c + Fix typo "ALMI" -> "AMLI" 2023-06-20 22:40:57 +02:00
Hermès Bélusca-Maïto
d03fc32e7d [MINIHAL] Remove unneeded files from compilation. 2023-06-20 18:39:01 +02:00
Carl J. Bialorucki
f203ad5cf4 [BROWSEUI] Add locked toolbar state persistence (#5350)
Store the state of the explorer toolbar, locked or unlocked, in the proper
registry location and set the proper toolbar state when initialized.

CORE-9094

- Set `HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\Locked`
  to 1 when the explorer toolbar is locked, 0 when the toolbar is unlocked.
- Query `HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\Locked`
  when the toolbar is initialized to set the correct locked state.
- Set the default state of the toolbar to locked if the registry key does not
  exist, matching the behavior of Windows Server 2003.
2023-06-20 11:16:23 +02:00
Hermès Bélusca-Maïto
157491e297 [STORPORT] MaximumNumberOfLogicalUnits should be initialized to SCSI_MAXIMUM_LOGICAL_UNITS
See https://www.osronline.com/article.cfm%5Earticle=538.htm
2023-06-19 21:10:53 +02:00
Hermès Bélusca-Maïto
3bc71f9086 [FREELDR][SCSIPORT][STORPORT] Use existing defines for some hardcoded max values.
See https://www.osronline.com/article.cfm%5Earticle=538.htm

[SCSIPORT] Remove 'MaxBus' variable, deprecated since commit fc3d38d1c (r26220).
2023-06-19 21:10:51 +02:00
Hermès Bélusca-Maïto
0fbd5eda85 [DDK] storport.h: Add some missing definitions that are in common with srb.h 2023-06-19 21:10:49 +02:00
Hermès Bélusca-Maïto
b12069d670 [DDK] srb.h: Introduce Win8+ SCSI_MAXIMUM_BUSES_PER_ADAPTER and comment about the old SCSI_MAXIMUM_* variables. 2023-06-19 21:10:44 +02:00
Hermès Bélusca-Maïto
7e1510eb9c [HALX86] Implement HalpcGetCmosData and HalpcSetCmosData. 2023-06-19 21:09:03 +02:00
Hermès Bélusca-Maïto
0c16bcd4e8 [FREELDR] scsiport.c: Fix x64 compilation. 2023-06-19 21:09:01 +02:00
Hermès Bélusca-Maïto
af47866f76 [FREELDR:UEFI] Fix compilation warning LNK4006.
ntoskrnl.c.obj : warning LNK4006: _KeStallExecutionProcessor@4
already defined in stubs.c.obj; second definition ignored.
2023-06-19 21:09:00 +02:00
Hermès Bélusca-Maïto
095510bdac [FREELDR:UEFI] Fix two MSVC build warnings C4553.
In both lines 451 and 474:
uefidisk.c: warning C4553: '==': result of expression not used; did you intend '='?

It's "funny" that GCC builds doesn't catch those...
2023-06-19 21:08:59 +02:00
Victor Perevertkin
38e4b859e2 [FRAMEBUFACC] Remove the driver
This is an unfinished attempt to rewrite the driver by Magnus Olsen,
dating back to 2007.
2023-06-19 13:58:46 +03:00
Victor Perevertkin
cdb130420e [FRAMEBUF_NEW] Remove the driver
It doesn't seem to be better than the current "framebuf", and has an
unfriendly license (NT4 DDK Sample).
2023-06-19 13:58:46 +03:00
Victor Perevertkin
b9b2608bfb [FRAMEBUF] Return the "old" driver back
It has a better license (GPL) and does not have visible drawbacks
compared to framebuf_new.
2023-06-19 13:58:43 +03:00
Katayama Hirofumi MZ
bc19bbe408 [MSPAINT] Add CMainWindow::CanPaste
CORE-18867
2023-06-19 18:59:00 +09:00
Katayama Hirofumi MZ
19d8862851 [MSPAINT] Fix CMainWindow::GetSaveFileName (#5356)
Fix filename extension cases and "File Type" field. If no filename extension on save, then append ".png" to the filename.
CORE-18867
2023-06-19 14:15:18 +09:00
Katayama Hirofumi MZ
64ef3ced9c [MSPAINT] Add CMainWindow::CanUndo/CanRedo (#5355)
- Add CMainWindow::CanUndo and CMainWindow::CanRedo and use them.
- Fix wrongly-disabled Undo/Redo in some cases.
CORE-18867
2023-06-19 14:13:43 +09:00
Katayama Hirofumi MZ
b5335fb90b [MSPAINT] Simplify SelectionModel::StretchSkew
...and omit cloning HBITMAP in SelectionModel::InsertFromHBITMAP. CORE-18867
2023-06-19 14:11:16 +09:00
Katayama Hirofumi MZ
7bb0561c2d [MSPAINT] Delete useless CTextEditWindow::m_nAppIsMovingOrSizing
CORE-18867
2023-06-19 13:47:24 +09:00
Katayama Hirofumi MZ
fdba69be7c [MSPAINT] Follow-up Part 2 of Realize Masked Skew (96d3883)
CORE-18867
2023-06-19 10:11:35 +09:00
Katayama Hirofumi MZ
2661b2db61 [MSPAINT] Improve Japanese (ja-JP) translation (IDS_CANTPASTE)
CORE-18867
2023-06-19 10:08:04 +09:00
Katayama Hirofumi MZ
96d3883686 [MSPAINT] Follow-up of Realize Masked Skew (9afcbea)
CORE-18867
2023-06-19 10:00:39 +09:00
Katayama Hirofumi MZ
9afcbea24e [MSPAINT] Realize Masked Skew
- Add CreateMonoBitmap and CopyMonoImage functions to dib.cpp.
- Add bMono parameter to SkewDIB function.
- Add hbmMask parameter to InsertFromHBITMAP function.
- Add ToolsModel::IsSelection.
CORE-18867
2023-06-19 09:56:02 +09:00
Katayama Hirofumi MZ
f6bd638b4d [MSPAINT] Don't show canvas size boxes if textEditWindow is shown
CORE-18867
2023-06-19 08:36:45 +09:00
Katayama Hirofumi MZ
17bdf55474 [MSPAINT] Smartly restrict CTextEditWindow's size and position
...by using WM_SIZING and WM_MOVING. CORE-18867
2023-06-19 08:25:23 +09:00
Katayama Hirofumi MZ
7aadc1e1fe [MSPAINT] Realize context menu on canvas (#5352)
- Add actions on Right-Click.
- Add ID_POPUPMENU resource menu.
- Use TrackPopupMenu to show the context menu.
- Improve CMainWindow::OnInitMenuPopup to display context menu.
- Add SelectionModel::m_bContentChanged flag to indicate whether the selection content is changed.
- Fix IDM_IMAGEINVERTCOLORS and IDM_IMAGEROTATEMIRROR commands.
CORE-18867
2023-06-19 07:51:19 +09:00
George Bișoc
0972f71d9a [NTOS:PNP] Assert the presence of a device extension when handling PnP root power IRPs
Handling PnP root driver power IRPs requires that a device object must come up
with a device extension to determine whether it is a function driver and if so,
handle the IRP accordingly.

CORE-18989
2023-06-18 20:44:13 +02:00
Stanislav Motylkov
89ecf32e0b [MSPAINT] Improve wording of IDS_CANTPASTE message
Follow-up of #5349 (9f56e67). CORE-18867
2023-06-18 19:16:17 +03:00
Stanislav Motylkov
d614d62b09 [EXPLORER] Update copyright headers 2023-06-18 18:52:02 +03:00
Stanislav Motylkov
21f0095cc4 [IPCONFIG] Update copyright headers 2023-06-18 18:34:39 +03:00
Katayama Hirofumi MZ
8ba330ead2 [MSPAINT] Follow-up of #5349 (9f56e67); Avoid assertion failure
CORE-18867
2023-06-18 20:34:49 +09:00
Katayama Hirofumi MZ
9f56e67bc2 [MSPAINT] Use CF_DIB instead of CF_BITMAP (#5349)
CF_BITMAP is not recommended format for copying. In fact, Win10 won't accept it.
- Use CF_DIB clipboard format instead of CF_BITMAP in copying.
- Use CF_ENHMETAFILE, CF_DIB, or CF_BITMAP in pasting.
- Add BitmapToClipboardDIB, BitmapFromClipboardDIB, and BitmapFromHEMF helper functions to dib.cpp.
- Re-enable paste by fixing the bug that is embugged in the previous commit.
- Enable Cut, Copy, Paste, and Delete on text editing box by modifying OnInitMenuPopup.
- Add IDS_CANTPASTE resource string to show message on paste failure.
CORE-18867
2023-06-18 19:48:20 +09:00
Eric Kohl
aaa0cb6724 [IPCONFIG] Use conutils and replace hardcoded strings 2023-06-17 15:23:18 +02:00
Katayama Hirofumi MZ
e8c7e30030 [MSPAINT] Establish Undo/Redo management (#5347)
- Painting the canvas is done by overlaying the multiple layers.
- Drawing each overlay is implemented as polymorphism of OOP.
- Refine the Undo/Redo mechanism.
- Some adjustments.
CORE-17969
2023-06-17 21:15:35 +09:00
Thamatip Chitpong
b7071f67a8 [TASKMGR] Remove CRTDBG (#5348)
taskmgr doesn't use any CRT allocation. I don't see the point of using it.

This reverts commit 2441e86 .

CORE-18991
2023-06-17 03:33:29 +09:00
Katayama Hirofumi MZ
2f856f6f0d [MSPAINT] Add CachedBufferDIB function and use it
We do caching on buffering paint.
This will improve performance a little.
CORE-18867
2023-06-16 08:05:23 +09:00
Hermès Bélusca-Maïto
c706222f3f [TASKMGR] Fix the license. Turns out it's LGPL-2.1-or-later from the texts.
Caught by Stanislav. Sorry for the oversight!
2023-06-15 19:45:23 +02:00
Hermès Bélusca-Maïto
f4735ccc9b [TASKMGR] Re-include StringSafe usage in trayicon.c (see e.g. 99fb812be) 2023-06-15 13:28:16 +02:00
Hermès Bélusca-Maïto
434798e312 [TASKMGR] Move strsafe.h into precompiled header. 2023-06-15 13:26:32 +02:00
Hermès Bélusca-Maïto
9927163455 [TASKMGR] Reorder page controls to have natural TAB-ordering. 2023-06-15 12:55:27 +02:00
Hermès Bélusca-Maïto
3bdc062fb9 [PSDK][NDK] Update SYSTEM_PERFORMANCE_INFORMATION definition with Win7+ members.
See https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/ex/sysinfo/performance.htm
for more information.
2023-06-15 12:55:08 +02:00
Hermès Bélusca-Maïto
d5707eefe2 [TASKMGR] High speed update is twice per second, and not every second.
And honour what is also told by the info in the status bar.
2023-06-15 12:45:08 +02:00
Hermès Bélusca-Maïto
2da0506f2a [TASKMGR] Remove more dead code. 2023-06-15 12:44:37 +02:00
Hermès Bélusca-Maïto
6e77747b30 [TASKMGR] Simplify tray icon code. 2023-06-15 12:44:29 +02:00
Hermès Bélusca-Maïto
0b4c8bdd1c [TASKMGR] Clamp the values returned from PerfDataGetProcessorUsage() and PerfDataGetProcessorSystemUsage() inside these functions.
It's necessary to make this clamping there so that returned values are
always used consistently in taskmgr, including in places where the
values are directly fetched into other functions.

This is a free adaptation from
Wine commit
a9742b3210c4cec67aca3c0012f3b9504a4368cf
From: Gerald Pfeifer <gerald@pfeifer.com>

taskmgr: Move out-of-domain checking into
PerfDataGetProcessorUsage() and PerfDataGetProcessorSystemUsage().
2023-06-15 12:44:21 +02:00
Hermès Bélusca-Maïto
7b53126375 [TASKMGR] Completely reformat perfpage.c, perfpage.h, procpage.h and trayicon.c
- Rename also these stupidly long "hPerformancePageBlablabla" variables.
- Remove unnecessary global variables in procpage.c/h.
2023-06-15 12:44:13 +02:00
Hermès Bélusca-Maïto
da7dcec6a0 [TASKMGR] Reformat the files' headers. Add Valerij in graphctl.c/h who rewrote most of the graph control. 2023-06-15 12:44:01 +02:00
Hermès Bélusca-Maïto
3fc702b588 Revert "[TASKMGR] Follow-up of 'Refactor trayicon.c' (99fb812)"
This reverts commit ec93c2340d.

Revert "[TASKMGR] Refactor trayicon.c"

This reverts commit 99fb812be4.
2023-06-15 12:43:36 +02:00
Katayama Hirofumi MZ
36aea8e56e [TASKMGR] affinity.c: Use _countof instead of sizeof/sizeof
CORE-18991
2023-06-15 16:22:43 +09:00
Katayama Hirofumi MZ
9a6c85f68a [TASKMGR] Fix PerfDataDeallocCommandLineCache
Do not leak memory. CORE-18014
2023-06-15 15:36:19 +09:00
Katayama Hirofumi MZ
7989e3f26c [TASKMGR] GraphCtrl_Dispose: Delete hdcGraph first
The pen might be selected at GraphCtrl_Dispose.
Do not delete a drawing object (pen or brush) while it is still selected into a DC.
CORE-18014
2023-06-15 15:14:32 +09:00
Katayama Hirofumi MZ
dc14a9f6e0 [TASKMGR] GraphCtrl: Use DeleteDC instead of DeleteObject to delete inst->hdcGraph
This reduces handle leak.
CORE-18014
2023-06-15 14:55:25 +09:00
Katayama Hirofumi MZ
2441e86963 [TASKMGR] Report any memory leaks on exit (#5340)
Use the power of CRT debug to detect memory leaks.
- Define _CRTDBG_MAP_ALLOC and include <crtdbg.h> after <stdlib.h>.
- Call _CrtSetDbgFlag at prologue of wWinMain.
CORE-18014
2023-06-15 14:27:06 +09:00
Katayama Hirofumi MZ
ec93c2340d [TASKMGR] Follow-up of 'Refactor trayicon.c' (99fb812) 2023-06-15 14:18:45 +09:00
Katayama Hirofumi MZ
99fb812be4 [TASKMGR] Refactor trayicon.c 2023-06-15 13:26:20 +09:00
Katayama Hirofumi MZ
ad61c574f4 [MSPAINT] Fix two handle leaks
CORE-18867
2023-06-15 10:55:59 +09:00
Katayama Hirofumi MZ
5675604d28 [MSPAINT] CMiniatureWindow: Avoid too small
CORE-18867
2023-06-14 20:17:49 +09:00
Hermès Bélusca-Maïto
61012eb544 [XBOXVMP] Fix in VideoPortGetAccessRanges call: missing Slot parameter.
Contrary to what is (badly) written on MSDN, this parameter is
*mandatory* when the ranges looked for are on a PCI adapter.

Detected when testing with MS Windows' videoprt.sys on XBOX emulator;
thanks to Simone Lombardo for assistance!
2023-06-14 12:10:55 +02:00
Katayama Hirofumi MZ
bfd42c67a1 [MSPAINT] Improve CMiniatureWindow (#5337)
- Save the position and size of the miniature window.
- Improve drawing of the miniature window.
- Sync with the canvas.
CORE-18867
2023-06-14 18:51:40 +09:00
Hermès Bélusca-Maïto
113656563a [HALX86] Minor fixes in HaliFindBusAddressTranslation()
- Remove ContextValue variable. This variable erroneously truncated
  *Context value (that can contain a pointer value) to 32 bits.

- Gracefully fail instead of asserting.
2023-06-14 11:27:24 +02:00
Hermès Bélusca-Maïto
4f41000714 [FLOPPY] "zero" parameters in IoQueryDeviceDescription() call are NULL pointers. 2023-06-14 11:24:47 +02:00
Hermès Bélusca-Maïto
84b4a80beb [NTOS:IO] Fix some bugs in the IoQueryDeviceDescription helpers (#5320)
- Add missing ExAllocatePool NULL checks.

- Fix order of KeBugCheckEx parameters for PNP_DETECTED_FATAL_ERROR.

- The Controller and Peripheral numbers are zero-based, so if the caller
  wants to inspect controller (or peripheral) zero, let it be so!
  The original code was treating controller number zero for enumerating
  controllers of a given class within the different buses, which is
  wrong. See the diff'ed trace below.
  Tested with Windows' videoprt.sys VideoPortGetDeviceData().

```diff
 IoQueryDeviceDescription()
     BusType:          0xB093C224 (0)
     BusNumber:        0xB093C228 (0)
     ControllerType:   0xF9D01030 (19)
     ControllerNumber: 0xF9D01038 (0)
     PeripheralType:   0x00000000 (4294967295)
     PeripheralNumber: 0x00000000 (4294967295)
     CalloutRoutine:   0xF9CF74E4
     Context:          0xF9D5A340
 --> Query: 0xF9D5A22C

 IopQueryBusDescription(Query: 0xF9D5A22C)
     RootKey: '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM'
     RootKeyHandle: 0x00000598
     KeyIsRoot: TRUE
     Bus: 0xF9D5A290 (4294967295)
     Seen: 'CentralProcessor'
     Seen: 'FloatingPointProcessor'
     Seen: 'MultifunctionAdapter'
     SubRootRegName: '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter'

 IopQueryBusDescription(Query: 0xF9D5A22C)
     RootKey: '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter'
     RootKeyHandle: 0x00000590
     KeyIsRoot: FALSE
     Bus: 0xF9D5A290 (4294967295)
     Seen: '0'
     SubRootRegName: '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter\0'
     Getting bus value: 'Identifier'
     Getting bus value: 'Configuration Data'
     Getting bus value: 'Component Information'
     --> Getting device on Bus #0 : '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter\0'

 IopQueryDeviceDescription(Query: 0xF9D5A22C)
     RootKey: '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter\0'
     RootKeyHandle: 0x00000590
     Bus: 0
-    Enumerating controllers in '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter\0\DisplayController'...
+    Getting controller #0
+    Retrieving controller '\REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MultifunctionAdapter\0\DisplayController\0'
```
2023-06-14 11:20:56 +02:00
Katayama Hirofumi MZ
318b2e786d [MSPAINT] Trivial improvements
- Use SetPixelV instead of SetPixel.
- BI_RGB is zero.
- Use CS_HREDRAW and CS_VREDRAW.
CORE-18867
2023-06-14 17:42:21 +09:00
Katayama Hirofumi MZ
3b4422b41b [MSPAINT] drawing.cpp: Refactor Erase, Replace and Airbrush 3
CORE-18867
2023-06-14 17:14:41 +09:00
Katayama Hirofumi MZ
0334498068 [MSPAINT] drawing.cpp: Refactor Erase, Replace and Airbrush 2
CORE-18867
2023-06-14 17:03:22 +09:00
Katayama Hirofumi MZ
78c8df8393 [MSPAINT] drawing.cpp: Refactor Erase, Replace and Airbrush
CORE-18867
2023-06-14 16:44:54 +09:00
Katayama Hirofumi MZ
6d9b7f77ad [MSPAINT] mouse.cpp: Use override keywords
CORE-18867
2023-06-14 16:01:10 +09:00
Katayama Hirofumi MZ
2b623c1d04 [MSPAINT] Refactor ImageModel (#5335)
- Unify ImageModel::Insert and ImageModel::CopyPrevious to ImageModel::PushImageForUndo.
- Delete useless stuffs.
- Fix some memory leaks.
- Fix IDM_IMAGECROP.
CORE-17969, CORE-18867
2023-06-13 23:23:48 +09:00
Katayama Hirofumi MZ
70f897e4c9 [FONTVIEW] Add Japanese translation (ja-JP) 2023-06-13 22:04:44 +09:00
Stanislav Motylkov
8d8e81ee7a [FONTVIEW] Update Russian (ru-RU) translation
Addendum to 5ef3f347. CORE-18952
2023-06-13 14:40:46 +03:00
Nikita Piatygorskiy
5ef3f347ad [FONTVIEW] Make hardcoded messages localizable (#5305)
- Move messages from OnInstall procedure to en-US resource file.
- Applied the same changes to all language files, now it's available
  for translation into other languages.

CORE-18952

Signed-off-by: Nikita Piatygorskiy <generalhammond16@gmail.com>
2023-06-13 14:12:26 +03:00
Stanislav Motylkov
2e836fb339 [FONTVIEW] Formatting only (for PR #5305) 2023-06-13 12:44:46 +03:00
Katayama Hirofumi MZ
fa4c3bd560 [MSPAINT] s/HasUndoSteps/CanUndo/ and s/HasRedoSteps/CanRedo/
CORE-18867
2023-06-13 18:24:42 +09:00
Katayama Hirofumi MZ
1a88607387 [MSPAINT] Move selection by arrow keys (#5334)
Improve keyboard usability.
- Add CCanvasWindow::MoveSelection.
- Modify CMainWindow::OnKeyDown.
- If Esc key is pressed, then the selection will land to canvas.
- If any arrow key is pressed, then the selection will move a bit.
CORE-18867
2023-06-13 16:31:18 +09:00
Katayama Hirofumi MZ
0087ea6597 [MSPAINT] Set CC_RGBINIT to CMainWindow::ChooseColor
It had failed to set initial color. CORE-18867
2023-06-13 15:51:52 +09:00
Katayama Hirofumi MZ
cb245ff711 [MSPAINT] Scrolled canvas has defects in dragging a selection
CORE-18990, CORE-18867
2023-06-13 14:57:59 +09:00
Katayama Hirofumi MZ
62b6859a67 [MSPAINT] Follow-up of #5332 (9ff9580)
Simplify the epilogue code of CCanvasWindow::OnSetCursor by using bHandle variable. CORE-18867
2023-06-13 14:18:12 +09:00
Jose Carlos Jesus
9ff9580fb0 [MSPAINT] Fix the type of cursor displayed when overlaying scrollbars (#5332)
When the window size is smaller than the image size in both directions, the wrong cursor is displayed when hovering the mouse over the scrollbars.

Readjust position for file date and file size objects, to fit all text.

CORE-18867
2023-06-13 13:01:39 +09:00
Thamatip Chitpong
3da25b73c2 [MMSYS] Use PWSTR instead of PWCHAR for string (#5333)
Use PWSTR instead of PWCHAR for string
Constify some function arguments
2023-06-12 21:52:56 +02:00
Katayama Hirofumi MZ
83762575e1 [MSPAINT] Add (CS_HREDRAW | CS_VREDRAW) style to CCanvasWindow
Reduce repainting defects. CORE-18867
2023-06-12 21:12:37 +09:00
Joachim Henze
d3164a0f55 [SHELL32] Strip leftover in CDefView::FillFileMenu() (#5330)
In 0.4.14-dev-955-g 1cf564c25f
Katayama experimented with populating explorers file-menu when no object is selected.

Later we found out, that none of the new entries introduced by that commit really
made sense and even created duplicates. So the commit was reverted by
0.4.15-dev-6039-g 0fa4edebd9 'Revert CDefView::FillFileMenu (#5278)' CORE-18429

But it seems that not all parts were properly reverted back then,
maybe because 6 lines of new code were written between the two lines in the meantime.
2023-06-11 20:53:25 +02:00
George Bișoc
0f9be53985 [WIN32K:NTUSER] Fix an unintialized user's token variable case
And remove the "!NT_SUCCESS(Status)" check which is excessive, the expected
status will always be STATUS_BUFFER_TOO_SMALL anyway. This should fix
some compilation warnings spotted by GCC. Courtesy goes to Hermes for letting
me know of these warnings.
2023-06-11 18:14:02 +02:00
Stanislav Motylkov
7d5e159131 [NTOS:PNP] Assign correct PnP IDs to the devices detected by bootloader
Based on a commit by Vadim Galyant:
5ef5c11e7f

Also fix a minor type conversion warning. CORE-18963 CORE-17977

Co-authored-by: Vadim Galyant <vgal@rambler.ru>
2023-06-11 16:19:02 +03:00
Oleg Dubinskiy
114bc2b96e [NTGDI][NTUSER] Load DirectX graphics driver at system startup (#4551)
CORE-18221

Load the DirectX graphics kernel driver (dxg.sys) by win32k at WINSRV
initialization time, in NtUserInitialize(). Keep it always loaded in
memory, as on Windows, instead of loading it only by DirectX dlls.

This fixes the problem of acessing this driver: we need only to call
DxDdEnableDirectDraw() and do other stuff when DirectDraw/Direct3D is
required by anything. In other cases, it is called from win32k PDEV
functions when changing display mode (as in Windows). Since it's used
by other things too, it needs to be always loaded.

Otherwise, if it's not loaded, its APIs are not accessible when needed,
and execution fails.

For example, it fixes display mode change problem in VMWare, when a
new mode fails to be applied. Indeed, when it manages DirectDraw stuff,
it calls DXG routines, and therefore fails if dxg.sys isn't loaded
in memory at this moment.

- Implement InitializeGreCSRSS() initialization routine, that initializes
  supplemental NTGDI/GRE data once CSRSS and WINSRV are loaded:
  * Call DxDdStartupDxGraphics() inside it, which loads dxg.sys.
  * Additionally, move fonts and language ID initialization there, from
   win32k!DriverEntry. Confirmed by analysis on Windows.

- Call InitializeGreCSRSS() in NtUserInitialize() main initialization routine
  (called by WINSRV initialization).

Moved to NTGDI from previously NTUSER place:

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2023-06-11 13:44:56 +02:00
Sophie Lemos
29a706fc5a [NTOS:PNP] Fix bug causing all devices be considered as already existing
We should compare against DeviceObject as DeviceInstance is never NULL.
Fix a resource leak as well. The bug CORE-18983 seems to lay somewhere
else though, I just stumbled upon this one while researching it.

Note there is a BSOD in the PnP manager on reboot after the driver
installation failure, but it seems it was uncovered by the fix
as opposed to caused by it.
2023-06-11 13:13:11 +03:00
Andrei Miloiu
fa388640ca [GETUNAME] Update Romanian translation (#5323) 2023-06-10 20:03:23 +00:00
Andrei Miloiu
0887c1c040 [GETUNAME] Update Romanian translation (#5323) 2023-06-10 21:47:35 +02:00
Jose Carlos Jesus
ed22908780 [MSPAINT] Update Portuguese (pt-PT) translation (#5319) 2023-06-10 16:21:54 +00:00
Milan Raymakers
4782c314d4 [TRANSLATION] Improve Dutch (nl-NL) translation (#4765)
- [NOTEPAD] Improve Dutch (nl-NL) translation
- [TASKMGR] Improve Dutch (nl-NL) translation
- [WELCOME] Improve Dutch (nl-NL) translation
- [EXPLORER] Improve Dutch (nl-NL) translation

Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
2023-06-10 18:32:03 +03:00
Eric Kohl
c3db5e9c8e [ADVAPI32][SECLOGON] CreateProcessWithLogonW: Pass the environment to the callee 2023-06-10 14:10:14 +02:00
George Bișoc
59e74584ac [NTOS:SE] Refactor SeTokenCanImpersonate
- Refactor most of the code, since there's quite some stuff that don't make much sense.
For instance ImpersonationLevel is basically the requested impersonation level a
server asks for. PsImpersonateClient doesn't explicitly say that SecurityAnonymous
and SecurityIdentification are not allowed. If the server was to give such levels
it simply means it doesn't want to impersonate the client.

Another thing that doesn't make much sense is that we check if the client is
associated with an anonymous token, then avoid impersonating regular anonymous
tokens that weren't created by the system. Only system can create such tokens
and an anonymous token basically means a token with hidden security info.

- Check that the server is within the same client logon session.

- If the server is granted the SeImpersonatePrivilege privilege, allow impersonation
regardless of the conditions we want to check for.

- Update the documentation and code comments.
2023-06-09 11:53:56 +02:00
George Bișoc
8e2fe925f2 [NTOS:PS] Do not reference the copied token twice and properly assign the impersonation level in case the server can't impersonate
As it currently stands the PsImpersonateClient routine does the following approach.
If impersonation couldn't be granted to a client the routine will make a copy
of the client's access token. As it makes a copy of the said token PsImpersonateClient
will reference the copied token after impersonation info have been filled out.
In the same code path we are assigning the desired level for impersonation to thread
impersonation info.

This is wrong for two reasons:

- On a copy situation the SeCopyClientToken routine holds a reference as the object
has been created. Referencing it at the bottom of the PsImpersonateClient routine
will make it that the token is referenced twice and whenever a server stops
impersonation the token still has an extra reference count which keeps the token
still alive in object database and memory space.

- If client impersonation is not possible the thread impersonation info should
have been assigned SecurityIdentification level to further indicate that the
actual impersonation of the thread is not currently in force but instead we
are assigning the impersonation level that is supplied by the caller. For instance
if the requested level is SecurityDelegation but impersonation is not possible
the level will be assigned that of SecurityDelegation yet the token has an
impersonation level of SecurityIdentification. This could lead to erratic behaviors
as well as potential impersonation escalation.

Fix the aforementioned issues by avoiding a double reference and properly assign
the impersonation level to SecurityIdentification if the server is not able to
impersonate the target client.
2023-06-09 11:53:55 +02:00
George Bișoc
f483e42f89 [NTOS:SE] Grant the SYSTEM process the missing privileges
- Add the missing privileges to the SYSTEM privileges which might be needed,
notably SeUndockPrivilege, SeManageVolumePrivilege, SeCreateGlobalPrivilege and
SeImpersonatePrivilege.

Specifically SeImpersonatePrivilege is important here because with it we
allow system components of the core OS to perform certain system tasks.

- Declare the Groups array with a maximum of 3 elements in SepCreateSystemProcessToken
and 1 element in SepCreateSystemAnonymousLogonToken respectively, because previously
this array was oversized with most of free space left as a waste.

- Avoid hardcoding the size value of the Privilege array, instead initialize it
by hand and compute the exact number of elements with RTL_NUMBER_OF.
2023-06-09 11:53:51 +02:00
George Bișoc
d8bfe2a261 [GITHUB] Draft PRs should be exempt from closure by the stale PR bot 2023-06-09 11:43:04 +02:00
George Bișoc
56a450147c [GITHUB] Temporarily disable MSBuild
Due to a update of MSBuild build worker, MSBuild keeps failing which is a nuisance.
Temporarily disable that worker until a proper fix is shipped.

CORE-18911
2023-06-06 20:06:01 +02:00
Hermès Bélusca-Maïto
8061a6f6f4 [FREELDR] Cleanup some FldrCreateComponentKey() calls and archwsup.c 2023-06-05 22:39:47 +02:00
Hermès Bélusca-Maïto
0b695a6f70 [NTOS:IO] iorsrce.c: Add DBG traces for bus/device enumeration functions. 2023-06-04 21:40:08 +02:00
Hermès Bélusca-Maïto
2674e26cbb [NTOS:IO] Reformat iorsrce.c, no functional code changes.
- Fix whitespace; add SAL annotations, doxygen documentation...

- Deduplicate the array of description strings corresponding to
  IO_QUERY_DEVICE_DATA_FORMAT.

- Unhardcode the "[3]" into 'IoQueryDeviceMaxData': the maximum number
  of device data queried.
2023-06-04 21:40:07 +02:00
Hermès Bélusca-Maïto
509359b3ec [DDK] Add some documentation about the VIDEO_HARDWARE_CONFIGURATION_DATA structure. 2023-06-04 21:40:06 +02:00
Hermès Bélusca-Maïto
2e305b251b [DDK] Correct PERF_CONFIGURATION_DATA definition. 2023-06-04 21:40:05 +02:00
Hermès Bélusca-Maïto
8d242c6229 [SDK] Add CONFIGURATION_TYPE definition back in arc.h
The definition is also in xdk/iotypes.h and ntddk.h around _ARC_DDK_
for compatibility, but arc.h should also be self-contained regarding
ARC definitions.
2023-06-04 21:40:04 +02:00
Hermès Bélusca-Maïto
789a296c43 [SDK:XBOX] Add missing 'VOID' in empty function prototypes. 2023-06-04 21:40:03 +02:00
Hermès Bélusca-Maïto
6db0d24fb6 Fix typo "managment" -> "management" in our codebase...
... except for 3rd-party code or "official" names.
2023-06-04 21:39:56 +02:00
Katayama Hirofumi MZ
13b1eadebb [KERNEL32] LCMapString: Convert Chinese characters (#5316)
* [KERNEL32] LCMAP_SIMPLIFIED_CHINESE and LCMAP_TRADITIONAL_CHINESE

* fix

* improve

* reduce data

* improve
2023-06-04 21:46:01 +09:00
George Bișoc
51279c3e44 [NTOS:SE] Refactor NtOpenThreadTokenEx
- Wrap most of the code into a new private routine, SepOpenThreadToken.
And properly fail gracefully if we fail to open a thread's token instead of just keeping going.

- Do not use the same thread object that we have referenced in NtOpenThreadTokenEx
to do a copy of the access token in case we can't open it directly.
Instead we must reference a new object with full access, solely used for
the purpose to do our required operations.

- Add debug prints

CORE-18986
2023-06-04 11:09:34 +02:00
George Bișoc
a389f8aa0c [NTOS:SE] Make an access token effective after the end of token duplication
Removing any disabled privileges or groups in the middle of token dynamic
part allocation can pose problems. During the operation of making an access
token as effective, we are toying with the privileges and groups arrays
of the token.

After that we are allocating the dynamic part and set EndMem (the end tail
of the memory part) to that dynamic part, previously it was set to the
variable part. As a matter of fact we are making the token effective in
the middle where EndMem still points to VariablePart, thus DynamicPart
will end up with memory pool blocks butchered in the pool list.

Another problem, albeit not related to the DynamicPart corruption, is that
the code starts iterating over the UserAndGroups array from 0, which is
the actual user. One cannot simply remove the user from the array, so we
have to start looping right from the groups.

Move the token effective code part at the end of the SepDuplicateToken
function, which fixes the random pool corruptions caused by the butchered
DynamicPart.

CORE-18986
2023-06-04 11:09:22 +02:00
Katayama Hirofumi MZ
d708c7947b [MSPAINT] Use better units for image resolution (#5301)
Our paint program used the pixels per meter (PPM)
unit but this unit is hardly used in the world.
Let's use DPI (dots per inch) and/or pixels per
centimeter (PPCM). CORE-18867
2023-06-04 11:24:00 +09:00
Timo Kreuzer
b29b2682bf [UMPNPMGR] Fix uninitialized variable (#5310)
The unhiding and guilty revision that was identified by @stasm by bisecting the
bootability of LiveCD was 0.4.15-dev-6050-g13e6cbc
As that was the symptom: "We could not longer boot livecd". CORE-18986
2023-06-01 19:44:05 +09:00
Katayama Hirofumi MZ
36cdd34814 [MSPAINT] Use black and R2_NOTXORPEN instead of white and R2_XORPEN
Workaround. CORE-18867, CORE-18921
2023-05-31 17:00:05 +09:00
Katayama Hirofumi MZ
bddd8b058c [MSPAINT] Minor adjustment on drawing text on TOOL_TEXT
CORE-18867
2023-05-31 13:31:50 +09:00
Katayama Hirofumi MZ
aeffa57ec7 [MSPAINT] Fix textbox background by using WM_CTLCOLOREDIT
CORE-18867
2023-05-31 13:21:01 +09:00
Eric Kohl
2626c724e9 [UMPNPMGR] Replace some magic values 2023-05-29 11:58:09 +02:00
Eric Kohl
024daea0af [UMPNPMGR] Check ulFlags in PNP_GetGlobalState
Return CR_INVALID_FLAG if ulFlags is not zero.
2023-05-29 09:54:31 +02:00
Eric Kohl
13e6cbcafa [UMPNPMGR] Check for interactive caller in PNP_ReportLogOn
Do not run device install when a non-interactive user logs on.
2023-05-29 09:38:31 +02:00
Eric Kohl
e54b32b434 [RPCRT4] Set binding handle for server functions
This enables us to impersonate server functions using RpcImpersonateClient.
2023-05-28 21:04:01 +02:00
Timo Kreuzer
8f9ef68ea7 [WIN32K][WIN32U] Fix system call ids (#5287)
- Delete the win32ksvc-ros.h file, which was not used
- Use a separate file for x64 (based on 2k3 x64 free)
- Delete w32ksvc.db. It's unused since ages.
2023-05-28 16:19:50 +03:00
Stanislav Motylkov
b29e82d0e0 [APPWIZ] Use new Appwiz-mode to start RAPPS with "Installed" section open
CORE-18981
2023-05-27 15:38:35 +03:00
Stanislav Motylkov
acbb73a89d [RAPPS] Open "Installed" section in Appwiz-mode when RAPPS already runs
CORE-18981
2023-05-27 15:38:01 +03:00
Stanislav Motylkov
ff1fa4f38a [RAPPS] Add /APPWIZ command-line key to open "Installed" section
Addendum to ab7ddc44. CORE-18981
2023-05-27 15:36:53 +03:00
Stanislav Motylkov
d6fecc52d1 [RAPPS] Move CMainWindow creation to upper function 2023-05-27 15:31:03 +03:00
Stanislav Motylkov
85ca8afb60 [NTOS:PNP] IopEnumerateDetectedDevices(): General refactoring
CORE-18962

- Deduplicate a while-loop by adding one more recursive call.
- Add IopMapDetectedDeviceId() helper function with a structure
  in order to reduce hardcoded constants and checks.
2023-05-27 12:22:57 +02:00
Nikita Piatygorskiy
2eb67000a5 [DXDIAG] Fix inconsistent WS_DISABLED style (#5303)
Make resource files consistent among different languages.

CORE-18903

Add the WS_DISABLED flag for IDC_BUTTON_HELP and IDC_BUTTON_SAVE_INFO,
in those places where it was not done. The actions corresponding to those
buttons are currently unimplemented, this is why they were disabled.

Signed-off-by: Nikita Piatygorskiy <generalhammond16@gmail.com>
2023-05-26 18:47:06 +02:00
Timo Kreuzer
2b8c1b0dac [WIN32K] Fix WindowExtra for some server-side classes
These values are based on apitest results.
2023-05-25 18:56:02 +03:00
Timo Kreuzer
05cd3406e7 [USER32] Fix SetWindowWord/Long
These must use the corresponding NtUserSetWindowWord/Long function and cannot use NtUserSetWindowLongPtr, otherwise the function can fail, when there is only space for a LONG, but not for a LONG_PTR at the specified offset.
2023-05-25 18:56:02 +03:00
Katayama Hirofumi MZ
0fa4edebd9 [SHELL32] Revert CDefView::FillFileMenu (#5278)
CORE-9467, CORE-18429, CORE-11797
2023-05-23 17:38:12 +09:00
Stanislav Motylkov
634415cace [RAPPS] Update Russian (ru-RU) translation 2023-05-21 23:24:05 +03:00
Hermès Bélusca-Maïto
44e1d87596 [USER32] RegisterClassExWOWW/ExA: NULL or IS_ATOM class are treated the same. (#5291)
CORE-18978

Fixes NULL pointer access when e.g. class.lpszClassName == NULL and
the class is registered. The RegisterClass(ExA/W/...) should return 0
instead of throwing an invalid access exception.

However, providing an invalid pointer will trigger a crash.
2023-05-21 19:35:19 +02:00
Hermès Bélusca-Maïto
f172f98a10 [USER32] Minor formatting and dead-code removal.
Remove dead code CreateSmallIcon from commit e0968c78 (r18764);
see also b243445c (r60592).
2023-05-21 19:28:53 +02:00
Andrei Miloiu
b59bae8bb9 [BROWSEUI] Update Romanian translation (#5299) 2023-05-21 14:41:59 +02:00
Andrei Miloiu
474f4d05c0 [EXPLORER] Update Romanian translation (#5294) 2023-05-21 14:40:49 +02:00
Andrei Miloiu
c7d9949b9d [DESK] Update Romanian translation (#5298) 2023-05-21 14:37:26 +02:00
Andrei Miloiu
fd0b294dfc [FC] Update Romanian translation (#5292) 2023-05-21 14:31:12 +02:00
Andrei Miloiu
676c34ae79 [DISKPART] Update Romanian translation (#5296) 2023-05-21 14:30:01 +02:00
Doug Lyons
8a7b5a9009 [SHELL32][USER32] Fix icon regression and one test (#5207) 2023-05-21 11:18:00 +02:00
Jose Carlos Jesus
32f80b5929 [UTILMAN] Fix content order in IDC_LISTBOX (#5289)
OSK et Magnify are mixed at initialization (language dependent),
LBS_STANDARD includes LBS_SORT style that changes the content in the listbox.

Patch by KRosUser.

CORE-18274
2023-05-20 20:48:30 +02:00
Philippe Morin
8b4572c159 [TRANSLATION][BROWSEUI] Improve French (fr-FR) translation (#5295)
CORE-18914
2023-05-20 20:45:05 +02:00
Stanislav Motylkov
eef0b74546 [UTILMAN] Fix resource file headers. No code changes.
Addendum to 636f2e32.
2023-05-20 20:42:07 +02:00
Andrei Miloiu
b54ec5bde3 [SOLITAIRE] Update Romanian translation (#5293) 2023-05-20 17:44:56 +02:00
Jose Carlos Jesus
636f2e3241 [UTILMAN] Add Portuguese (pt-PT) translation (#5290) 2023-05-19 10:27:19 +02:00
Dmitry Borisov
27c0f0e72d [FREELDR] Fix builds for PC-98 and Xbox platforms (#5275)
Fix broken build after UEFI support merge.
Addendum to commit 150f72127.

CORE-11954, CORE-16216, CORE-17977

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2023-05-18 20:05:50 +02:00
Hermès Bélusca-Maïto
e2b04fe75d [ATTRIB] Improve command-line parsing. (#5288)
Fix arguments parsing and redundant code in case no file specification
has been given.
(Handles both "attrib" and "attrib +h /s" as given in example.)
2023-05-18 13:07:31 +02:00
Jose Carlos Jesus
7f45cac9ab [REGEDIT] Creating a new Key should add a new entry even when no child exist. CORE-18878 (#5274)
- Avoid using a NULL pointer when My Computer is selected, by disabling the New Key menu item.
- Simplifies and fix code style in GetItemPath function.
- Add a new entry even when no child items exist.
CORE-18878
2023-05-18 19:16:49 +09:00
Hermès Bélusca-Maïto
f870bbe1d4 [ATTRIB] Simplify the ErrorMessage() function.
And send the errors to the error stream.
2023-05-18 12:12:44 +02:00
Hermès Bélusca-Maïto
0f50a22d3b [ATTRIB] Reorganize resource file headers.
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2023-05-17 19:40:43 +02:00
Hermès Bélusca-Maïto
b3c55b9e6c [NTOS:LPC] Ensure debug-traced pointer-given user-mode data is captured. (#4399)
CORE-18098
2023-05-17 17:40:37 +02:00
Hermès Bélusca-Maïto
e4d572a432 [NTOS:LPC] Turn a DPRINT1 into an LPCTRACE. (#4399)
CORE-18098
2023-05-17 17:40:29 +02:00
Hermès Bélusca-Maïto
cbae866df3 [KERNEL32] CreateProcessInternalW: Initialize uninitialized ClientId.
This situation happens when either of the two "goto VdmShortCircuit;"
code paths are taken when starting a DOS or WoW16 app.
2023-05-17 16:17:42 +02:00
Hermès Bélusca-Maïto
1cbcc4ac5c [KERNEL32] Minor comments improvements in CreateProcessInternalW. 2023-05-17 16:17:38 +02:00
Thamatip Chitpong
56e93b882d [TASKMGR] Add status bar description for "Properties" and "Open File Location" menu items (#5280)
Also fix access key collision for en-US/el-GR.
2023-05-17 12:41:28 +02:00
Timo Kreuzer
15fbcc19b9 [NTOS:KE/x64] Fix KiConvertToGuiThread
- Do not allocate a new stack, if the thread already has a large one. This prevents the function from freeing a large stack as a normal stack and subsequently leaking system PTEs.
- Fix the check for failure of PsConvertToGuiThread (test eax, not rax, for being negative, because by default rax is zero extended from eax, not sign extended). This fixes an infinite loop on failure.
2023-05-16 22:03:13 +03:00
Timo Kreuzer
c7fd9983cb [USER32_APITEST] Add tests for GetClassInfo 2023-05-16 21:59:19 +03:00
Timo Kreuzer
a9675d00a2 [USER32_APITEST] Add tests for [Get|Set]Window[Word|Long|LongPtr] 2023-05-16 21:59:19 +03:00
Hermès Bélusca-Maïto
fefc5f4823 [RAPPS] Centralize RAPPS exposed names: registry & user local settings (#4214)
Centralize the names of the RAPPS' registry setting sub-key, and
user local settings & offline apps database sub-directories.

- Change the name of the application database sub-directory from
  "rapps\rapps" to "RApps\appdb".

- Adjust the documentation to reflect this.

- Simplify CConfigParser constructor by removing GetINIFullPath().
2023-05-16 12:37:49 +02:00
Jose Carlos Jesus
30bc0b6b7a [CPL:INPUT] Fix "Dvorak" typo in all .rc files (#5277)
CORE-18843
2023-05-11 16:28:59 +02:00
Katayama Hirofumi MZ
1e5e184cbd [APPWIZ] start_params: Simplify using L"..." 2023-05-11 13:01:02 +09:00
Katayama Hirofumi MZ
df531336b1 [ADVAPI32_APITEST] IsTextUnicode: Use __LINE__ to identify test entry
CORE-18837
2023-05-11 12:27:18 +09:00
Stanislav Motylkov
059d12a5ac [NTOS:PNP] IopEnumerateDetectedDevices(): Fix CmResourceList leak
CORE-18962
2023-05-10 20:29:29 +02:00
Katayama Hirofumi MZ
d8946e20cb [NTUSER] Implement THREADSTATE_CHECKCONIME (#5272)
- Add THREADSTATE_CHECKCONIME handling in NtUserGetThreadState function.
CORE-11700
2023-05-10 20:24:21 +09:00
Hermès Bélusca-Maïto
3eb6cca9bd [RAPPS] Cleanup headers inclusions (#4206) 2023-05-10 12:12:25 +02:00
Katayama Hirofumi MZ
4aff629302 [IMM32][NTUSER][SDK] Add ImmCallImeConsoleIME (#5271)
- Add <jpnvkeys.h>.
- Add imm32!ImmCallImeConsoleIME.
CORE-11700
2023-05-10 14:04:01 +09:00
Stanislav Motylkov
6e3ad0411a [NTOS:PNP] IopEnumerateDetectedDevices(): Formatting only
CORE-18962
2023-05-08 16:07:11 +02:00
Stanislav Motylkov
484c26d99f [NTOS:PNP] Move Firmware Mapper functions into new file
CORE-18962
2023-05-08 16:07:01 +02:00
Hermès Bélusca-Maïto
7112815e23 [FREELDR] PeLdrLoadImage: FileName -> FilePath and make it const. 2023-05-07 22:14:30 +02:00
Katayama Hirofumi MZ
8b948ff062 [KERNEL32][SDK] RegisterConsoleIME and UnregisterConsoleIME (#5270)
The conime.exe program exists in WinXP/Win2k3 and it realizes Console IME. conime.exe calls kernel32!RegisterConsoleIME and kernel32!UnregisterConsoleIME. To realize Console IME, these two functions are required. CORE-11700
2023-05-07 22:55:46 +09:00
Artyom Ovsyannikov
c50b94579e [TASKMGR][TASKKILL][HIVESYS] Russian translation update (#5120) 2023-05-05 22:31:29 +02:00
Philippe Morin
3e9d5b8e2d [TRANSLATION][DESK.CPL] Improve French translation (#5218) 2023-05-05 21:32:40 +02:00
Thamatip Chitpong
9d48f26d29 [WINLOGON] Implement logoff and MessageBeep sounds support (#4755)
CORE-13951
2023-05-05 20:18:34 +02:00
Thamatip Chitpong
cc114a0706 [REACTOS] Add converted sound files (#4755)
CORE-13951

Add ReactOS_Critical_Stop.wav and ReactOS_Notify.wav
2023-05-05 20:18:12 +02:00
Dmitry Borisov
8df1b53508 [NTOS:CM] Initialize the alternative system architecture field on PC-98 builds (#5136)
This is needed by some 3rd party drivers.
CORE-17977
2023-05-05 18:04:35 +02:00
Thamatip Chitpong
f18111b641 [WINMM] Winmm fixes for system sound (#4635)
CORE-13951

MIDIMAP_LoadSettings and PlaySound:
Use RegOpenCurrentUser to access the appropriate HKEY_CURRENT_USER key.
This allows functions that use HKEY_CURRENT_USER to be called from system
processes while impersonating, for example: winlogon.

PlaySound:
- Open the correct registry key.
- Expand environment strings if registry value type is REG_EXPAND_SZ.
- Handle "SystemDefault" event and improve flags handling.
- Don't use proc_PlaySound as thread proc.
- Fix SND_ASYNC flag for system processes.
  Move get_mmio* code out of proc_PlaySound to fix impersonation problem.
2023-05-05 14:19:34 +02:00
Tom Brogan
a5bff2457a [SHELL32] Improve disk properties pie chart (#5239)
CORE-18906

- Increase the vertical height of the disk space pie chart and center
  the "Drive %c" label below it.
- Add a 1 pixel outline at the sides and bottom of the disk properties
  pie chart.
- Explicitly set the outline pen instead of relying on the DC's default pen.
- Widen "Disk Cleanup" button on ja-JP locale, to prevent the text from
  being clipped due to the larger font size and spacing.
2023-05-05 13:35:32 +02:00
Splitwirez
ba5ed3ffbb [THEMES] Several fixes for Lautus style (#5253)
- CheckBoxes now show checkmarks when checked;
- Titlebar text alignment is now consistent between restored/maximized windows;
- 2-column Start Menu header now shows its intended background image.
2023-05-05 13:32:44 +02:00
Joachim Henze
4393e6cb54 [REGEDIT] de-DE.rc Fix accelerator collision (#5265)
Alt+D in german translation is already reserved for the file menu "&Datei"
in ROS and in MS Windows, thus we cannot use the same as accelerator
for focusing the address bar.
So for german we will use Alt+S instead, which is the same shortcut that
german MS+ROS explorer use for focusing their address bar.

This is an addendum to commit f908d37bb from PR #4885
which broke the german file-menu accelerator.
2023-05-05 13:30:21 +02:00
Katayama Hirofumi MZ
2d31b06c67 [NTUSER] Remember old KL for Chinese IMEs (#5266)
The Chinese user uses Ctrl+Space key combination to switch between the IME keyboard and the non-IME keyboard. To enable Ctrl+Space, the system has to remember the previous keyboard layout. In IntImmActivateLayout function, remember the previous keyboard layout (hklPrev) to switch back for Chinese IMEs. CORE-18950
2023-05-05 17:00:05 +09:00
Timo Kreuzer
df72bcd06c [NTOS:KDBG] Only load symbols on x86
Symbol loading leads to a hang on x64 boot in 2nd stage and KDBG symbols don't work on x64 anyway.
2023-05-04 14:09:14 +03:00
Justin Miller
f2a58733e8 [FREELDR][SDK] Build UEFI bootloader for ARM32 (#5196)
CORE-17604

- Disable some functions for ARM32;
- Remove some link options not used on ARM;
- Add get _controlfp() to LIBCNTPR to link properly on ARM;
- Unify Freeldr UI Drawing on ARM;
- Add qemu UART debugging for ARM32/ARM64.
2023-05-03 20:56:06 +02:00
Katayama Hirofumi MZ
a0bef1998e [KBSWITCH] Rely on GetKeyboardLayoutList for getting list (#5263)
- Use GetKeyboardLayoutList to get the keyboard list instead of using Preload registry key.
- Get the special IDs from registry to handle special HKLs in newly-added LoadSpecialIds function.
- Add GetKLIDFromHKL, GetHKLFromLayoutNum, UpdateLayoutList, and GetKLIDFromLayoutNum helper functions.
CORE-13145, CORE-10667, CORE-18924
2023-05-03 07:45:35 +09:00
Katayama Hirofumi MZ
e6bced7a35 [EXPLORER][RUNDLL32] Restore minimized non-task windows (#5228)
The minimized non-task windows were not usable due to the bugs. In some situations, the system will restore the minimized non-task windows.
- Add IsTaskWnd helper function.
- Add SendPulseToTray function to send a pulse to the tray window.
- At some shell hook handlings, send a pulse to the tray window.
- Add IgnorePulse flag to control the timing of restoring.
- Add a timer to reset IgnorePulse flag.
- If the pulse has come and IgnorePulse flag is false, then restore the minimized non-task windows.
- Modify the rundll32 window procedure.
- Use WINDOWPLACEMENT to restore the minimized windows.
CORE-13895, CORE-18350
2023-05-03 07:39:05 +09:00
Joachim Henze
31fdaca8c0 [REGEDIT] Strip redundant include, minor formatting (#5264)
strsafe.h is already included via regedit.h
2023-05-01 16:50:01 +02:00
Vincent Franchomme
aaeb131bd4 [EXT2FS] Align with upstream and mark ReactOS diff (#5245)
NOTE: There are no new features in this PR, we stay with upstream version 0.69.
CORE-18645

- Add ifdefs to distinguish ReactOS code/fixes from the upstream code;
- If upstream code was overriden, reintroduce it in #else section;
- Re-align .rc version info with upstream (0.69).
2023-04-30 18:26:30 +02:00
Jose Carlos Jesus
39d5f1bf54 [SHELL32] Enable Network Connection Rename (#5073)
CORE-18750
- Add Network Connection pidl type 0x99;
- Add binary comparison to pidl memory range.
2023-04-30 15:40:10 +02:00
Doug Lyons
5c8ec78b71 [SETUPAPI] Sync setupapi/queue.c to Wine 4.8 (#5233)
Sync setupapi/queue.c to Wine 4.8 to improve cab extraction.
This fixes 'fixme:(dll/win32/setupapi/queue.c:418) awful hack: extracting cabinet'
2023-04-30 15:34:26 +02:00
Jose Carlos Jesus
a0d747fa50 [COMDLG32] Enable saving files with different extension (#4903)
As on Windows, gives precedence to the user's extension in file names if there is one.
Otherwise appends the selected extension. If not selected, append default extension.
2023-04-30 15:21:20 +02:00
Justin Miller
1fd9d11f16 [FREELDR] Add disk access handlers for UEFI (#5219)
CORE-11953
2023-04-30 14:57:10 +02:00
Joachim Henze
3c797b314f [E1000] Stop logging MAC, is sensitive data of log-contributors (#5254) 2023-04-29 23:02:03 +02:00
Katayama Hirofumi MZ
7ee41e9e60 [KBSWITCH] Delete SHLoadRegUIString hack (#5260)
Because shlwapi!SHLoadRegUIString function is already implemented, so we don't need the hack any more. CORE-10667
2023-04-29 07:28:56 +09:00
Katayama Hirofumi MZ
7eda556c64 [INPUT] Remove fake SHLoadRegUIStringW hack (#5258)
Because shlwapi!SHLoadRegUIStringW function is already implemented, so we don't need the hack any more. CORE-11700
2023-04-29 07:27:54 +09:00
Katayama Hirofumi MZ
c9ed65e0cc [NOTEPAD] Delete my name from resource copyright text (#5261)
The copyright text was too long. CORE-18837
2023-04-28 21:48:45 +09:00
Katayama Hirofumi MZ
31f3eb1d57 [RICHED20] RichEdit: CompForm and CandForm (#5257)
Correctly display the composition window and the candidate window.
- At update_caret function, set the position and font of the composition window.
- We don't use internal composition string. Rely on the composition window.
- Improve WM_IME_SETCONTEXT, WM_IME_CONTROL, WM_IME_SELECT, WM_IME_STARTCOMPOSITION, WM_IME_COMPOSITION and WM_IME_ENDCOMPOSITION message handlings.
CORE-11700
2023-04-28 08:28:57 +09:00
Mark Jansen
507aae4c30 [ATL] Take _ATL_FREE_THREADED into account
When it is not defined, COM should not be initialize multithreaded
2023-04-27 16:29:21 +02:00
Katayama Hirofumi MZ
f4b7087a0e [ADVPACK_APITEST] Add advpack_apitest:DelNode testcase (#5256)
Preparation for advpack!DelNodeA/W functions implementation. CORE-13275, ROSTESTS-276
2023-04-27 20:35:41 +09:00
Mark Jansen
4cdcea5e65 [SHELL32] Implement SHQueryRecycleBinW 2023-04-26 22:50:11 +02:00
Mark Jansen
08d808cc44 [ATL] Add CAtlList::SwapElements 2023-04-26 22:48:29 +02:00
Katayama Hirofumi MZ
9d7d3314b3 [REGEDIT] Check whether pszSelectKey is NULL on CDN_FILEOK (#5255)
Avoid crash on exporting root. Add NULL check of pszSelectKey on CDN_FILEOK handling. CORE-18938
2023-04-25 18:04:36 +09:00
Thamatip Chitpong
560671a784 [NTUSER] Improve MsqPostMessage (#5225)
- MsqPostMessage: Fill Message structure before InsertTailList. For style consistency.
- MsqPostMessage: Fix the use of MessageQueue variable
2023-04-24 20:11:46 +02:00
Mark Jansen
d3feae5139 [ATL_APITEST] Add test for OBJECT_ENTRY_AUTO
CORE-18936
2023-04-22 21:24:04 +02:00
Mark Jansen
d12880829f [ATL] Add OBJECT_ENTRY_AUTO for simpler com object registration
Of course gcc needs a nasty hack to include the symbol.
CORE-18936
2023-04-22 21:23:55 +02:00
Mark Jansen
bf29d98a54 [PSDK] Add some more argument names 2023-04-22 18:31:49 +02:00
George Bișoc
8e7b22a631 [NTOS:OB] Fix the SAL2 annotation of ObQueryTypeInfo
The data has to be written into ObjectTypeInfo based on the return length,
not only what is provided by the input buffer length. Fix suggested by
Hermès.
2023-04-22 17:18:57 +02:00
George Bișoc
00c69bcd15 [NTOS:OB] Properly calculate the return length in ObQueryTypeInfo
On a x86 system aligning the return length pointer to a 4-byte boundary
works best since pointers in general are 4-byte aligned for x86 systems.

However, what happens on a AMD64 system is that we still align this pointer
to 4-byte, ObjectTypeInfo is a 8-byte pointer and we might write into
the return length past the 4-byte boundary.

If one were to allocate a pool of memory with that length and query all
the object types info and free the said pool of memory thereafter, the
system will crash with BAD_POOL_HEADER because ObQueryTypeInfo overwrote
the return length past the 4-byte boundary length therefore leading up with
corrupted memory blocks in the pool header.

This symptom of BAD_POOL_HEADER happens exactly the same in Windows Server
2003 x64 Edition. Newer versions of Windows like 10 aren't affected.

But, Windows has another bug where they are using MaximumLength for the
calculation of the needed length to be returned to caller. MaximumLength
does not guarantee you that it includes the NULL-terminator in the length
and that potentially leads to a buffer overrun.

Also annotate the ObQueryTypeInfo function with SAL2.

https://processhacker.sourceforge.io/doc/object_8c_source.html (read the
comment in KphObjectTypeInformation).
2023-04-21 12:45:31 +02:00
Atharva Kulkarni
6eee9f9daf [SCSIPORT] Flush and Free Map Registers (#5190)
- Flush Map registers once the DMA completes
- Free Map registers once the DMA completes
- Add support for SGL allocated from NonPagedPool

Test:
Force Allocations of SGL from Non Paged Pool and ensure OS boots and functions properly

Test Logs:
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
DHCPCSVC: Adapter Name: [{7cd69ac0-dabb-410a-b927-cb3961d174da}] (dynamic)
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
WARNING:  HalCalculateScatterGatherListSize at hal\halx86\generic\dma.c:1168 is UNIMPLEMENTED!
SpiAdapterControlFORCING ALLOCATION FROM SGPOOL
SpiAdapterControlFORCING ALLOCATION FROM SGPOO
2023-04-21 12:44:31 +02:00
Adam Słaboń
6eb8fe4f82 [NTOS:MM] MmCanFileBeTruncated: Check whether second (optional) parameter was passed (#5248)
Second parameter is optional, so mark it as such and check whether it was passed. Fixes a sporadic 0x24 bugcheck caused by access violation when running ReactOS on NTFS volume with WinXP ntfs.sys.
2023-04-19 23:12:11 +02:00
Vincent Franchomme
058726a2c1 [I8042PRT] Add Dell Latitude D410 to the hack list (#5246) 2023-04-18 10:03:16 +02:00
Mark Jansen
6e35c75035 [GITHUB] Add Labeler rule for ATL 2023-04-17 18:12:27 +02:00
Mark Jansen
09afeeccf5 [GITHUB] Add Labeler rule for shell stuff 2023-04-17 18:12:26 +02:00
Mark Jansen
9c8580a1e0 [ATL] Add CString::AppendFormat 2023-04-17 18:09:34 +02:00
Timo Kreuzer
28a305e26a [USER32_APITEST] Comment out a test for GetMessageTime that randomly fails on Windows 2023-04-17 00:41:31 +03:00
Timo Kreuzer
b292036347 [JSCRIPT_WINETEST] Disable a test that fails on Windows 2003 2023-04-17 00:41:31 +03:00
Timo Kreuzer
81d58bcf06 [NTDLL_APITEST] Fix a test for NtMapViewOfSection 2023-04-17 00:41:31 +03:00
Timo Kreuzer
7d4833cb34 [NTDLL_APITEST] Try to fix test for NtMapViewOfSection
Remove a 0 sized test.dll, which overwrites an already present proper test.dll
2023-04-17 00:41:31 +03:00
Timo Kreuzer
893f880b60 [WIN32KNT_APITEST] Disable test for NtGdiDdQueryDirectDrawObject 2023-04-17 00:41:31 +03:00
Timo Kreuzer
69de8de402 [STATIC_CRT_APITEST] Add todo to tests that fail on Windows 2023-04-17 00:41:31 +03:00
Timo Kreuzer
53d481993d [SHELL32_APITEST] Disable CUserNotification test
The test doesn't work on Windows 2003, because the balloon window does not close itself.
2023-04-17 00:41:31 +03:00
Timo Kreuzer
0181560848 [KERNEL32_APITEST] Make tests pass on Windows 2003 2023-04-17 00:41:31 +03:00
Timo Kreuzer
e536256e0a [USER32_APITEST] Remove "ugly ros hack"
This hack corrupts memory and causes test failures on Windows.
2023-04-17 00:41:31 +03:00
Timo Kreuzer
8a455da532 [IPHLPAPI_APITEST] Fix tests so they pass on Windows 2003 and Windows 10 2023-04-17 00:41:31 +03:00
Timo Kreuzer
78a31ce423 [GDIPLUS_WINETEST] Make tests pass on Windows 2003 2023-04-17 00:41:31 +03:00
Hervé Poussineau
49246541de [WIN32SS:ENG] Do not free LDEV if unloading a driver failed
Currently, LDEVOBJ_bUnloadImage always returns FALSE due to missing functionality in ntoskrnl.
LDEVOBJ_vFreeLDEV contains an assert that driver is correctly unloaded before freeing it.
Prevent this assert by calling LDEVOBJ_vFreeLDEV only if LDEVOBJ_bUnloadImage succeed.

This can be easily triggered if DrvEnableDriver function (called in LDEVOBJ_bEnableDriver) fails.
2023-04-16 19:37:05 +02:00
Adam Słaboń
7d71456144 [MKISOFS] Fix MSVC build on ARM hosts
Check also for MSVC target machine macros on ARM
2023-04-16 18:53:54 +02:00
Thamatip Chitpong
42ef03381f [HHCTRL.OCX] Reduce ROS diff 2023-04-16 18:53:19 +02:00
Timo Kreuzer
93dface84e [PSEH] Change return type of filter function prototype to avoid broken return from inside it. 2023-04-14 11:56:08 +03:00
Timo Kreuzer
cb74d9e24e [NTOS/CC] Fix broken usage of _SEH2_FINALLY
Finally handlers are - unlike except blocks - not part of the function they are in, but separate functions, which are called during unwind. PSEH implements them on GCC using nested functions. While "return" from a finally handler is allowed with native SEH, it's handled by the compiler through an extra unwinding operation using _local_unwind, WHICH IS NOT SUPPORTED BY PSEH! With PSEH, returning from a finally handler does not return from the function, instead it will only return from the finally handler and the function will continue below the finally handler as if there was no return at all. To fix this, the return is removed and an additional success check is added.
Also use _SEH_VOLATILE to make sure the variable assignment is not optimized away by the compiler and add zero out the result parameters on error.
2023-04-14 11:56:08 +03:00
Timo Kreuzer
b2fcd27aaa [NTOS/CC] Fix calls to CcRosEnsureVacbResident
The function returns BOOLEAN, not NTSTATUS! Also wrap it in SEH, because it can throw an exception on failure.
2023-04-14 11:56:08 +03:00
Timo Kreuzer
178285c275 [USER32_WINETEST] Change module type to win32cui to be able to see test results 2023-04-14 11:47:29 +03:00
Mark Jansen
89f58017c0 [CODEOWNERS] Add Giannis and myself as reviewer for shell related stuff 2023-04-13 19:09:55 +02:00
Thamatip Chitpong
77d4653164 [NTUSER] co_UserDestroyWindow: Validate window before destroying it (#5054)
Prevent the window from being destroyed twice
fixes BSOD 0x1E CORE-18821
2023-04-12 22:20:46 +02:00
Thamatip Chitpong
15c755e5f9 [MMSYS] Improve sound test button (#4879)
- Make sound test button able to stop the sound (like WinXP's mmsys.cpl)
- Change stop icon
- Add documentation for GetSoundDuration
2023-04-12 22:00:37 +02:00
Hermès Bélusca-Maïto
99b0e4b9a9 [NTOS:KDBG] Only use the direct KdbPrintf instead of KdbpPrint (pager) inside the exception handler (outside the debugger main loop). 2023-04-12 19:30:57 +02:00
Hermès Bélusca-Maïto
9808d32f4a [NTOS:KDBG] Use local KdbPrintf function for DPRINT1 instead of DbgPrint...
... that would otherwise cause a debugger re-entry.

Also use KdbPuts/Printf instead of KdpDprintf that won't be available
once KDBG is moved out of it.
2023-04-12 19:30:56 +02:00
Hermès Bélusca-Maïto
f620ce7705 [NTOS:KDBG] Introduce local versions of KdpPrintString, KdpDprintf and KdpPromptString...
... since the original ones are internal to the kernel and won't be
available once KDBG is moved out of it.

Use these functions in the pager/prompt support.
2023-04-12 19:30:54 +02:00
Hermès Bélusca-Maïto
fdf4814ebb [NTOS:KDBG] Correctly balance KeStackAttachProcess with KeUnstackDetachProcess, instead of KeDetachProcess. 2023-04-11 00:44:11 +02:00
Hermès Bélusca-Maïto
579eab8a31 [NTOS] Include kdbg/kdb.h only in the files that really need it. 2023-04-11 00:44:10 +02:00
Katayama Hirofumi MZ
8f2c2c1def [COMCTL32][USER32] EDIT: Fix caret position for IME
CORE-11700
2023-04-10 08:27:50 +09:00
Katayama Hirofumi MZ
5ff0ef403e [NTUSER] IntImmActivateLayout: Set CI_IMMACTIVATE if not pImeWnd (#5231)
In IntImmActivateLayout function, if pImeWnd was NULL and pti->spDefaultImc was non-NULL, then set CI_IMMACTIVATE flag. CORE-11700
2023-04-09 15:19:47 +09:00
Katayama Hirofumi MZ
66c8ded454 [COMCTL32][USER32] EDIT: CompForm and CandForm (#5226)
The changes of this PR are on EDIT controls.
- Delete composition_len and composition_start members.
- Add EDIT_ImmSetCompositionWindow helper function.
- At EDIT_SetCaretPos, set the position of the composition window.
- We don't use internal composition string. Rely on the composition window.
- Improve WM_IME_STARTCOMPOSITION, WM_IME_COMPOSITION and WM_IME_ENDCOMPOSITION message handling.
CORE-11700
2023-04-09 15:19:19 +09:00
Katayama Hirofumi MZ
a9284b5664 [MSPAINT] Fix handle leaks about memory bitmap
This fixes CORE-18919. CORE-18867
2023-04-09 11:17:17 +09:00
Doug Lyons
bfc6a119c5 [ADVAPI32] Do not fail on creating a registry key if the security attributes have an invalid length. (#5230)
Provide graceful handling of RegCreateKeyExW when lpSecurityAttributes->nLength is zero.
This reverts commit cc0716b65 (SVN r24491).
JIRA issue: CORE-15471
2023-04-09 04:04:04 +02:00
Katayama Hirofumi MZ
96c7fe4ccd [MSPAINT] Fix Copy and Paste
Call GetSelectionContents in SelectionModel::GetBitmap.
CORE-18920, CORE-18867
2023-04-09 09:14:32 +09:00
Katayama Hirofumi MZ
639739a7cd [MSPAINT] Fix SelectionModel::InsertFromHBITMAP bug
CORE-18867, CORE-18920
2023-04-09 09:01:14 +09:00
Katayama Hirofumi MZ
f45d80adc9 [MSPAINT] Canvas: Don't draw new frame if HIT_NONE
CORE-18867
2023-04-09 08:49:18 +09:00
Katayama Hirofumi MZ
132f482de2 [MSPAINT] imageSaved = FALSE after image size change
...and redraw canvas after image resizing is canceled.
CORE-18867
2023-04-09 08:23:44 +09:00
Katayama Hirofumi MZ
fc5311aaf2 [RAPPS] Calculate download listview position (#5232)
Correctly display Download ListView at right position in any languages. CORE-18706
2023-04-09 05:51:23 +09:00
Katayama Hirofumi MZ
efe7368c46 [MSPAINT] Make imageArea window-less (#5215)
- Move imageArea code into canvasWindow.
- Delete imgarea.cpp, imgarea.h, and imageArea.
- Add CCanvasWindow::ImageToCanvas and CCanvasWindow::CanvasToImage to convert the coordinates.
- Realize drawing of resizing image area.
CORE-18867
2023-04-08 22:25:27 +09:00
Katayama Hirofumi MZ
fa322c2e14 [RAPPS] Improve Japanese translation
CORE-18706
2023-04-08 17:32:11 +09:00
Katayama Hirofumi MZ
994732c4bb [RUNDLL32][SHELL32] Rename 'rundll32_window' as 'RunDLL' (#5229)
Improve compatibility.
- Rename window class "rundll32_window" as "RunDLL".
- Delete some shell32 codes about this window class.
CORE-13895, CORE-18350
2023-04-08 15:20:07 +09:00
Hermès Bélusca-Maïto
f8f9c170b1 [KDGDB] Fix GCC build. Addendum to commits b577ac07 and de81021ba.
See also PR #5217.
2023-04-05 03:33:42 +02:00
Hermès Bélusca-Maïto
30369b8005 [NTOS] "Bugzilla" --> "Jira" 2023-04-05 03:33:41 +02:00
Hermès Bélusca-Maïto
dfc2cc4e42 [NTOS:KD] Fix buffer overflow for the signon in KdPortInitializeEx.
The built string can be:
°°Kernel Debugger: Serial port found: COM1 (Port 0x000003F8) BaudRate 115200°°°°
(with ° representing the \r and \n in the message)
and you can verify that this is more than 80 characters in total.
2023-04-05 03:33:39 +02:00
Hermès Bélusca-Maïto
641c89d834 [KDVBOX] Fix port name comparison. 2023-04-05 03:33:38 +02:00
Hermès Bélusca-Maïto
2b27d08576 Grmbl... 2023-04-05 01:53:32 +02:00
Hermès Bélusca-Maïto
143f8549a5 [NTOS:IO] ... and fix build by adding missing header. 2023-04-05 01:45:32 +02:00
Hermès Bélusca-Maïto
4c6f7c01e5 [NTOS:IO] Avoid magic value in LdrProcessDriverModule. 2023-04-05 01:39:32 +02:00
Hermès Bélusca-Maïto
8b35e46903 [SHIMGVW] Update the display window when selecting the Previous/Next picture. (#5223)
Patch by KRosUser.
CORE-18905
2023-04-04 22:14:14 +02:00
Joachim Henze
99e5f51d5b [SDK] Shorten autogenerated Copyright strings (#5210)
that we do compile into almost every dll and exe.
Reduces unnecessary scrolling in the
Versions tab of file properties dlg, which precedes the Copyright phrase anyway.

MS also uses shorter strings and therefore doesn't require to scroll at all.
See attached screenshots in the PR.
2023-04-04 12:10:59 +02:00
Katayama Hirofumi MZ
2b356adbc5 [COMCTL32][USER32] EDIT: WM_SETFONT for IME (#5214)
- Call ImmSetCompositionFontW in WM_SETFONT handling of EDIT controls if necessary.
- If the specified font is NULL, then use DEFAULT_GUI_FONT.
CORE-11700
2023-04-04 19:09:21 +09:00
Katayama Hirofumi MZ
d0c657074d [MSPAINT] Allow paletteWindow to be bottom-aligned (#5216)
The user will be able to move the palette window to bottom by dragging.
- Add Bar1ID registry setting.
- Move paletteWindow to top or bottom in mainWindow's WM_SIZE handling.
- Track the mouse dragging on paletteWindow.
- If the dragging is beyond the center point, then move paletteWindow.
CORE-18867
2023-04-04 19:06:06 +09:00
Justin Miller
ccef43f3b0 [FREELDR] Implement the memory managment functions for UEFI (#5174)
CORE-11954

- EFI binaries have a different subsystem in the PE header;
- ENVIRON: Make sure INTN and UINTN are 64bit for 64bit platforms;
- Handle UEFI Memory maps and translate it for freeldr;
- Add FAILED_TO_EXIT_BOOTSERVICES Freeldr BSoD code.
2023-04-03 17:33:20 +02:00
Katayama Hirofumi MZ
83e83bfd2c [MSPAINT] Allow ToolBox to be right-aligned (#5213)
The user will be able to move ToolBox in the main window by dragging.
- Add Bar2ID registry setting.
- Add CPaintToolBar class to encapsulate the toolbar code.
- Capture and track the mouse dragging in CToolBox.
- Move the ToolBox if dragging is beyond the center position.
CORE-18867
2023-04-03 14:34:56 +09:00
Atharva Kulkarni
ce562727b8 [MSI] Fix empty disc costing (Terragen, ...) (#5201)
JIRA issue: CORE-18749
2023-04-02 19:19:21 +02:00
Atharva Kulkarni
e13c3e856f [MSI] Revert to previous working solution for disk usage display in dialog.c (#5194)
There is a bug, which displays empty optical drive as a valid Drive where applications can be installed, which is wrong. This change will skip displaying any drives that are not fixed in the disk usage table in the msi installer UI.

JIRA issue: CORE-18758

Proposed changes

Revert to old solution from Doug Lyons which was working fine.
2023-04-02 19:16:18 +02:00
hpoussin
1bdefebc9e Enable framebuf_new driver (#4775)
Replace framebuf display driver by framebuf_new display driver
Compile framebuf_new as framebuf.dll, and add it to bootcd/livecd
Remove old framebuf from compilation, to not conflict
2023-04-02 23:33:15 +09:00
Joachim Henze
9ee9f73369 [NTUSER] Fix BSOD 0x1E nullptr deref CORE-18899 (#5212)
fix authored by JIRA-user "TANGaming". I do suspect that the possibility of that nullptr deref was introduced on the master branch by 0.4.13-dev-962-g 4193b8d. Doug Lyons signalled his "ok" regarding the fix in chat already. CORE-18899
2023-04-02 23:27:42 +09:00
Joachim Henze
c37addcbf5 [CONSOLE] Harmonize IDC_LBOX_FONTTYPE height to 40 for *.rc (#5211)
40 is what en-US uses, and most other langs used that meanwhile as well. Some were forgotten to be synced though.
While comparing all the files, use the opportunity to slightly improve some headers also.
2023-04-02 23:25:43 +09:00
fulup29
14cf589cbc [SHELL32] Improve French (fr-FR) translation (#5179)
CORE-18382

Original patch is used to fix and improve french translation and layout.
The original (erroneous) horizontal shift of the second checkbox is kept.
It should be fixed homogeneously in all translations at once later.
2023-04-02 00:07:52 +02:00
Jérôme Gardou
573d579873 [NTOSKRNL] Flush file to disk when deleting file mappings (#4302)
CORE-17627
When closing a file, fastfat zeroes it out from ValidDataLength up to the end of the file.
The ValidDataLength field is updated when the file content is actually written to disk.
There is currently a race between the file-close path and the page out path, leading to potential file corruptions when the zeroing happens after the memory has been flushed to disk.

Fix this by actually flushing the file to disk when unmapping files, with file lock acquired. This way, the FS driver cannot zero out the tail of the file while we're actually flushing it to disk.
2023-04-01 23:56:49 +09:00
Katayama Hirofumi MZ
84e580b67e [REGEDIT] Fix ListView selection and finding (#5150)
We will check the data size correctly, instead of 3 NUL byte appending hack. Add bSelectNone parameter to UpdateAddress and RefreshListView functions. If bSelectNone is TRUE, then select nothing of ListView. Fix item selection of ListView. Rename CompareData helper function as MatchData and improve it. Improve the search algorithm. If the item selection of ListView changed, scroll down to the item. Follow up to #5146. CORE-15986, CORE-18230
2023-04-01 22:21:59 +09:00
Katayama Hirofumi MZ
aac89519ec [MSPAINT] Make selection window-less (#5208)
- Delete selection.cpp and selection.h and selectionWindow.
- Extend ColorKeyedMaskBlt function.
- Implement selection resizing.
CORE-18867
2023-04-01 22:01:04 +09:00
Katayama Hirofumi MZ
3f5bcf5775 [KERNEL32] LCMapString: Fullwidth/halfwidth conversion (#5206)
- Add file dll/win32/kernel32/winnls/string/dakuten.h.
- Add file dll/win32/kernel32/winnls/string/full2half.h.
- Support LCMAP_FULLWIDTH and LCMAP_HALFWIDTH in LCMapString.
CORE-11700
2023-04-01 11:33:36 +09:00
valmorflores
2687c1b415 [NOTEPAD][OSK] Improve/Add Portuguese (Brazilian pt-BR and Portugal pt-PT) translations (#5124)
Co-authored-by: Julen Urizar Compains <julenuri@hotmail.com>
2023-03-31 01:37:45 +02:00
Doug Lyons
c8fc8264fe [SHELL32_APITESTS] Add ROS.ico test file. Improve shell32:ExtractIconEx tests (#5169)
Improve shell32:ExtractIconEx tests by updating it and adding more test files and 1 new icon file.

JIRA issue: ROSTESTS-381

Add new ROS.ico file which has both a normal icon and a PNG one.
Update testing to test for count of icons in file and separately extract the 0th one.
Add tests for sysicon.ico, explorer.exe and the new ROS.ico files.
2023-03-30 13:31:13 +02:00
Hermès Bélusca-Maïto
1bb4167211 [NTOS:KD] Fix build, addendum to commit f3dd7133.
This one was more subtle because the prompt (KdIoReadLine) functionality
makes a call-back to KDBG own command history getter function KdbGetHistoryEntry.
It is planned for this to become a registered optional callback pointer.
2023-03-29 03:36:24 +02:00
Hermès Bélusca-Maïto
3c0ba6b22c Fix build, addendum to commit 35180b3a 2023-03-29 02:55:06 +02:00
Hermès Bélusca-Maïto
35180b3ad2 [NTOS:KDBG] Isolate terminal and input-related routines from the rest of KDBG. (#5188)
This is done in preparation for moving all this functionality in a
separate KDTERM "KD Terminal Driver" DLL.

Additionally:

- Flush the terminal input before sending ANSI escape sequences.

- In KDBG pager, always use the correct reading-key function (the
  same used also for reading keys for a line of user input), and not
  the simplistic two-call KdbpGetCharSerial + KdbpTryGetCharSerial
  that would split the \r \n across calls.

- Call KdbpGetCommandLineSettings() in KdbInitialize() at BootPhase 0,
  which is indirectly called by KdDebuggerInitialize0(). And fix its
  command-line parsing too.
2023-03-29 02:42:31 +02:00
Joachim Henze
56bf3969cd [SYSSETUP] Tweak IDD_COMPUTERPAGE positioning (#5198)
- make all 3 input boxes IDC_COMPUTERNAME, IDC_ADMINPASSWORD1, IDC_ADMINPASSWORD2 on this page the same length for all languages and start and end at same x-coord, e.g. sk-SK.rc, uk-UA.rc
- let the input boxes end at the same x as the edits in the previous dlg IDD_OWNERPAGE
- respect the right margin of the dialog with all controls for all languages, makes it look more harmonic to previous and next dlg, see video:
- make the input fields as wide as possible, but not wider, depending on what the language allowed I used width of 139, 148, 163 (163 is same as the EDITs in IDD_OWNERPAGE used)
- fix too small x offset for some controls in some languages like bg-BG.rc, that looked very off
- in zh-CN.rc fix the maximum allowed length for computer name from 63 to 15
- ja-JP.rc 15 is max chars for computer name, not 63
- Fix it-IT text truncation "Organizzazione" in IDD_OWNERPAGE
- pl-PL.rc Steal some wisdom from 0.4.9 to better stick with en-US.rc dimensions.
2023-03-29 01:23:00 +02:00
Hermès Bélusca-Maïto
f3dd713382 [NTOS:KD:KDBG] Isolate the read-line (prompt) functionality in a separate file.
Rename KdbpReadCommand as KdIoReadLine. Extract the last-command
repetition functionality out of KdIoReadLine and put it where it
belongs: only in the KDBG command main loop KdbpCliMainLoop.
2023-03-28 16:14:40 +02:00
Hermès Bélusca-Maïto
430d7ebb93 [NTOS:KDBG] Use KdbpSendCommandSerial() to send specific ANSI escape sequences.
Use this function instead of KdpDprintf(), otherwise, we send them to
**ALL** the display providers, including for example dmesg. Replaying
the listing with dmesg would then cause the terminal to misbehave later.
For example, it would send the answer of a "Query Device Attributes"
command, as the response to a query for terminal size...
2023-03-28 16:14:39 +02:00
Katayama Hirofumi MZ
29e147beca [MSPAINT][ATL] Encapsulation: mainWindow (#5178)
- Add DoCreate methods to CFullscreenWindow, CMiniatureWindow, and CMainWindow classes.
- Do encapsulation around mainWindow and _tWinMain.
- Add GetOpenFileName, GetSaveFileName, and ChooseColor helper methods to CMainWindow class.
- Move some code in WinMain into CMainWindow::OnCreate.
- Delay creation of CFullscreenWindow and CMiniatureWindow.
- Extend ATL CImage class as CImageDx in newly-created atlimagedx.h of mspaint.
CORE-18867
2023-03-28 22:31:26 +09:00
Katayama Hirofumi MZ
0569bbd4a7 [KERNEL32] LCMapString: Sync to Wine a little (#5203)
Preparation for LCMAP_FULLWIDTH and LCMAP_HALFWIDTH support.
Slightly synchronize lang.c to locale.c in Wine's dlls/kernelbase.
CORE-11700
2023-03-28 21:09:27 +09:00
Katayama Hirofumi MZ
3b82b8370d [NTOSKRNL] Fix build in Release; #include 'kd.h' 2023-03-28 17:20:42 +09:00
Katayama Hirofumi MZ
ab5aff5948 [KERNEL32] Follow-up of #5200 (5d1ae45)
Add "Voiced Iteration Marks" to convert.
CORE-11700
2023-03-28 10:00:22 +09:00
Hermès Bélusca-Maïto
412037a2e2 [NTOS:KD] Use local print-like functions for output, instead of the kernel-internal KdpDprintf.
Indeed, the latter won't be accessible once those KD IO functions
get moved out into a separate KDTERM.DLL.
2023-03-28 02:42:53 +02:00
Katayama Hirofumi MZ
5d1ae45b83 [KERNEL32] LCMapString: Hiragana/Katakana conversion (#5200)
Implement LCMAP_KATAKANA and LCMAP_HIRAGANA flags. CORE-11700
2023-03-28 08:37:17 +09:00
Katayama Hirofumi MZ
3526ffc094 [BLUE] Optimize ScrIoControl for speed (#5185)
Optimize IOCTL_CONSOLE_FILL_OUTPUT_ATTRIBUTE and IOCTL_CONSOLE_FILL_OUTPUT_CHARACTER for speed by using cache. CORE-18838
2023-03-28 08:12:38 +09:00
Hermès Bélusca-Maïto
6084da8c84 [NTOS:KDBG] Move command history management in a separate file. Simplify duplicated code in KdbpReadCommand. 2023-03-27 23:31:34 +02:00
Hermès Bélusca-Maïto
eb02a85214 [NTOS:KD] Split internal/kd.h into a part shared in the whole kernel and a private part only used within ntoskrnl/kd. 2023-03-27 23:31:34 +02:00
Hermès Bélusca-Maïto
bfd07a02f1 [NTOS:KD] Update file headers. 2023-03-27 23:31:33 +02:00
Hermès Bélusca-Maïto
6fafe54f89 [NTOS:KD:KDBG] Move some files to a better place. 2023-03-27 23:31:28 +02:00
Katayama Hirofumi MZ
6d650bfc8f [COMCTL32][USER32] WM_IME_CHAR: Rely on DefWindowProc... (#5191)
Use DefWindowProc... for WM_IME_CHAR handling. CORE-15289, CORE-11700
2023-03-27 19:42:47 +09:00
Joachim Henze
7c755d9b84 [SYSSETUP] Delete obsolete lt-LT.rc
syssetup/lang/lt-LT.rc is a 100% copy of en-US.rc. Not a single string or path within did differ.
The file emerged once during some refactoring when parts from userenv were moved to syssetup in SVN r73518 == git c24dcb3ff2 .

By deduplicating that file syssetup.dll shrinks for GCC8.4.0dbg RosBEWin2.2.2
and it will speed up the development of that module if one rc-file less has to be groomed everytime something is added into syssetup.dll.
It is quicker to recreate that file later if some use for translation would evolve in the module.

I linked this commit against CORE-18893 although my commit did neither introduce
nor would solve that bug of 'the language not generating any startmenu entries'!

I stumbled over the file being a total copy of en-US
after that ticket was created already and then compared the contents of lt-LT.rc to en-US.rc
So I though the linking would make kind of sense.

I installed in lithuanian before and after my commit. No change!

lt-LT.rc was the last one of such rc copy-pastes in [SYSSETUP], I double-checked them all now.
2023-03-27 01:09:31 +02:00
Joachim Henze
c762234546 [SYSSETUP] Fix font glitch in ja-JP.rc (#5192)
CORE-18706
2023-03-26 12:04:41 +09:00
George Bișoc
f364bfc8f4 [KMTESTS:OB] Refactor OBJ_DIRECTORY_TYPE_INFO_SIZE define construct
Object types are mere type names with no backslash. Also remove wcslen()
from the define, it's not needed.
2023-03-25 19:47:26 +01:00
Joachim Henze
b373b7a11e [SYSSETUP] Fix typo in german de-DE.rc
That typo was introduced by 0.4.15-dev-3638-g 3f053db3e7
and did only affect the master branch.
2023-03-25 18:21:39 +01:00
Joachim Henze
3963d7d5f2 [SYSSETUP] Delete obsolete fi-FI.rc
syssetup/lang/fi-FI.rc is a 100% copy of en-US.rc. Not a single string or path within did differ.
The file emerged once during some refactoring when parts from userenv were moved to syssetup in SVN r73518 == git c24dcb3ff2 .

By deduplicating that file syssetup.dll shrinks from 1.374.208 -> 1.361.920 for GCC8.4.0dbg RosBEWin2.2.2
and it will speed up the development of that module if one rc-file less has to be groomed everytime something is added into syssetup.dll.
It is quicker to recreate that file later if some use for translation would evolve in the module.

I linked this commit against CORE-18893 although my commit did neither introduce
nor would solve that bug of 'the language not generating any startmenu entries'!

I stumbled over the file being a total copy of en-US
after I saw that glitch and created the ticket and then compared the contents of fi-FI.rc to en-US.rc
So I though the linking would make kind of sense.

I installed in finnish before and after my commit. No change!
2023-03-25 14:16:03 +01:00
Thamatip Chitpong
9f9b81e396 [AFD] ReceiveActivity: Don't return STATUS_FILE_CLOSED in case of FCB overread (#4972)
Based on patch by KRosUser. Remove the Overread member. The new test in ws2_32:recv confirms that this special behavior is never needed.
CORE-18328
2023-03-25 14:00:26 +01:00
Katayama Hirofumi MZ
a027eb7ccb [EXPLORER] Improve Clock text color for High Contrast (#5180)
Use GetSysColor(COLOR_BTNTEXT) to get the system color in CTrayClockWnd::OnPaint. CORE-18886
2023-03-25 21:31:32 +09:00
George Bișoc
faa6f940d5 Tag Win32SS related PRs with "Win32SS" label 2023-03-25 13:23:06 +01:00
George Bișoc
1b33c9415c [KMTESTS:OB] Write some object information querying tests 2023-03-25 11:55:11 +01:00
George Bișoc
29fc7bb33e [NTOS:OB] Implement name information querying on ObjectBasicInformation case
Currently there is no implementation support for object name information
querying when someone queries information about an object with ObjectBasicInformation
class case. Some device drivers may take use of such information.

NameInfoSize is a size that is the sum of all name directories of an object,
including path separators. TypeInfoSize is a size that is pointed by
the size of a type object itself, therefore this size remains pretty much
fixed depending on the kind of an object.

For more information:
https://www.geoffchappell.com/studies/windows/km/ntoskrnl/inc/api/ntobapi/object_basic_information.htm
http://undocumented.ntinternals.net/index.html?page=UserMode%2FUndocumented%20Functions%2FNT%20Objects%2FType%20independed%2FNtQueryObject.html
2023-03-25 11:55:11 +01:00
Thamatip Chitpong
640e2283d4 [NTUSER] VerifyWnd: Remove pointless SEH and simplify the function (#5125) 2023-03-23 10:22:10 +01:00
Ratin Gao
d09072626b [KERNEL32] GlobalMemoryStatusEx should handle error and return FALSE when failed 2023-03-23 09:42:58 +01:00
Artyom Ovsyannikov
1fe3ab7823 [NOTEPAD] Russian (ru-RU) translation update (#5181)
Google Translate helped me to translate some lines.
2023-03-23 14:33:18 +09:00
Katayama Hirofumi MZ
8d26b03775 [COMCTL32][USER32] EDIT: Half-implement WM_IME_SETCONTEXT handling (#5182)
Add WM_IME_SETCONTEXT handling to the window procedure of the EDIT control. CORE-11700, CORE-15289
2023-03-23 12:24:40 +09:00
Katayama Hirofumi MZ
b25daf4b56 [COMCTL32][USER32] EDIT: Half-implement WM_IME_STARTCOMPOSITION (#5183)
Improve WM_IME_STARTCOMPOSITION handling in the window procedure of the EDIT control. CORE-15289, CORE-11700
2023-03-23 12:24:00 +09:00
Hermès Bélusca-Maïto
fe81656776 [NTOS:KD] DbgKdGetStringApi implementation: Ensure the returned string is NULL-terminated.
Addendum to commit 84e32e4e.

Explain more accurately what's going on regarding the returned string
and the inaccurate claims made in the official DbgPrompt documentation
in MSDN. (Has been verified by looking through the traffic in WinDbg
debugging of Windows and ReactOS.)
2023-03-22 19:58:01 +01:00
Hermès Bélusca-Maïto
9d9536d431 [NTOS:KD64] Format string of KdpDprintf can be const. 2023-03-22 19:57:59 +01:00
Joachim Henze
16decc61be [UNIATA] PROPERLY mark the rosdiff when touching 3rd party code
This is an addendum to 0.4.15-dev-5854-g 08248e83a0 from (#5053).

The review requests had not been addressed entirely before committing!
2023-03-22 06:18:54 +01:00
Katayama Hirofumi MZ
5c8d578a15 [MSPAINT] Simplify OFNHookProc and FileExtFromFilter
... by using PathFindExtension and PathFindFileName.
CORE-18867
2023-03-22 10:42:21 +09:00
Katayama Hirofumi MZ
be518f9f5a [COMCTL32][USER32] EDIT: Default processing on WM_IME_SELECT/WM_IME_CONTROL (#5173)
Do default processing on WM_IME_SELECT and WM_IME_CONTROL messages in EDIT controls. CORE-11700, CORE-15289
2023-03-22 09:09:38 +09:00
Katayama Hirofumi MZ
68e6820ddf [MSPAINT] Improve CMiniatureWindow::OnPaint
CORE-18867
2023-03-22 08:10:26 +09:00
Atharva Kulkarni
08248e83a0 [UNIATA] Fix Memory leak while claiming PCI IDE controller (#5053)
HalAssignSlotResources will allocate a new resource list which the caller must free.
2023-03-22 01:01:18 +03:00
Katayama Hirofumi MZ
cb454ef9ed [MSPAINT] Simplify TextEdit by using SizeBox (#5177)
Reduce source code. CORE-18867
2023-03-21 13:15:08 +09:00
Katayama Hirofumi MZ
57891b5f34 [MSPAINT] Tool settings: Reduce magic numbers (#5168)
Many coordinates are dynamically calculated. It is adjustable against client area change.
- Fix some brush/eraser shapes for pixel perfection.
- Reduce magic numbers in toolssettings.cpp.
- Refactoring.
CORE-18867
2023-03-21 13:13:53 +09:00
Katayama Hirofumi MZ
d28e39e409 [NOTEPAD] Use _countof macro from <stdlib.h> (#5170)
- Remove the definition of ARRAY_SIZE macro.
- Replace ARRAY_SIZE and ARRAYSIZE with _countof.
CORE-18837
2023-03-21 08:59:40 +09:00
Katayama Hirofumi MZ
49d8c1af21 [REGEDIT] Move '#include <crtdbg.h>' and add _CRTDBG_MAP_ALLOC
- Add #include <stdlib.h>.
- Move #include <crtdbg.h> to "regedit.h".
- Add #define _CRTDBG_MAP_ALLOC before #include <crtdbg.h>.
CORE-18876
2023-03-21 07:26:04 +09:00
Katayama Hirofumi MZ
1ef98fff3b [NTUSER] ime.c: Add parameter to ERR(...)
Follow-up of 94f22bd.
CORE-11700
2023-03-21 07:21:31 +09:00
Serge Gautherie
3615e7c122 [NOTEPAD] LoadIcon() needs no DestroyIcon() (#5142)
CORE-18369
2023-03-21 06:19:30 +09:00
Katayama Hirofumi MZ
ed03768b1b [MSPAINT] Move '#include <crtdbg.h>' and add _CRTDBG_MAP_ALLOC
CORE-18867
2023-03-20 22:59:05 +09:00
Katayama Hirofumi MZ
cc4480ffea [NOTEPAD] Move '#include <crtdbg.h>' and add _CRTDBG_MAP_ALLOC (#5176)
CORE-18837
2023-03-20 22:55:12 +09:00
Katayama Hirofumi MZ
94f22bda27 [NTUSER] ime.c: Add ERR(...) to the exception handlers
CORE-11700
2023-03-20 19:12:25 +09:00
Katayama Hirofumi MZ
0694b559da [NTUSER] NtUserSetImeInfoEx: Use _SEH2_YIELD
CORE-11700
2023-03-20 19:10:04 +09:00
Katayama Hirofumi MZ
ed5098b2c9 [NTUSER] NtUserGetImeInfoEx: Use _SEH2_YIELD
CORE-11700
2023-03-20 19:08:38 +09:00
Katayama Hirofumi MZ
ef20cc081f [NTUSER] NtUserBuildHimcList: Use _SEH2_YIELD
CORE-11700
2023-03-20 19:06:44 +09:00
Katayama Hirofumi MZ
b301333517 [NTUSER] NtUserGetImeHotKey: Use _SEH2_YIELD
CORE-11700
2023-03-20 19:04:18 +09:00
Katayama Hirofumi MZ
9751d03c3b [NTUSER] IntSendMessageToUI: Use _SEH2_YIELD
CORE-11700
2023-03-20 18:59:42 +09:00
Katayama Hirofumi MZ
4ab7c93b35 [NTUSER] IntNotifyImeShowStatus: Use _SEH2_YIELD
CORE-11700
2023-03-20 18:49:23 +09:00
Katayama Hirofumi MZ
7c14c0ed73 [USER32_APITEST] Follow-up of c39bf0d
Avoid buffer overflow. CORE-15289, CORE-11700
2023-03-20 16:33:11 +09:00
Katayama Hirofumi MZ
c39bf0d54b [USER32_APITEST] Improve MessageStateAnalyzer testcase
CORE-15289, CORE-11700
2023-03-20 16:17:50 +09:00
Hermès Bélusca-Maïto
942b0221e8 [NTOS:KDBG] Temporarily HACK-work-around symbols loading by disabling them at BootPhase 0.
Of course, now that we **correctly** set the LoadSymbools setting,
we attempt loading symbols at BootPhase 0 and everything goes awry!
So introduce that hack to fallback to our old behaviour.

A proper fix (and removal of the hack) will be done in future commits.
2023-03-20 03:10:14 +01:00
Hermès Bélusca-Maïto
934812c4b2 [NTOS:KDBG] Fix parsing the boot command line for the (NO)LOADSYMBOLS options.
Addendum to commit de892d5b.

The boot options get stripped of their optional command switch '/'
(and replaced by whitspace separation) by the NT loader. Also, forbid
the presence of space between the optional '=' character following
(NO)LOADSYMBOLS.

In addition, fix the default initialization of LoadSymbols in KdbSymInit():
we cannot rely on MmNumberOfPhysicalPages in BootPhase 0 since at this point,
the Memory Manager hasn't been initialized and this variable is not yet set.
(We are called by KdInitSystem(0) -> KdDebuggerInitialize0 at kernel init.)
It gets initialized later on between BootPhase 0 and 1.

Also display a nice KDBG signon showing the status of symbols loading.
2023-03-20 02:44:41 +01:00
Jose Carlos Jesus
2cfb757b29 [TRANSLATION] Improvements to portuguese (pt-PT) translation (#5154)
For: hivedef.inf, powercfg.cpl, sysdm.cpl
and: netshell.dll, netcfgx.dll, shell32.dll, userenv.dll

Also fix "My Documents" and "My Network Places" folder names.
2023-03-19 20:32:24 +01:00
Justin Miller
150f721273 [FREELDR] Support compiling freeldr as a UEFI loader + Implement UI functions (#5171)
First batch of changes to implement a UEFI version of freeldr:
- Compile freeldr as EFI binary on top of the existing loader.
- Stub out various functions so we can create a UEFI machine-type in freeldr.
- Implement all of the video output functions so we can display a pretty freeldr BSoD :)
2023-03-19 20:13:16 +01:00
Hermès Bélusca-Maïto
995630ccec [FREELDR] Fix missing exports and .edata section after commit 728694f6.
CORE-18880
2023-03-19 17:50:55 +01:00
Thomas Faber
996713515b [WS2_32_APITEST] Test overlapping recv overread. CORE-18328 2023-03-19 12:39:09 -04:00
Thomas Faber
7ca1d0e161 [WS2_32_APITEST] Add a test for recv overread. CORE-18328 2023-03-19 10:02:16 -04:00
Katayama Hirofumi MZ
6b6a045766 [MSPAINT] Make sizeboxes window-less (#5166)
Reduce window controls and integrate to the canvas window.
- The sizeboxes are absorbed by canvasWindow.
- class CSizeboxWindow is deleted.
- Add enum CANVAS_HITTEST.
- Add getSizeBoxRect, getSizeBoxHitTest, and drawSizeBoxes helper functions in sizebox.cpp.
CORE-18867
2023-03-19 10:42:10 +09:00
Hermès Bélusca-Maïto
728694f60f [FREELDR] Move platform-specific build targets into dedicated .cmake files. (#5141)
- Keep the common definitions and file lists in CMakeLists.txt
- Move PC-AT & compatibles (PC-98, XBOX) definitions in pcat.cmake
- Future UEFI-specific definitions will be in an uefi.cmake
2023-03-18 22:40:10 +01:00
Hermès Bélusca-Maïto
7a2aca423e [FREELDR] Move common x64 runtime-specific ASM helpers to a misc file.
Co-authored-by: Justin Miller <justinmiller100@gmail.com>
2023-03-18 22:40:08 +01:00
Dmitry Borisov
557306f5c0 [DDK:NDIS] Fix definition of broadcast address macro (#5155)
ff:ff:ff:ff:ff:ff is the broadcast MAC address.

CORE-8724
2023-03-18 16:57:52 +01:00
Katayama Hirofumi MZ
1c7c0fa7a7 [MSPAINT] Save ToolBox visibility (#5167)
According to my registry analysis, the target value is HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\Paint\General-Bar3:Visible.
- Add ShowToolBox registry setting.
CORE-18867
2023-03-18 17:20:43 +09:00
Katayama Hirofumi MZ
5ed7db5acb [MSPAINT] Save paletteWindow visibility (#5167)
According to my registry analysis, HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Paint\General-Bar4:Visible is the target value.
- Improve ReadDWORD helper function.
- Add ShowPalette registry setting.
- Simplify RegistrySettings::Load and RegistrySettings::Store.
CORE-18867
2023-03-18 17:12:28 +09:00
Hermès Bélusca-Maïto
422621622d [NTOS:KD] Improve the display of the output providers' signons. 2023-03-18 03:42:32 +01:00
Hermès Bélusca-Maïto
a8bcc8d7a1 [NTOS:MM] Simplify definitions of MM_SYSLDR_NO_IMPORTS and MM_SYSLDR_BOOT_LOADED. 2023-03-18 03:42:31 +01:00
Hermès Bélusca-Maïto
f6c8155239 [SDK] driverspecs.h: Add missing dummy _IRQL_limited_to_() definition (when _PREFAST_ is not defined).
Addendum to commit 8a688204.
2023-03-18 03:42:26 +01:00
Katayama Hirofumi MZ
e9f3790aa4 [MSPAINT] Encapsulation: hNontranspIcon and hTranspIcon
CORE-18867
2023-03-18 08:24:19 +09:00
Katayama Hirofumi MZ
cc3b53fef9 [MSPAINT] Encapsulation: hCurFill, hCurColor etc.
CORE-18867
2023-03-18 08:09:26 +09:00
Katayama Hirofumi MZ
d40de8f47c [MSPAINT] Add Static Edge to toolbars
- Add WS_EX_STATICEDGE to paletteWindow.
- Remove CCS_NODIVIDER from toolbar.
CORE-18867
2023-03-17 19:18:07 +09:00
Katayama Hirofumi MZ
868c7c4d53 [MSPAINT] Delete useless "STATIC" control
CORE-18867
2023-03-17 19:01:42 +09:00
Katayama Hirofumi MZ
eacf003c81 [MSPAINT] Move UpdateCanvas's code to newly-defined CCanvasWindow::Update
CORE-18867
2023-03-17 07:51:12 +09:00
Katayama Hirofumi MZ
7361592ede [MSPAINT] Rename scrollbox as canvas
- s/CScrollboxWindow/CCanvasWindow/
- s/scrollboxWindow/canvasWindow/
- s/UpdateScrollbox/UpdateCanvas/
CORE-18867
2023-03-17 07:45:14 +09:00
Katayama Hirofumi MZ
a88dcbd6c3 [MSPAINT] Remove extra scrlClientWindow (#5162)
CORE-18867
2023-03-17 07:28:42 +09:00
Katayama Hirofumi MZ
41c30182d4 [MSPAINT] Refactor about Recent Files (#5163)
Define MAX_RECENT_FILES macro as 4.
Remove strFile1, ..., strFile4 settings and add strFiles[MAX_RECENT_FILES] for Most Recently Used (MRU) files.
CORE-18867
2023-03-17 07:28:01 +09:00
Katayama Hirofumi MZ
a81f229065 [MSPAINT] Restore the main window saved show state (#5158)
Our mspaint didn't remember the maximized status of the main window. CORE-18867
2023-03-17 07:26:44 +09:00
Katayama Hirofumi MZ
88733bca77 [MSPAINT] Unlink HHCTRL.OCX and use dynamic load (#5165)
Unlink HHCTRL.OCX by modifying CMakeLists.txt. Add DoHtmlHelpW helper function. CORE-18879, CORE-18867
2023-03-17 07:25:51 +09:00
George Bișoc
eb7550f767 [NTDLL_APITEST] Write some tests for NtQueryOpenSubKeys 2023-03-16 20:04:31 +01:00
Katayama Hirofumi MZ
0cf45d508c [MSPAINT] Delete needless CMainWindow::OnSetCursor
CORE-18867
2023-03-16 18:13:28 +09:00
Katayama Hirofumi MZ
b5ae55f3ff [MSPAINT] Delete useless CFullscreenWindow::OnSetCursor
CORE-18867
2023-03-16 17:56:05 +09:00
Katayama Hirofumi MZ
b369ec3fa1 [MSPAINT] Delete needless CMiniatureWindow::OnSetCursor
CORE-18867
2023-03-16 17:49:05 +09:00
Katayama Hirofumi MZ
34881b9a88 [MSPAINT] Delete needless CToolBox::OnSetCursor
CORE-18867
2023-03-16 17:26:27 +09:00
Katayama Hirofumi MZ
136f23578f [NOTEPAD] Use full path for non-existent file (#5152)
In HandleCommandLine function, use GetFullPathName API to get the full path of a non-existent file. CORE-18259, CORE-18837
2023-03-16 10:18:54 +09:00
Robert Naumann
75ac9f8477 [REGEDIT] import Wine commit f5fe9a6 by Hugh McMaster.
f5fe9a6cf9
This removes the ROS-diff caused by CORE-18603's fix
2023-03-15 16:54:47 +01:00
Katayama Hirofumi MZ
3625f55fbb [MSPAINT] Delete unused global variables (lfTextFont, ...
hfontTextFont, hwndEditCtl, textToolText, and textToolTextMaxLen).
CORE-18867
2023-03-15 15:09:26 +09:00
Doug Lyons
cce3eb9393 Fix buffer read past end problem. (#5146)
Fixes crashes in regedit-find affecting CORE-15896 and CORE-18230. After possible RegQueryValueExW append 3 zero bytes to guarantee that we will end with a UNICODE NULL.
2023-03-15 10:57:54 +09:00
Katayama Hirofumi MZ
44b2a46d03 [MSPAINT] Avoid flickering when resizing (#5144)
- Add CPaletteWindow::OnEraseBkgnd to avoid flickering.
- Add getColorBoxRect and drawColorBox helper functions to draw a color box.
- Add CPaletteWindow::DoHitTest helper function to do a hit test.
- Improve CPaletteWindow::OnPaint by using a memory bitmap.
- Improve readability of CMainWindow::alignChildrenToMainWindow.
CORE-18867
2023-03-15 07:29:25 +09:00
Katayama Hirofumi MZ
f5840df9e9 [NOTEPAD] Delete license.c (no use) (#5159)
File license.c is not used. Reduce source code. CORE-18837
2023-03-15 07:28:15 +09:00
Katayama Hirofumi MZ
fb1d9d722d [NOTEPAD] Use new-style file header (#5160)
CORE-18837
2023-03-15 07:27:29 +09:00
Jose Carlos Jesus
b8c4d589b1 [SHELL32] Give opportunity to rename file/folder on its creation (#5139)
* [SHELL32] Fix issue when creating a new file or folder. No chance to rename the displayed name.

The CNewMenu::SelectNewItem method starts with a request to notify the View object about a new item by calling SHChangeNotify.
After creating and obtaining the new PIDL by calling ILFindLastID, the CDefView::SelectItem method is called.
This method fails right from the start when calling LV_FindItemByPidl which returns -1, thus preventing the user from being given the opportunity to change the name displayed by default.

This failure is due to the fact that this object has not yet been added to the CDefView::m_ListView list. This is caused by the asynchronous nature of SHChangeNotify.

Thanks to Giannis Adamopoulos for the big help.
2023-03-14 22:27:14 +01:00
Katayama Hirofumi MZ
9b6b1b3513 [MSPAINT] CImageAreaWindow should inherit CWindowImpl<CImgAreaWindow>
... instead of CWindowImpl<CMainWindow>.
CORE-18867
2023-03-14 14:17:40 +09:00
Katayama Hirofumi MZ
d91b262590 [MSPAINT] Window class of main window should be 'MSPaintApp'
CORE-18867
2023-03-14 14:09:17 +09:00
Katayama Hirofumi MZ
0eeffc2143 [REGEDIT] CMakeLists.txt: Enable _DEBUG on debugging
CORE-18876
2023-03-14 12:22:23 +09:00
Katayama Hirofumi MZ
598dd51d70 [NOTEPAD] CMakeLists.txt: Enable _DEBUG on debugging
CORE-18837
2023-03-14 12:17:40 +09:00
Katayama Hirofumi MZ
19027f3c81 [REGEDIT] Use HeapFree for g_pChildWnd, instead of free() 2023-03-14 12:08:50 +09:00
Katayama Hirofumi MZ
0a1d467a11 [NOTEPAD] Add 'katahiromz' to STRING_NOTEPAD_AUTHORS
CORE-18837
2023-03-14 11:24:12 +09:00
Katayama Hirofumi MZ
c888a13c0b [NOTEPAD] Save searchString and replaceString settings
CORE-18837
2023-03-14 11:03:20 +09:00
Hermès Bélusca-Maïto
de892d5bc7 [NTOS:KDBG] Fix the support for /(NO)LOADSYMBOLS as we didn't respect them properly.
LoadSymbols was reset to its default value whenever KdbSymInit() was
called, thus we would e.g. load symbols even if /NOLOADSYMBOLS or
/LOADSYMBOLS=NO were specified at the command line.
2023-03-14 01:17:42 +01:00
Hermès Bélusca-Maïto
e241c87eea [SDK] sdkddkver.h: Add NTDDI_* defines for newest Windows 10 and 11 versions.
And add version descriptions, especially for Windows 10 as it becomes messy.

Information from:
- https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/nf-wdm-rtlisntddiversionavailable
- Shared/sdk/extdef.h from https://github.com/Mattiwatti/WinObjEx64
- Descriptions from https://github.com/MiroKaku/Veil
- Cross-checked with headers from https://github.com/microsoft/wil
2023-03-14 00:14:12 +01:00
Katayama Hirofumi MZ
5cf947edc7 [REGEDIT] Use _CrtSetDbgFlag to check memory leak
We can borrow the power of CRT debug. These changes are effective for debug version only:
- Insert #include <crtdbg.h> at main.c.
- Call _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF) at the prologue of wWinMain.

This is a follow-up of #5151 (9abd9b6) and 0998665.
2023-03-14 07:22:34 +09:00
Katayama Hirofumi MZ
0998665463 [MSPAINT] Use _CrtSetDbgFlag to check memory leak
We can borrow the power of CRT debug. These changes are effective for debug version only:
- Insert #include <crtdbg.h> at main.cpp.
- Call _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF) at the prologue of _tWinMain.

This is a follow-up of #5151 (9abd9b6).
CORE-18867
2023-03-14 07:17:14 +09:00
Katayama Hirofumi MZ
9abd9b667a [NOTEPAD] Use _CrtSetDbgFlag to check memory leak (#5151)
We can borrow the power of CRT debug. These changes are effective for debug version only:
- Insert #include <crtdbg.h> at main.c.
- Call _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF) at the prologue of _tWinMain.
CORE-18837
2023-03-14 07:08:56 +09:00
Katayama Hirofumi MZ
c766ee9ebb [NETSHELL] Shrink radio buttons vertically (#5157)
- Fix the visual glitch of the network settings dialog of 2nd setup.
- Shrink the IDC_NETWORK_TYPICAL and IDC_NETWORK_CUSTOM radio buttons of IDD_NETWORKSETTINGSPAGE resource dialog vertically not to be overlapped.
CORE-18874
2023-03-14 07:03:54 +09:00
Joachim Henze
2aea4ab945 [NTUSER] Scrollbar.c pure whitespace fixes
The scrollbar code is now finally in a good shape.
Therefore I will port the current state back today,
and for that I want to have the formatting in good shape.

No functional changes!
2023-03-12 10:34:50 +01:00
Katayama Hirofumi MZ
b9ef348ab0 [NTUSER][USER32] KLF_SETFORPROCESS for ActivateKeyboardLayout (#5126)
Supporting KLF_SETFORPROCESS flag in ActivateKeyboardLayout function.

Implement KLF_SETFORPROCESS for co_UserActivateKeyboardLayout.
Use KLF_SETFORPROCESS flag in WM_INPUTLANGCHANGEREQUEST handling.
Add co_IntSetKeyboardLayoutForProcess helper function.
2023-03-12 13:39:41 +09:00
Hermès Bélusca-Maïto
ab92e40317 [NTOS:KD] Remove unneeded 'extern' declaration. Addendum to commit 4ce819ca. 2023-03-12 02:17:15 +01:00
Hermès Bélusca-Maïto
372eb0c0b8 [NTOS:KDBG] Remove dead code. Addendum to baa47fa5e and fe777bb52. 2023-03-12 02:16:58 +01:00
Katayama Hirofumi MZ
d0ab35e9da [NOTEPAD] Refactor around _tWinMain (#5135)
- Add hInstance parameter to NOTEPAD_InitData.
- Move some code in _tWinMain into NOTEPAD_InitData.
- Move some code in _tWinMain into WM_CREATE handling.
- Move some code in WM_CLOSE handling into WM_DESTROY handling.
- Fix the exit code of _tWinMain.
CORE-18837
2023-03-12 08:26:33 +09:00
Katayama Hirofumi MZ
3b0791547f [NOTEPAD] Move the printing code to the newly added printing.c
CORE-18837
2023-03-12 07:51:53 +09:00
Katayama Hirofumi MZ
072503c1fc [NOTEPAD] Add 'Now-printing' dialog (#5127)
Allow the user to cancel the print job.
- Add DIALOG_PRINTING dialog.
- Make the print job another thread.
- Let the thread communicate with the dialog box by PRINTING_MESSAGE.
- Add some resource strings.
CORE-18837
2023-03-11 22:23:14 +09:00
Katayama Hirofumi MZ
b49b47fc84 [MSPAINT] Delete unused HWND hToolBtn[16] global variable
CORE-18867
2023-03-11 14:19:12 +09:00
Katayama Hirofumi MZ
9ff9295a22 [MSPAINT] Remember status bar visibility (#5145)
- Add ShowStatusBar registry setting.
- Save ShowStatusBar status and restore the status on startup.
CORE-18867
2023-03-11 11:41:52 +09:00
Hermès Bélusca-Maïto
4ce819ca5a [NTOS:KD][KDBG] Rework the BootPhase >= 2 initialization of the KD/KDBG kernel debugger. (#4892)
CORE-17470

+ KdpDebugLogInit: Add resources cleanup in failure code paths.

Fix, in an NT-compatible manner, how (and when) the KD/KDBG BootPhase >=2
initialization steps are performed.
These are necessary for any functionality KDBG needs, that would depend
on the NT I/O Manager and the storage and filesystem stacks to be running.
This includes, creating the debug log file, and for KDBG, loading its
KDBinit initialization file.

As a result, file debug logging is fixed.

The old ReactOS-specific (NT-incompatible) callback we did in the middle
of IoInitSystem() is removed, in favor of a runtime mechanism that should
work on Windows as well.

The idea for this new mechanism is loosely inspired by the TDL4 rootkit,
see http://blog.w4kfu.com/public/tdl4_article/draft_tdl4article.html
but contrary to it, a specific hook is used instead, as well as the
technique of driver reinitialization:
https://web.archive.org/web/20211021050515/https://driverentry.com.br/en/blog/?p=261

Its rationale is as follows:

We want to be able to perform I/O-related initialization (starting a
logger thread for file log debugging, loading KDBinit file for KDBG,
etc.). A good place for this would be as early as possible, once the
I/O Manager has started the storage and the boot filesystem drivers.

Here is an overview of the initialization steps of the NT Kernel and
Executive:
----
KiSystemStartup(KeLoaderBlock)
    if (Cpu == 0) KdInitSystem(0, KeLoaderBlock);
    KiSwitchToBootStack() -> KiSystemStartupBootStack()
    -> KiInitializeKernel() -> ExpInitializeExecutive(Cpu, KeLoaderBlock)

(NOTE: Any unexpected debugger break will call KdInitSystem(0, NULL); )
KdInitSystem(0, LoaderBlock) -> KdDebuggerInitialize0(LoaderBlock);

ExpInitializeExecutive(Cpu == 0):    ExpInitializationPhase = 0;
    HalInitSystem(0, KeLoaderBlock); <-- Sets HalInitPnpDriver callback.
    ...
    PsInitSystem(LoaderBlock)
        PsCreateSystemThread(Phase1Initialization)

Phase1Initialization(Discard):       ExpInitializationPhase = 1;
    HalInitSystem(1, KeLoaderBlock);
    ...
    Early initialization of Ob, Ex, Ke.
    KdInitSystem(1, KeLoaderBlock);
    ...
    KdDebuggerInitialize1(LoaderBlock);
    ...
    IoInitSystem(LoaderBlock);
    ...
----
As we can see, KdDebuggerInitialize1() is the last KD initialization
routine the kernel calls, and is called *before* the I/O Manager starts.
Thus, direct Nt/ZwCreateFile ... calls done there would fail. Also,
we want to do the I/O initialization as soon as possible. There does
not seem to be any exported way to be notified about the I/O manager
initialization steps... that is, unless we somehow become a driver and
insert ourselves in the flow!

Since we are not a regular driver, we need to invoke IoCreateDriver()
to create one. However, remember that we are currently running *before*
IoInitSystem(), the I/O subsystem is not initialized yet. Due to this,
calling IoCreateDriver(), much like any other IO functions, would lead
to a crash, because it calls
ObCreateObject(..., IoDriverObjectType, ...), and IoDriverObjectType
is non-initialized yet (it's NULL).

The chosen solution is to hook a "known" exported callback: namely, the
HalInitPnpDriver() callback (it initializes the "HAL Root Bus Driver").
It is set very early on by the HAL via the HalInitSystem(0, ...) call,
and is called early on by IoInitSystem() before any driver is loaded,
but after the I/O Manager has been minimally set up so that new drivers
can be created.
When the hook: KdpInitDriver() is called, we create our driver with
IoCreateDriver(), specifying its entrypoint KdpDriverEntry(), then
restore and call the original HalInitPnpDriver() callback.

Another possible unexplored alternative, could be to insert ourselves
in the KeLoaderBlock->LoadOrderListHead boot modules list, or in the
KeLoaderBlock->BootDriverListHead boot-driver list. (Note that while
we may be able to do this, because boot-drivers are resident in memory,
much like we are, we cannot insert ourselves in the system-driver list
however, since those drivers are expected to come from PE image files.)

Once the KdpDriverEntry() driver entrypoint is called, we register
KdpDriverReinit() for re-initialization with the I/O Manager, in order
to provide more initialization points. KdpDriverReinit() calls the KD
providers at BootPhase >= 2, and schedules further reinitializations
(at most 3 more) if any of the providers request so.
2023-03-11 01:22:19 +01:00
Hervé Poussineau
bf734e5373 [NTOS:KD] Move handling of Dmesg buffer from screen provider to KDBG provider. (#5143)
CORE-10749

The dmesg command is now available even if screen output is disabled.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2023-03-10 23:59:08 +01:00
Katayama Hirofumi MZ
86e2f9e635 [MSPAINT] There were two "main" windows (#5147)
Our mspaint had two windows of window class "MainWindow".
class CToolBox should inherit CWindowImpl<CToolBox> instead of CWindowImpl<CMainWindow>.
CORE-18867
2023-03-11 07:42:04 +09:00
Joachim Henze
784946db8c [SYSSETUP] Tweak resources CORE-18870
de-DE: Harmonize the length of IDC_COMPUTERNAME with IDC_ADMINPASSWORD1 and IDC_ADMINPASSWORD2
which looks better and is already done like that in en-US.

de-DE: Also harmonize some 2nd stage captions. Some were named "Setup" and some were
named "Installation". I harmonized to "Setup" everywhere as that is what is also used in
1st stage, is shorter and no german person will have any issue understanding
that. It is also more likely to be kept in sync in the future if new dlgs would
be added, as it is the same word as used in en-US.

de-DE: Align the IDC_PROJECTS with the GPL button (which is slightly more wide in de-DE).

All languages:
Use same width for IDC_PRODUCT_OPTIONS as for IDC_PRODUCT_DESCRIPTION.
2023-03-10 21:36:46 +01:00
Hermès Bélusca-Maïto
dfb6996b45 [NTOS:KDBG] Split KdbInitialize into KdbSymInit and KDBG initialization proper.
- KdbSymInit() in kdb_symbols.c only initializes symbols implementation
  support.
- The rest of KdbInitialize gets moved into kdb_cli.c and initializes
  the KDBG debugger itself.
- Move KdbDebugPrint to kdb_cli.c as well.
2023-03-10 20:56:21 +01:00
Joachim Henze
793e9f20ef [DXDIAG] Fix text truncation on button for french fr-FR.rc CORE-18853
By shortening the text to what MS Windows uses there.
See the 2k3sp2 pic in the ticket.
2023-03-10 18:03:02 +01:00
Katayama Hirofumi MZ
02c647802f [MSPAINT] Fix use of uninitialized variable on startup (#5140)
There was an exception in starting up of mspaint of Visual Studio 2019 build. CORE-18594, CORE-18867
2023-03-10 07:31:31 +09:00
Joachim Henze
29d0deef13 [DXDIAG] Fix text truncation german de-DE.rc CORE-18853 (#5137) 2023-03-09 23:27:49 +01:00
Katayama Hirofumi MZ
87e905ecd8 [NOTEPAD] Use Globals.hMainWnd in ShowLastError (#5132)
Improving UI/UX by making Globals.hMainWnd the owner of the message box. CORE-18837
2023-03-10 07:25:06 +09:00
Hermès Bélusca-Maïto
a49732e5b6 [NTOS:KD] KdpDebugLogInit: Fix ZwCreateFile flags for appending to debug logging file.
However, ReactOS currently doesn't handle FILE_APPEND_DATA correctly,
so temporarily add a hack for fixing its support.

CORE-18789
2023-03-09 18:59:16 +01:00
Hermès Bélusca-Maïto
a8b09eddc4 [NTOS:KD] Add some annotations. 2023-03-09 18:32:36 +01:00
Hermès Bélusca-Maïto
cee893be99 [NTOS:KD] Simplify min-values calculations in KdpPrintToLogFile and KdpScreenPrint. 2023-03-09 18:26:53 +01:00
Hermès Bélusca-Maïto
4585372c6d [NTOS:IO/KD/KDBG] Formatting fixes only. 2023-03-09 18:26:02 +01:00
Ratin Gao
df7ab5d8f7 [KERNEL32] Remove a pointless SEH in VirtualAllocEx (#5117)
Win2K3 just wraps in SEH only this syscall, which appears pointless
and was removed since NT6.0. We remove it too as an experiment.
Revert the change that added SEH here from commit 6d97180 (r52899).
2023-03-09 17:08:08 +01:00
Katayama Hirofumi MZ
139809b747 [NOTEPAD] Use DestroyIcon instead of DeleteObject to destroy icon (#5130)
CORE-18837
2023-03-09 08:24:19 +09:00
Katayama Hirofumi MZ
bc89074cd5 [NOTEPAD] Remove some needless type casts (#5134)
CORE-18837
2023-03-09 08:23:08 +09:00
Hermès Bélusca-Maïto
abece16776 [WORDPAD][WRITE] Remove redundant pragma code_page(65001)...
... since this is done in the main RC file, from which the per-language
resource files are included.
2023-03-09 00:13:59 +01:00
Doug Lyons
2f43d9c183 [MSAFD] Work around regression of CORE-18848 from 0.4.12-dev-693-g2b1f6c8 (#5102)
Fix winetest for ws2_32:sock that crashes on 'test_AcceptEX' by modifying return values of WSPIoctl for 'case SIO_GET_EXTENSION_FUNCTION_POINTER'
2023-03-08 21:47:45 +01:00
Mark Jansen
5bc045c041 [SDK:SCRNSAVE] Implement mouse move threshold.
This makes it easier to start the screensavers by double-clicking.
2023-03-08 20:19:19 +01:00
Katayama Hirofumi MZ
f91b92c3f9 [NOTEPAD] Delete main.h (#5133)
Reduce files to improve readability. Move the codes in main.h into notepad.h. Make the size of Globals.szFilter 512.
CORE-18837
2023-03-09 03:41:11 +09:00
Katayama Hirofumi MZ
9ac20a7fe2 [NOTEPAD] Reduce lines in and around comments (#5131)
Reduce lines. CORE-18837
2023-03-09 03:11:57 +09:00
Thomas Faber
8e0c920fd2 [WINESYNC] user32/edit: Allow buffer access after EM_GETHANDLE.
wine commit id f62d8dc58fb3fb5f11a8ab55620ab9b2fbdaf967 by Nikolay Sivov <nsivov@codeweavers.com>
2023-03-07 21:48:06 -05:00
Thomas Faber
1ee9ea4518 [REGEDIT] Avoid buffer overflow in SelectNode. CORE-18602 2023-03-07 19:43:57 -05:00
Thomas Faber
910822b8f5 [REGEDIT] Add back import prompt message lost during Wine sync. CORE-18770 2023-03-07 19:41:51 -05:00
George Bișoc
8b75dce45a [NTOS:SE][FORMATTING] Fix the file header
This fixes the copyright file header at the top of the file, reflecting
the Coding Style rules. No code changes!
2023-03-07 18:39:46 +01:00
George Bișoc
b284e82f47 [NTOS:SE] Do not allocate memory pool just for the access rights
Access check is an expensive operation, that is, whenever an access to an
object is performed an access check has to be done to ensure the access
can be allowed to the calling thread who attempts to access such object.

Currently SepAnalyzeAcesFromDacl allocates a block of pool memory for
access check rights, nagging the Memory Manager like a desperate naughty
creep. So instead initialize the access rights as a simple variable in
SepAccessCheck and pass it out as an address to SepAnalyzeAcesFromDacl so
that the function will fill it up with access rights. This helps with
performance, avoiding wasting a few bits of memory just to hold these
access rights.

In addition to that, add a few asserts and fix the copyright header on
both se.h and accesschk.c, to reflect the Coding Style rules.
2023-03-07 17:50:39 +01:00
Katayama Hirofumi MZ
064ac123d1 [NOTEPAD] Improve printing (header/footer/tabs/performance) (#5111)
- Fix GetPrintingRect function.
- Add DrawHeaderOrFooter, DoPrintBody, DoPrintPage, DoCreatePrintFonts, and DoPrintDocument helper functions.
- Implement page header/footer and tabs printing in DIALOG_FilePrint function.
- Improve printing performance.
- Modify the header/footer resource strings.
- Delete the needless resource strings.
CORE-18837
2023-03-07 14:42:27 +09:00
George Bișoc
a804ba3200 [NTOS:SE] Print debug output only if NDEBUG is not defined
This mutes a lot of debug spam that fills up the debugger when an access
check fails because a requestor doesn't have enough privileges to access
an object.
2023-03-06 20:03:44 +01:00
Doug Lyons
b0a03a7caa [WS2_32] Fix Two DPRINT typo errors (#5113) 2023-03-06 12:22:28 +01:00
Katayama Hirofumi MZ
fdedc549d0 [MSVCRT] Follow-up of Follow-up of #5032 (f172503)
Fix for system/_wsystem.
Use _set_errno(ENOMEM) for malloc failure.
Rename status variable as exit_code.
2023-03-05 23:28:00 +09:00
Katayama Hirofumi MZ
5a7dbd6064 [MSVCRT] Follow-up of #5032 (f172503)
Use _cwait() instead of WaitForSingleObject and GetExitCodeProcess.
Use malloc/free instead of LocalAlloc/LocalFree.
2023-03-05 23:20:12 +09:00
Katayama Hirofumi MZ
f172503d57 [MSVCRT][CRT_APITEST] Implement _wsystem (#5032)
Implement _wsystem(), by referring system().
Improve system().
Use WaitForSingleObject in system() and _wsystem().
Check existence of COMSPEC.
Thanks ChatGPT.
2023-03-05 21:01:14 +09:00
Atharva Kulkarni
72974d2bac [MSPAINT] Treat as a file even if the bitmap file is empty
CORE-18508
2023-03-05 20:53:38 +09:00
Katayama Hirofumi MZ
77e6348f5f [NTUSER][USER32] Refactor NtUserLoadKeyboardLayoutEx (#5107)
- Split some code of NtUserLoadKeyboardLayoutEx to newly-added co_IntLoadKeyboardLayoutEx helper function.
- Modify NtUserLoadKeyboardLayoutEx prototype.
- Move co_UserImmLoadLayout code.
- Implement KLF_REORDER.
- Rename UserLoadKbdLayout as co_UserLoadKbdLayout.
- Improve LoadKeyboardLayoutEx.
CORE-11700
2023-03-05 11:41:32 +09:00
Joachim Henze
0fb580a855 [SDK] Improve gen_baseaddress.py and its output files (#4964)
* [SDK:TOOLS] Improve gen_baseaddress.py

Adds some kbd layout modules into the excludes-section:
that we do lack for todays master: e.g._ kbdeo, kbdsf, kbdrost

and also some that we lacked in the past
(for improving backwards compatibility of the script to older rls-branches):
kbdgm, kbdes, kbdgrist, kbdja, kbdko, kbdsk, kbdsk1

* [SDK:CMAKE] Highlight in the output files where the script does misbehave
2023-03-04 11:45:06 +01:00
Carlo Bramini
6d57c6c91c [CMDUTILS] Add Italian (it-IT) translation for WHERE command 2023-03-01 22:05:04 +01:00
Katayama Hirofumi MZ
f8c7bd6898 [NOTEPAD] Don't reset Find/Replace if lpstrFindWhat is set (#5104)
We don't want to reset the status of the checkboxes even if the Find/Replace dialog was closed. If lpstrFindWhat is set, do not reset the Find/Replace settings at DIALOG_SearchDialog. CORE-18837
2023-03-01 20:17:27 +09:00
Katayama Hirofumi MZ
8c7233e015 [NOTEPAD] Fix NOTEPAD_FindTextAt (#5103)
The whole-word search of Notepad had a bug around punctuation. For example, the text "Windows" didn't match in the text "MS-DOS,Windows,ReactOS". Use _istalnum instead of _istspace. Fix the position to check. _istalnum matches an alphabet letter or numeric digit. CORE-18837
2023-03-01 19:57:10 +09:00
Katayama Hirofumi MZ
55e3feba53 [NOTEPAD] Shift+F3 for backward search (#5101)
- Add Shift+F3 accelerator as command CMD_SEARCH_PREV.
- Extend DIALOG_SearchNext function with bDown argument for the action of CMD_SEARCH_PREV.
- Modify the message loop for effective F3 key on Find/Replace dialog.
CORE-17064
2023-03-01 07:16:28 +09:00
Joachim Henze
a9b1e059f4 [RAPPS] Style-addendum, no functional change (#5091)
* Just rename the 4 new files. Absolutely no other change.
* CMakeLists.txt, adapt the filenames
* Adapt all includes to make it compile
* CApplicationDB->CAppDB
* CApplicationInfo->CAppInfo
* Follow Mark Jansens good example and antipad the headers
2023-02-28 01:00:29 +01:00
Doug Lyons
60851914a8 Fix ICO_ExtractIconExW causing explorer to crash when trying
to display icon for bad EXE PE header.

See CORE-15879

 Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
2023-02-27 22:28:41 +01:00
Katayama Hirofumi MZ
781fb4a55e [IMM32] Fix ImmGetCompositionStringA/W (#5105)
Fix some typos in Imm32GetCompStrA/W. CORE-11700
2023-02-27 12:33:45 +09:00
Katayama Hirofumi MZ
88b1d89e95 [IMM32] Silence 'Out of boundary' log-spam
CORE-18852
2023-02-26 11:57:44 +09:00
Rexx J. Larsson
909b165c4a [SYSSETUP] Removed qemu credit entirely (#4971) 2023-02-25 23:44:06 +01:00
Mark Jansen
76753cd342 [USER32] Fix edit UAF by importing wine commit b40ddf42370e8344a862fbbc40384678db3871a9 2023-02-25 23:41:41 +01:00
Mark Jansen
cf08f9271e [COMCTL32] Fix edit UAF by importing wine commit fed0c33fe02a3fcb477086a32dc8d52c1e347889 2023-02-25 23:41:25 +01:00
Jose Carlos Jesus
ed4b16b7ff [SHELL32] Give a chance to rename new file or folder when created (#4950) 2023-02-25 23:38:42 +01:00
Katayama Hirofumi MZ
2284aa6e8b [COMDLG32] Follow-up of #5097 (f4bb0ae)
Do not change flags unless necessary.
https://bugs.winehq.org/show_bug.cgi?id=54567
CORE-17064
2023-02-25 10:31:43 +09:00
Katayama Hirofumi MZ
f4bb0ae376 [COMDLG32] Find/Replace: Correctly set flags (#5097)
The flags were not updated correctly. CORE-17064
2023-02-25 09:16:36 +09:00
Katayama Hirofumi MZ
13cf4c52f5 [USETUP] Speed up DoFileCopy +24% (#5089)
Make STRING_COPYING cached. CORE-18838
2023-02-24 10:19:53 +09:00
Jose Carlos Jesus
6d2012ac3b [BOOTDATA][INF] Add pt-PT translation (#4926) 2023-02-23 09:51:33 +09:00
Jose Carlos Jesus
23cd14d78b [SHELL32] Move error message to rc files so can be translated (CORE-18786) (#4997)
CORE-18786
2023-02-23 09:43:53 +09:00
Katayama Hirofumi MZ
a351943caa [NOTEPAD] Improve DIALOG_GoTo (#5082)
- Don't use text directly in DIALOG_GoTo function. Rely the EM_* message handlers.
- Fix and improve DIALOG_GOTO resource dialog (that was wrong in some points).
- Add STRING_LINE_NUMBER_OUT_OF_RANGE.
CORE-18837
2023-02-22 21:18:05 +09:00
Katayama Hirofumi MZ
95a64cbdd2 [NTUSER] Send WM_IME_SYSTEM:IMS_UPDATEIMEUI (#5075)
Send WM_IME_SYSTEM:IMS_UPDATEIMEUI message after window position change to improve IME UI sync. CORE-11700, CORE-15289
2023-02-22 08:35:55 +09:00
Katayama Hirofumi MZ
ead9366ef7 [NOTEPAD] Avoid half-initialized status of settings (#5078)
- Avoid buffer overrun in QueryString helper function.
- Improve NOTEPAD_LoadSettingsFromRegistry function.
CORE-18837
2023-02-21 09:22:41 +09:00
Katayama Hirofumi MZ
4c1e83d514 [SHLWAPI][SHLWAPI_APITEST] Expand string in SHLoadIndirectString (#5084)
- shlwapi!SHLoadIndirectString expands the environmental strings if the first character was '@'.
- Implement SHLoadRegUIStringA function.
CORE-10667
2023-02-21 09:17:47 +09:00
Katayama Hirofumi MZ
acd3148c1a [USETUP] Speed up CONSOLE_SetStatusTextXV +17% (#5086)
Get more speed by omitting erasing and overwriting whole line. CORE-18838
2023-02-21 09:14:26 +09:00
Atharva Kulkarni
f1de615b9c [MCIAVI32] Add ifdef guards to prevent regression (#5090)
as an addendum to (#5063) and CORE-18669
2023-02-20 20:23:37 +01:00
Mark Jansen
647f74d4ab [ATL] Remove some code that doesn't exist in the native ATL 2023-02-20 19:32:59 +01:00
Mark Jansen
33c2903e6d [RAPPS] Rework application handling
Previously, there would be function duplication between installed and available applications.
Now this is handled with polymorphism, which allows to re-use a lot of code.
Additionally, toolbar buttons are properly disabled now.
The mutex used to guard rapps' single instance is renamed,
so that the 'new' and old rapps can be run at the same time for testing.

CORE-18459
2023-02-20 19:30:02 +01:00
Katayama Hirofumi MZ
0cd80c17f6 [NOTEPAD] Simplify GetSelectionText (#5083)
Use EM_GETHANDLE message to get text. CORE-18837
2023-02-20 22:00:49 +09:00
Katayama Hirofumi MZ
f7f2ed201a [NOTEPAD] Make "UTF-8 without BOM" default (#5081)
- Define a constant ENCODING_DEFAULT that is equal to ENCODING_UTF8.
- Initialize Globals.encFile as ENCODING_DEFAULT.
- Reset encoding and line ending in DIALOG_FileNew.
- AnalyzeEncoding returns ENCODING_DEFAULT for non-zero ASCII text.
- Remove unnecessary DIALOG_StatusBarAlignParts calls.
CORE-18837
2023-02-20 21:59:16 +09:00
Katayama Hirofumi MZ
b2cac5cd6c [USETUP] Slightly optimize CONSOLE_SetStyledText (#5087)
Do not calculate Length unless necessary. CORE-18838
2023-02-20 18:31:34 +09:00
Joachim Henze
a5cd42c1ea [NETSHELL] Repair "Network Connection 'State' does nothing" CORE-18844
It regressed in master by 0.4.15-dev-5613-g 7a17c7d9ad

It was the only place within the ros sources where message WM_SHOWSTATUSDLG
was sent also from code. And therefore the only one that needed to be updated as well.
2023-02-19 18:44:51 +01:00
Gabriel Grondin
e400bd0861 [SYSDM] Fix french translation and layout (#4992)
Based on earlier PR #4704
- Fixed alignment for too long text.
- Improved translation.
- Minor adjustments.

CORE-18381

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Kyle Katarn <contact@kcsoftwares.com>
2023-02-19 18:29:08 +01:00
Joachim Henze
9672dc5047 [AUDIOSRV] Overhaul logging interfaces CORE-16912 (#5067) 2023-02-18 18:28:30 +01:00
Katayama Hirofumi MZ
504bf68e2a [NOTEPAD] Simplify FileExists function (#5079)
Simplify FileExists helper function by using GetFileAttributes function. CORE-18837
2023-02-18 21:40:11 +09:00
Atharva Kulkarni
ebc69d089f [MCIAVI32] Media Player: Don't open empty files (#5063)
Opening an empty file in media player could cause a crash. CORE-18669
2023-02-18 19:33:58 +09:00
Doug Lyons
874d317a71 [IP] Allow 0xFFFF as Valid Network Port Number (#5074)
* Allow 0xFFFF as valid port number

* Note possible reason for failure in TCPAllocatePort

* Return NtStatus error on TCP/IP out-of-ports failure

* Replace unavailable "ERR" with "DbgPrint"
2023-02-18 00:11:00 +02:00
Katayama Hirofumi MZ
1fdbc80e58 [NOTEPAD] Follow-up of #5076 (621439d)
- Add DIALOG_StatusBarUpdateAll() and use it.
- Fix the status bar initial contents.
2023-02-17 15:17:44 +09:00
Katayama Hirofumi MZ
bb67913156 [BROWSEUI] Add CAddressEditBox::RefreshAddress and use it (#5062)
Follow-up of #5026 [BROWSEUI] Execute command line from address bar. Elegantly reset the address bar after command line execution. CORE-15453
2023-02-17 12:29:30 +09:00
Katayama Hirofumi MZ
621439d6f2 [NOTEPAD] Fix and simplify Status Bar handling (#5076)
- Rename DoCreateStatusBar as DoShowHideStatusBar.
- Simplify WM_SIZE handler.
- Enable/disable CMD_STATUSBAR menu item correctly.
- Make DoShowHideStatusBar independent from DoCreateEditWindow.
2023-02-17 09:23:25 +09:00
Joachim Henze
d04e148d1c [NTUSER] Optimize Window Snap Disabling (#5061) 2023-02-16 19:33:37 +01:00
Suleyman Poyraz
2ea56af2e8 [TRANSLATION] Add/Update Turkish (tr-TR) translations (#4959)
Programs: at, charmap, diskpart, drwtsn32, explorer, fc, fontview, format, reg, timeout, where, wmic,
mspaint, regedit, runas, rundll32, subst, utilman, umandlg, w32time, winlogon

Tools: arping, vgafontedit, explorer-old, fraginator, fontsub, systeminfo, vcdcontroltool
CPLs: desk, hotplug, input, sysdm
DLLs: newdev, syssetup, user32

Themes: lunar
Screensavers: blankscr, butterflies, circles, cylfrac, matrix, mazescr, ssstars, starfield

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2023-02-15 17:29:52 +01:00
Katayama Hirofumi MZ
a5aea8e537 [NOTEPAD] Simplify NOTEPAD_EnableSearchMenu (#5077) 2023-02-15 10:15:51 +09:00
Robert Naumann
efb923073c [REGEDIT] Work around a Wine bug. Fixes CORE-18603
See https://bugs.winehq.org/show_bug.cgi?id=54491
2023-02-14 22:19:52 +01:00
Thamatip Chitpong
0fee1fc80c [NTUSER] IntWinListOwnedPopups: Exclude default IME window from the list (#5069)
And in IntShowOwnedPopups: Remove the window owner check hack as it's no longer needed.
Based on my observation, the owner of the default IME window can change and it depends on
the window that is being focused.

CORE-18659
CORE-18768
2023-02-14 21:57:41 +01:00
Katayama Hirofumi MZ
38c0da9978 [CRT] printf/wprintf: Support %zu (#5056)
"%zu" is a printf format specifier for type size_t. Some apps assume the implementation of this specifier. CORE-17787
2023-02-14 20:54:53 +09:00
Katayama Hirofumi MZ
324cda0835 [SHELL32][SHELL32_APITEST] Improve CommandLineToArgvW (#5055)
This PR will reduce the failures of CommandLineToArgvW testcase of shell32_apitest.
- Use isspace and isblank in shell32!CommandLineToArgvW.
- Strengthen shell32_apitest:CommandLineToArgvW testcase.
CORE-17787
2023-02-14 20:53:48 +09:00
Katayama Hirofumi MZ
647b67c1ac [NOTEPAD] Optimize AnalyzeEncoding
CORE-14641
2023-02-14 13:34:20 +09:00
Katayama Hirofumi MZ
361e0c72b8 [NOTEPAD] Follow-up of d3da0cb; *pBytes should be unsigned
CORE-14641
2023-02-14 13:25:44 +09:00
Katayama Hirofumi MZ
d3da0cb7ed [NOTEPAD] Follow-up of #5012 (0a851ea); Fix encoding
There was a bug in encoding analyzer.
CORE-14641
2023-02-14 13:12:47 +09:00
Katayama Hirofumi MZ
7014f63057 [NTUSER] Add 'Win:' comments to co_UserHideCaret and co_UserShowCaret
CORE-11700
2023-02-14 10:57:25 +09:00
Katayama Hirofumi MZ
73c1a8d19f [NTUSER] Add 'Win:' comment to IntRealChildWindowFromPoint
CORE-11700
2023-02-14 10:45:19 +09:00
Katayama Hirofumi MZ
83b8cb96f7 [NTUSER] Add 'Win:' comment to IntChildWindowFromPointEx
CORE-11700
2023-02-14 10:43:37 +09:00
Katayama Hirofumi MZ
798d0352a0 [NTUSER] Add 'Win:' comment to IntDeferWindowPos
CORE-11700
2023-02-14 10:39:26 +09:00
Katayama Hirofumi MZ
9140300c2a [NTUSER] Add 'Win:' comment to IntEndDeferWindowPosEx
CORE-11700
2023-02-14 10:30:22 +09:00
Mark Jansen
460a01b167 [BROWSEUI] Fix crash while editing a label in the folder tree
+ Add a missing break
CORE-18646
2023-02-13 23:20:20 +01:00
Atharva Kulkarni
2f6f24d0f6 [BROWSEUI] Don't show file names in Relevance column in search results (#5072)
* Dont show file names in Relevance column
* Define new column names
* Update CompareIDs to use newer defines
2023-02-13 20:49:45 +01:00
Atharva Kulkarni
a777cc2cc4 [EXPLORER] Fix crash on backspace while editing a label in the folder panel (#5059)
While editing a label, accelerator events should not be propagated.
2023-02-13 20:45:39 +01:00
Tibor Lajos Füzi
e60c0f6970 [DESK] Update Hungarian (hu-HU) translation (#5060) 2023-02-13 15:29:45 +01:00
Doug Lyons
57eb2a6bf4 [NTUSER] Missing "X" on "Folder" pane when Right Click > Explore from Desktop icons & Rapps toolbar errors (#5068)
Fix for right-clicking on 'My Computer' and selecting 'explore' and there is no 'X' for the title bar in the Folders pane
Also fixes Rapps missing toolbar combo box and edit box controls that were not displayed.

This is a complete revert of #4995 (commit 7866eb2) while still retaining its fixes.

CORE-18830, CORE-18817

Co-authored-by: I_Kill_Bugs
2023-02-13 15:27:40 +01:00
Katayama Hirofumi MZ
97db8a258d [NOTEPAD] Fix and improve DoSaveFile (#5066)
- Use EM_GETHANDLE to get the text.
- Check zero size and handle it elegantly.
CORE-18832
2023-02-13 08:32:09 +09:00
Doug Lyons
a050be0895 Fix Wine Internet Explorer Print hang (#5064)
When using wine internet explorer it crashes if you click print even if you click cancel, this fixes that issue.
nsIWebBrowserPrint_Print apparently causes issues for unknown reasons.

JIRA issue: CORE-16884

By returning S_OK print doesn't cause a crash.
Use ERR and S_OK return before hitting nsIWebBrowserPrint_Print
2023-02-12 19:17:55 +01:00
Rexx J. Larsson
3b5d917699 [RAPPS] Fix Installed Apps information display (#4973)
This fixes hyperlinks highlighting the text before it.

CORE-18397
2023-02-12 16:15:51 +01:00
Joachim Henze
5ad5737370 [NTUSER] Delete temporary workarounds in co_IntSetScrollInfo() (#4985)
fixes JIRA issue: CORE-18050

improves the code by removing ancient hacks (the static variables)

reduces testbot failures
VBox: https://reactos.org/testman/compare.php?ids=85831,85832 LGTM (-2 failures in user32:scroll for both bots)
KVM: https://reactos.org/testman/compare.php?ids=85829,85833 LGTM (-2 failures in user32:scroll for both bots)

co-authored by Doug-Lyons
2023-02-12 00:35:27 +01:00
Joachim Henze
a38d19ebce [BROWSEUI] Update de-DE.rc German translation
German accelerator for "&Datei" collided with "A&dresse".
Fix by switching to what MS uses in german XPSP3.

see the before-state with the [BROWSEUI] collision here:
https://jira.reactos.org/secure/attachment/65116/ros.png

Please note that in current master head the accelerators in
[BROWSEUI] filebrowser are generally broken for other reasons.
So this commit will not entirely fix CORE-18824

Also update to new-style header (inspired by es-ES.rc) and
https://reactos.org/wiki/Coding_Style
and add a missing translation.
2023-02-11 21:35:57 +01:00
Joachim Henze
cc54ecd779 [SYSSETUP] Fix a space-typo in IDS_WZD_PASSWORDEMPTY for *.rc (#5049)
Also update any existing old-school-headers to more compact newstyle.
2023-02-11 21:09:47 +01:00
Jose Carlos Jesus
f691efefc2 [SHLWAPI] No need extension to execute '.bat' files CORE-17612 (#4932)
When no extension is provided, add default extension with correct precedence using PathFileExistsDefExtW.
- Use PathFindOnPathExW when searching in current directory and PATH environment variable.
- Fix Width String terminator to UNICODE_NULL.
- Fix all failed tests on PathFindPathExW KVM test.
CORE-17612
2023-02-11 00:05:11 +09:00
Ratin Gao
5c22ce3742 [SHELL32] Remove unused flag SEE_MASK_UNICODE (#5033)
SEE_MASK_UNICODE does nothing, so we needn't mark it as "unsupported flag" and output FIXME
2023-02-10 23:56:13 +09:00
Ratin Gao
2f70f79904 [TRANSLATION] Improve Simplified Chinese (zh-CN) translation (#4979)
- Add and improve translation
- Fix mistakes
2023-02-10 23:15:25 +09:00
Katayama Hirofumi MZ
1b20c7312f [NOTEPAD] Treat empty file correctly (#5057)
#5012 had a regression on opening an empty file.
CORE-14641, CORE-18826
2023-02-09 21:54:20 +09:00
Joachim Henze
06b25bc9dd [EXPLORER][BROWSEUI] de-DE.rc fix 3 german keyboard accelerators
[BROWSEUI] German accelerator for "F&avoriten" collided with "&Ansicht".
[EXPLORER] German accelerator for "F&avoriten" must be "&Favoriten" also in the startmenu.
[BROWSEUI] German accelerator for "S&chnellstartleiste" was missing.
Fix all 3 by switching to what MS uses in german XPSP3.

see the before-state with the [BROWSEUI] collision here:
https://jira.reactos.org/secure/attachment/65116/ros.png

Please note that in current master head the accelerators in
[BROWSEUI] filebrowser are generally broken for other reasons.
So this commit will not entirely fix CORE-18824 yet, but just
rules out the small related glitches in the german rc-files.
2023-02-08 10:05:04 +01:00
Thamatip Chitpong
f73ac17e30 [WINMM] Constify some variables
Wine commit: 4aca7601265ca76339662aa4e1a9c6669cebc9a0

author: Andrew Talbot <andrew.talbot@talbotville.com>
Mon, 22 Aug 2011 19:31:51 +0000 (20:31 +0100)

committer: Alexandre Julliard <julliard@winehq.org>
Tue, 23 Aug 2011 14:53:53 +0000 (16:53 +0200)
2023-02-07 20:53:08 +01:00
Thamatip Chitpong
940bbd2e02 [WINMM] Fixed boundary condition in mmioOpen file name parsing
Wine commit: 4431c32c91206040d59d3eb82a971245594d1243

author: Alexander Puzankov <alxpnv@gmail.com>
Sun, 5 Dec 2010 14:24:59 +0000 (17:24 +0300)

committer: Alexandre Julliard <julliard@winehq.org>
Sun, 5 Dec 2010 15:44:28 +0000 (16:44 +0100)
2023-02-07 20:53:08 +01:00
Thamatip Chitpong
d27e2b0b23 [WINMM] Revert "Handle playing of files containing a '+' as part of the filename."
Wine commit: cc5f2b2c766bbe4975d7ee4a7c3b269650cbf874

author: Alexander Puzankov <alxpnv@gmail.com>
Mon, 29 Nov 2010 18:15:16 +0000 (21:15 +0300)

committer: Alexandre Julliard <julliard@winehq.org>
Wed, 1 Dec 2010 16:16:20 +0000 (17:16 +0100)
2023-02-07 20:53:08 +01:00
Joachim Henze
09dde2cff9 [REACTOS] "http://www.reactos" -> "https://reactos" (#5043)
To harmonize, to save some bytes, and last but not least for security reasons.
This can be understood as an addendum to (#2619).
2023-02-06 17:01:52 +03:00
Katayama Hirofumi MZ
7ce58e177c [BROWSEUI] Execute command line from address bar (#5026)
CORE-15453
2023-02-06 22:46:26 +09:00
Mark Jansen
ed972708f3 [ROSAPPS] Remove pice 2023-02-05 17:53:02 +01:00
Mark Jansen
c548b97328 [USERENV_WINETEST] Compare variable case insensitive
This fixes a test for TestWHS
2023-02-03 19:15:47 +01:00
Mark Jansen
eeaddf5bbc [DBGHELP_APITEST] Skip more tests on 2k3's dbghelp.dll 2023-02-03 17:45:14 +01:00
Mark Jansen
3bf4ef6fec [KMTESTS:CC] Disable Cc tests that seem to hang TestWHS 2023-02-02 19:08:00 +01:00
Mark Jansen
c35e75897d [UXTHEME_APITEST] Skip some tests that fail without a theme 2023-02-02 15:13:54 +01:00
Mark Jansen
83f076918a [KMTESTS:CC] Disable broken CcCopyRead / CcCopyWrite 2023-02-02 15:08:40 +01:00
Timo Kreuzer
9d19f8bf65 [WINESYNC] msvcrt: Use memmove to copy memory in memcpy_s.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 055ca5e4d9770d4f14e3c157f1288fa6308b86dd by Jacek Caban <jacek@codeweavers.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
6b8a981010 [WINESYNC] msvcrt: Use memmove to copy memory in wmemcpy_s.
Fixes memory corruption in Outlook 2016.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id be56a83fd00cdaf9583a973b1e041f47c5277768 by Jacek Caban <jacek@codeweavers.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
c50fb470b4 [WINESYNC] msvcrt: Add DECLSPEC_HOTPATCH to functions patched by libtcmalloc.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45199
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b917cc66f4f7b786e7f19f63ab0c0819a5455222 by Alex Henrie <alexhenrie24@gmail.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
3ff17d5d71 [WINESYNC] msvcrt: Don't include MSVC 8.0+ heap functions in SOs for older DLLs.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 42ab0af66b74f7572db2f6d0256f49fae7527221 by Alex Henrie <alexhenrie24@gmail.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
8fdc1b0d38 [WINESYNC] msvcrt: Add helper for exception throwing.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 90307e067f985f5963b62829993b320537578333 by Piotr Caban <piotr@codeweavers.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
6360937cd4 [WINESYNC] ucrtbase: Implement _realloc_base.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8a69c5d81f8deb472df18a8e16e57efef2eb9a9a by Alex Henrie <alexhenrie24@gmail.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
aa77776eb0 [WINESYNC] ucrtbase: Implement _free_base.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e4b8bc0edc640b36f2a2a26c53e18edea04fa74c by Alex Henrie <alexhenrie24@gmail.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
7757ebfbad [WINESYNC] ucrtbase: Implement _malloc_base.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5325b8c95112be75f4fa0e2e2e45bcc88434fb5d by Alex Henrie <alexhenrie24@gmail.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
0dfd5665c0 [WINESYNC] ucrtbase: Implement _calloc_base.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fdc57d497bb305e90680c3b450fa172042fd79cd by Alex Henrie <alexhenrie24@gmail.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
1d6ec8555d [WINESYNC] msvcrt: Handle overflow in calloc().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 50dd4b892825c75db35cd1f378291b51fa782f3e by Nikolay Sivov <nsivov@codeweavers.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
977e236102 [WINESYNC] msvcrt: memmove_s shouldn't zero its output buffer on error.
wine commit id 49560458426cf25b6a36bbf9bad35aa75c9f7aa7 by Dan Kegel <dank@kegel.com>
2023-02-02 14:58:08 +01:00
Timo Kreuzer
8fa0886fb9 [CRT] Reduce diff to wine by adjusting white space 2023-02-02 14:58:08 +01:00
Thomas Faber
d5999c6b66 [ACPI_APITEST] Mark test failures as todos.
This is a true unit test and runs the same code on Windows as it does on
ROS, so this uses unconditional todos rather than todo_ros.
This avoids test failures on Windows and hopefully makes things less
confusing.
2023-02-01 20:20:17 -05:00
Katayama Hirofumi MZ
0a851eadcb [NOTEPAD] Speed up notepad loading (#5012)
- Use EM_GETHANDLE/EM_SETHANDLE message to get/set the internal buffer handle.
- Use LocalReAlloc to re-allocate the buffer.
- Use file mapping to speed up loading.
- Use also IS_TEXT_UNICODE_REVERSE_STATISTICS for IsTextUnicode.
CORE-14641
2023-02-02 10:10:30 +09:00
Katayama Hirofumi MZ
b6aaf5e332 [SHELL32_APITEST] Add CommandLineToArgvW testcase (#5013)
CORE-17787
2023-02-02 10:09:00 +09:00
Thomas Faber
04b35ecc23 [KMTESTS:IO] Fix some failures in IoDeviceObject test. ROSTESTS-380 2023-02-01 20:05:57 -05:00
Gabriel Grondin
144e984b40 [ZLIB] Update to v1.2.13. CORE-18752 2023-02-02 02:18:39 +03:00
Mark Jansen
6ae2f432b3 [APPHELP_APITEST] dwMinor indicates the current date on Windows below vista.... 2023-02-01 18:29:59 +01:00
Mark Jansen
c7b83d2ce4 [ZIPFLDR_APITEST] Fix the test on 2k3, where a zip folder is marked as 'file', not as 'folder' 2023-02-01 15:43:32 +01:00
Katayama Hirofumi MZ
64527aa948 [RICHED20] Fix word break procedure for punct (#5021)
Fix the hyperlink on Chinese Rapps. Check punctuation in the word break procedure by using iswpunct function.
Wine Bug: https://bugs.winehq.org/show_bug.cgi?id=54419
CORE-17091
2023-02-01 18:29:41 +09:00
Katayama Hirofumi MZ
ea55101aad [NTUSER] Allow Window Snap to be disabled (#5014)
- Add IntIsWindowSnapEnabled helper function that reads registry value WindowArrangementActive.
- Check the registry and store the value to newly-added g_bWindowSnapEnabled global variable on startup.
- Check the global variable before Window Snap.

Win+Left, Win+Right, Win+Up, and Win+Down can be disabled by registry value WindowArrangementActive.
Snapping mouse can be also disabled. CORE-16379
2023-02-01 18:13:32 +09:00
Mark Jansen
0dde428d00 [APPHELP_APITEST] Fix the db test again 2023-02-01 00:44:51 +01:00
Mark Jansen
b4bf2cda31 [DBGHELP_APITEST] Be less strict on error codes 2023-02-01 00:42:32 +01:00
Mark Jansen
2cd219eb23 [ATL_APITEST] Ignore known to be bad values for type 2023-02-01 00:34:39 +01:00
Victor Perevertkin
a0a19c60d0 [TCPIP] Rearrange LwIP glue code.
Reduce unnecessary stuff in LwIP itself.
2023-02-01 02:31:14 +03:00
Victor Perevertkin
1734f29721 [IP][LWIP][TCPIP] Move ip and lwip libraries to drivers/network/tcpip
These libraries are used only inside tcpip.sys driver so move them close
to it.
2023-02-01 02:31:14 +03:00
Victor Perevertkin
6c2df5a199 [TCPIP][ROSTESTS] Remove old and unused TCP tests code 2023-02-01 02:31:14 +03:00
Victor Perevertkin
d43d898ea9 [ACD] Remove the driver stub 2023-02-01 02:31:14 +03:00
Victor Perevertkin
b82353cadd [WINEFILE] Remove Winefile application.
Please use Explorer on ReactOS or download the latest Winefile from Wine
2023-02-01 02:30:09 +03:00
Timo Kreuzer
684b5ce86a [NTDLL_APITEST] Comment out a test that fails on Windows Server 2003 2023-01-31 18:39:21 +01:00
Timo Kreuzer
9237c1a455 [NTDLL_APITEST] Fix test for ProcessUserModeIOPL in Nt[Query/Set]InformationProcess 2023-01-31 18:39:21 +01:00
Timo Kreuzer
e6c192b556 [NTDLL_APITEST] Fix tests for StackOverflow 2023-01-31 18:39:21 +01:00
Timo Kreuzer
dda076a8b3 [COMPILER_APITEST] Comment out some tests, when PSEH is used 2023-01-31 18:39:21 +01:00
Timo Kreuzer
a6faa1b82d [CRT_APITEST] Fix test for strlen
The direction flag in eflags is preserved on x64, but not on x86.
2023-01-31 18:39:21 +01:00
Timo Kreuzer
8233aa5667 [COMPILER_APITEST] Fix pseh test that failed when compiled with GCC 2023-01-31 18:39:21 +01:00
Timo Kreuzer
6cad84a769 [WIN32KNT_APITEST] Fox tests for NtGdiCreateDIBSection 2023-01-31 18:39:21 +01:00
Timo Kreuzer
180207c516 [WIN32KNT_APITEST] Fix test for NtUserEnumDisplaySettings 2023-01-31 18:39:21 +01:00
Timo Kreuzer
82b3cd36d0 [WIN32KNT_APITEST] Comment out broken test for NtUserSystemParametersInfo 2023-01-31 18:39:21 +01:00
Timo Kreuzer
e5da567d87 [WIN32KNT_APITEST] Fix tests for NtGdiPolyPolyDraw 2023-01-31 18:39:21 +01:00
Timo Kreuzer
be7a7f8c22 [WIN32KNT_APITEST] Comment out broken test for NtGdiGetFontResourceInfoInternalW 2023-01-31 18:39:21 +01:00
Timo Kreuzer
329e065dbb [WIN32KNT_APITEST] Fix a test for NtGdiExtTextOutW 2023-01-31 18:39:21 +01:00
Timo Kreuzer
f981345756 [WIN32KNT_APITEST] Comment out btoken tests for NtGdiDdQueryDirectDrawObject 2023-01-31 18:39:21 +01:00
Victor Perevertkin
886670e914 [DRIVERS] Remove unused __NTDRIVER__ and KERNEL definitions 2023-01-31 20:18:18 +03:00
Julen Urizar Compains
8866b9d7b0 Update win32ss/user/ntuser/winpos.c
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2023-01-31 01:08:45 +01:00
Julen Urizar Compains
7866eb2886 [WIN32SS] Fix winpos hyperlink&images loop rendering (CORE-7652) 2023-01-31 01:08:45 +01:00
Mark Jansen
9bb0b9137f [USBSTOR_NEW] Add missing poppack.h 2023-01-30 15:12:06 +01:00
Katayama Hirofumi MZ
c3644fd4d3 [NTUSER] Move IME window creation code (#5009)
Move the code that creates the default IME window, from IntCreateWindow to co_UserCreateWindowEx, just before sending WM_NCCALCSIZE message.
CORE-18723 CORE-18754 CORE-18773 CORE-18785 CORE-18802 CORE-18803
2023-01-30 12:19:39 +09:00
Katayama Hirofumi MZ
f156f9a137 [SHELL32] Follow-up of #5008 (8e036fe)
Now the menu item actions on start button should work. CORE-16544
2023-01-30 08:01:15 +09:00
Joachim Henze
7a17c7d9ad [NETSHELL] LanStatusDlg should show on LBUTTONUP in systray CORE-18813
not on LBUTTONDOWN.
2023-01-29 21:05:33 +01:00
Thomas Faber
6b863f63c2 [KMTESTS:MM] Fix MmReservedMapping test failures on PAE kernels. 2023-01-29 11:39:56 -05:00
Katayama Hirofumi MZ
8e036fe74d [SHELL32] Improve StartButton context menu (#5008)
- Add uFlags argument to CDefaultContextMenu::AddShellExtensionsToMenu- CCopyToMenu, CMoveToMenu, and CSendToMenu check the uFlags against (CMF_NOVERBS | CMF_VERBSONLY).
CORE-16544
2023-01-29 22:40:40 +09:00
Thomas Faber
5f1fff696b [KMTESTS:KE] Correctly handle MP builds in KeSpinLock test. 2023-01-28 23:26:30 -05:00
Thomas Faber
2f63da62e3 [KMTESTS:MM] Fix failures in MmMdl test on machines with 2GB of free RAM. 2023-01-28 23:17:52 -05:00
Thomas Faber
afb953ae4d [BUTTERFLIES] Do not release the DC passed to OpenGL. CORE-18498 2023-01-27 22:31:37 -05:00
Thomas Faber
8b19b6ec5a [GDI32] Fix memory leak in case of public DC. CORE-18498 2023-01-27 22:30:35 -05:00
Timo Kreuzer
f34e425e1a [WINESYNC] msvcrt: Don't fail when _aligned_offset_malloc is used with size=0.
wine commit id 7771552f247660acc472b4862f32c4f8426be180 by Piotr Caban <piotr@codeweavers.com>
2023-01-24 18:53:13 +01:00
Timo Kreuzer
739c9a1e77 [WINESYNC] msvcrt: Fixed strncpy_s behavior when count equals 0.
wine commit id bdf9a9f9bd56354f70a7431a9682183b84353211 by Piotr Caban <piotr@codeweavers.com>
2023-01-24 18:53:13 +01:00
Timo Kreuzer
c36ea58f32 [CRT] Add a number of functions from wine
This adds _aligned_msize, _recalloc, wmemmove_s, memcpy_s, wmemcpy_s
2023-01-24 18:53:13 +01:00
Timo Kreuzer
d0a52a6d71 [CRT] Reduce diff
- use msvcrt_set_errno
- MSVCRT_CHECK_PMT already sets the error.
- NULL check is already in HeapFree
2023-01-24 18:53:13 +01:00
Timo Kreuzer
c47506a5f4 [CRT] Use the original wine heap functions 2023-01-24 18:53:13 +01:00
Timo Kreuzer
cf40758d76 [CRT] reduce diff to wine of heap code
No functional changes intended.
2023-01-24 18:53:13 +01:00
Timo Kreuzer
73ef1c3c8b [CRT] Get back MSVCRT prefix in wine heap code 2023-01-24 18:53:13 +01:00
Katayama Hirofumi MZ
d992c07239 [NTUSER] Check IME-like after WNDS_DESTROYED check (#5005)
The guilty commit a2c6af0 enabled the IMM mode. So we have to take care of the default IME windows.
Using IS_WND_IMELIKE against WNDS_DESTROYED window was the cause of BSoD. CORE-18777
2023-01-23 12:22:54 +09:00
Roy Tam
1321c802fc [USER32_WINETEST] Add test for WM_CONTEXTMENU from grandchild window
Cherry-picked from 3af8415ca9
2023-01-22 22:18:11 +03:00
Roy Tam
0bab3a1048 [NTUSER][USER32] Set WM_CONTEXTMENU's wParam to the child window's handle
Cherry-picked from 3af8415ca9

CORE-18801
2023-01-22 22:18:11 +03:00
Ratin Gao
5b3b4151e2 [OLEAUT32] OaBuildVersion: Add Windows Server 2003 case (#5004)
Fixes debug print in Visual Studio 6 PRO installation. CORE-18419
2023-01-22 21:34:54 +03:00
Ratin Gao
21a168e574 [ATL] CImage::Load(): Return E_FAIL without ATLASSERT on failure (#4993)
Application won't be interrupted by ATLASSERT when image load failure happens,
just like it was done in MS ATL.

CORE-18589
2023-01-22 20:38:16 +03:00
Thamatip Chitpong
74c45e0975 [WIN32K:NTUSER] ValidateHwndNoErr: Fix window handle validation (#4981)
Also check window state. Addendum to 4d48b88b.
2023-01-22 17:44:52 +03:00
Thomas Faber
c0e7eaf403 [NTOS:PNP] Avoid recursion when walking the device tree. 2023-01-22 09:42:08 -05:00
Dmitry Borisov
3dd3d10531 [PCI] Fix I/O range size of the resource descriptors
Fixes incorrect PCI IDE resources in VPC 2007
CORE-17256
2023-01-21 07:33:03 +01:00
Thomas Faber
d3a718eb01 [COMPBATT] Add inf entry. CORE-18167 2023-01-21 00:10:06 -05:00
Roy Tam
9293b975ef [NTDLL_APITEST] Add test for a section where PointerToRawData = 0 while SizeOfRawData != 0. CORE-18797 2023-01-20 17:02:37 +08:00
Roy Tam
0d4a8d0ea6 [NTOS:MM] Ignore sections either PointerToRawData or SizeOfRawData is zero
VC1 Linker fills BSS.SizeOfRawData with data in IMAGE_OPTIONAL_HEADER.SizeOfUninitializedData but keeps PointerToRawData to zero.

CORE-18797
2023-01-20 17:02:12 +08:00
Joachim Henze
e89675768b [SHELL32] Add 3 accelerators for IDM_DRAGFILE MENU de-DE.rc (#5001)
They got lost when the menu was translated to german during 0.4.9-dev'ing.
2023-01-18 22:40:05 +01:00
Julio Carchi
a999c43746 [NTGDI] Check if face->charmap is not zero before accessing its encoding (#4390)
This allows DevExpress Ribbon Notepad sample to start.

Also add a fat DPRINT1 suggested by Timo Kreuzer,
because there is a lot wrong in the code.

CORE-18091 CORE-18558
2023-01-18 21:24:40 +03:00
Wu Haotian
346477fb3c [NTOS:MM] Use image prefix in MmLoadSystemImage
MmLoadSystemImage has a PUNICODE_STRING NamePrefix parameter which is
currently unused in ReactOS. When the kernel loads the crash dump
storage stack drivers, the drivers will be loaded with MmLoadSystemImage
with a "dump_" or "hiber_" (for hibernation, which uses crash dump
stack too) prefix. This change adds in the prefix support, and is
supposed to push crash dump support forward.

CORE-376
2023-01-18 02:35:19 +03:00
Thomas Faber
543d390259 [NTOS:IO] Handle missing device instance in IopInitializeBuiltinDriver. CORE-18793 2023-01-14 17:52:17 -05:00
Thomas Faber
6c06760547 [HIVESYS] Move ndis to the "NDIS Wrapper" group. CORE-18790
Miniport drivers import from NDIS, but NDIS does not support being
loaded as a dependent driver (it does not have DllInitialize).
Instead, NDIS needs to load before all possible miniport drivers,
even boot-start ones. We achieve this by placing it in its own service
order group, which loads before the NDIS group.

All our miniport drivers are demand-start, so would automatically start
later. The ndisprot driver from the ticket is likely the first boot-start
miniport we've encountered. Since DriverEntry did not run,
AdapterListHead was NULL, resulting in the crash.
2023-01-14 15:33:30 -05:00
Denis Malikov
669b2f4465 [WIN32SS:NTUSER] restore snapped window to normal size by dragging window caption
CORE-15638
2023-01-08 22:49:59 +03:00
Joachim Henze
8d5011fb6b [THEMES][DOC] "Open Sans" -> "Trebuchet MS" (#4983)
[THEMES] Eliminates the last references to "Open Sans" font.

This is an addendum to 0.4.13-dev-765-g 04a361d091
"Open Sans" has been replaced by "Trebuchet MS" back then.

[DOC] Mention trebuc*.ttf as being based on 'Open Sans Fonts'
2023-01-08 16:07:30 +01:00
Hermès Bélusca-Maïto
84e32e4e90 [NTOS:KD] Revisit KdSendPacket() and KdReceivePacket() for DBGKD_DEBUG_IO. (#4914)
- Use SAL2 annotations.
- KdSendPacket(): Validate DEBUG_IO API call.
- KdReceivePacket(): Take the LengthOfStringRead into account; use
  KdbpReadCommand() to read the input, so that correct line edition
  is available (backspace, etc.)
2023-01-06 18:57:32 +01:00
Hermès Bélusca-Maïto
e619f89020 [NTOS:KDBG] Fix and improve KdbpReadCommand(). (#4914)
- Don't read anything and return immediately if the buffer size is zero.

- Allow the controlling keys (up/down arrows, backspace) even if the
  buffer is full! (especially backspace if too much has been written).

- Return the number of characters stored, not counting the NULL terminator.
2023-01-06 14:44:50 +01:00
Hermès Bélusca-Maïto
1b25fe161c [KERNEL32][NTOS:PS][RTL] Cleanup some DbgPrompt() calls. 2023-01-06 14:44:49 +01:00
Joachim Henze
51b4a38ab7 [BOOTDATA] Use the standard "Helv" -> "MS Sans Serif" (#4982)
This is what Windows does. And we forgot this location here.
This is an addendum to
0.4.15-dev-5365-g 9bb5627df6 [SETUP][INF] Use the standard "Helv" -> "MS Sans Serif" substitution... (#4864)
2023-01-06 13:31:03 +01:00
Thamatip Chitpong
51c38aeb89 [RAPPS] Add tooltip for "Refresh" and "Update Database" (#4975) 2023-01-06 13:23:25 +01:00
Hermès Bélusca-Maïto
2714e3ee48 [LIBWINE] Fix GCC build warning. (#4938)
In file included from ../sdk/lib/3rdparty/libwine/debug_ros.c:9:
../sdk/lib/3rdparty/libwine/debug.c: In function 'get_temp_buffer':
../sdk/lib/3rdparty/libwine/debug.c:343:33: warning: passing argument 1 of '_InterlockedExchangeAdd' from incompatible pointer type [-Wincompatible-pointer-types]
     idx = interlocked_xchg_add( &pos, 1 ) % (sizeof(list)/sizeof(list[0]));
                                 ^~~~
In file included from ../sdk/include/crt/mingw32/intrin.h:98,
                 from ../sdk/include/crt/intrin.h:1017,
                 from sdk/include/psdk/winnt.h:48,
                 from ../sdk/include/psdk/windef.h:202,
                 from ../sdk/include/reactos/wine/debug.h:26,
                 from ../sdk/lib/3rdparty/libwine/debug.c:32,
                 from ../sdk/lib/3rdparty/libwine/debug_ros.c:9:
../sdk/include/crt/mingw32/intrin_x86.h:215:70: note: expected 'volatile long int *' but argument is of type 'int *'
 __INTRIN_INLINE long __cdecl _InterlockedExchangeAdd(volatile long * Addend, long Value)
                                                      ~~~~~~~~~~~~~~~~^~~~~~
2023-01-06 13:17:21 +01:00
Timo Kreuzer
abb75b6214 [WIN32K] Add some NULL checks for THREADINFO::rpdesk
rpdesk should probably never be NULL, but it happens in rare circumstances, like csrss being terminated.
2023-01-04 10:32:28 +01:00
Timo Kreuzer
e56da4854f [WIN32K] Properly reference owner window 2023-01-04 10:32:28 +01:00
Timo Kreuzer
12ed9f30a7 [NTOS] Fix interrupt flag handling in KiPageFault
This fixes a crash in kmtest:ZwAllocateVirtualMemory
2023-01-04 10:32:28 +01:00
Timo Kreuzer
5b6e7eceda [NTOS] Fix KiGeneralProtectionFault 2023-01-04 10:32:28 +01:00
Timo Kreuzer
26f541aa97 [BEEPMIDI] Make DeviceInfo structure 64 bit compatible
Fixes winmm_winetest midi on x64
2023-01-04 10:32:28 +01:00
Timo Kreuzer
01f2426dcf [WINMM] Sync mci.c with wine
Date: 2022-02-22
Author: Eric Pouech
Commit: "winmm: Enable compilation with long types."
Hash 71189f62604c2cb8208c85372a0e027dd2b79055
2023-01-04 10:32:28 +01:00
Timo Kreuzer
7d4de5f8ea [SHELL32] Check for valid listview in CDefView::_PidlByItem and CDefView::RemoveObject
This fixes failing ATLASSERTs in shell32_winetest:shlview
2023-01-04 10:32:28 +01:00
Timo Kreuzer
902cdbc63a [ATL] Remove an assert that doesn't exist in the native ATL
This fixes an ATL assert in shell32_winetest:assoc and shell32_winetest:shfldr_special
2023-01-04 10:32:28 +01:00
Timo Kreuzer
d0c1df7882 [SHELL32] Add check to CMenuToolbarBase::ShowDW
This fixes an ATL assert in shell32_apitest:menu
2023-01-04 10:32:28 +01:00
Timo Kreuzer
c5158963a3 [ADVAPI32] Fix a buffer overflow in RegQueryValueExA
The code was trying to check whether the output string was already NULL terminated by RtlUnicodeToMultiByteN before NULL terminating it by checking DataStr[*count - 1] for a NULL terminator. But since RtlUnicodeToMultiByteSize always returns the size without the NULL terminator, DataStr[*count - 1] would always be the last actual character, never an optional NULL terminator.
For 0 sized strings this would actually lead to accessing the output buffer at position -1 (on 32 bit)  or 0xFFFFFFFF (on 64 bit).
Fix this by removing the check. This fixes a crash in advapi32_winetest:registry on x64.
2023-01-04 10:32:28 +01:00
Timo Kreuzer
2154e259e7 [PSDK] Fix definition of DRVCALLBACK for 64 bit 2023-01-04 10:32:28 +01:00
Timo Kreuzer
437f2b1b0e [KERNEL32] Silence 2 annoying DPRINTs 2023-01-04 10:32:28 +01:00
Cătălin Gabriel Drăghiță
911162a1c7 [TRANSLATIONS] Email update (#4974) 2023-01-03 19:47:55 +01:00
George Bișoc
0bdae2114a [NTOS:CM] Cleanup the hive in case linking it to master fails (#4969)
Currently the failure code path doesn't do any kind of cleanup against
the hive that was being linked to master. The cleanup is pretty
straightforward as you just simply close the hive file handles and free
the registry kernel structures.

CORE-5772
CORE-17263
CORE-13559
2023-01-03 16:48:03 +01:00
Hermès Bélusca-Maïto
95e5f07084 🎊 🍾 🥳 Happy New Year 2023 to the ReactOS Community! 🎆 ⚛️ ☢️
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:
 __,  ,__)            __,  ,__)       __, ,__)        ░▄████▄░▄███▄░▄████▄░▄█▀▀█▄░
(--|__| _ ,_ ,_      (--|\ | _       (--\ | _  _ ,_   ░▀▀░▄██░██░██░▀▀░▄██░░░░▄█▀░
  _|  |(_||_)|_)(_|    _| \|(/_(_|_)     \|(/_(_||    ░░▄██▀░░██░██░░▄██▀░░▄░▀▀█▄░
 (        |  |  ,_|   (                (__|           ░██████░▀███▀░██████░▀█▄▄█▀░
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:
2023-01-01 00:00:00 +03:00
Muthu R Kumar
7fff96e7fe [NTOBJSHEX] Return early from GetInfoFromPidl when pcidl is null in LPCITEMIDLIST (#4946)
This fixes a crash when attempting to drag-n-drop items from NTObject Namespace and System Registry.
CORE-18480, CORE-18481
2022-12-31 16:53:02 +01:00
Egor Ananyin
d395c30967 [MSPAINT] Don't allow to set image as wallpaper if it has the wrong format (#4924)
CORE-18661

Our Paint allows user to try to set a .ico file as a wallpaper, which isn't possible. Different Windows versions have different behaviour, so it was decided that the simplest fix would be to just grey out "Set as wallpaper" buttons as in 2K3 (See the Jira ticket).
2022-12-31 16:08:14 +01:00
George Bișoc
bfe06cbfca [SDK][CMLIB] Properly check for failure if hive free list creation fails
HvpCreateHiveFreeCellList returns a NTSTATUS code yet the way the code path checks
checks for failure is just wrong. This was spotted whilst working on #4571 PR.
2022-12-30 19:58:37 +01:00
Timo Kreuzer
afbc446ec7 [WIN32NT_APITEST] Fix entirely broken win32knt_apitest NtGdiDdQueryDirectDrawObject 2022-12-30 11:19:26 +01:00
Timo Kreuzer
ad8c446814 [DBGHELP_APITEST] Comment out rsym test for anything other than x86 for now 2022-12-30 11:19:26 +01:00
Timo Kreuzer
64135505f2 [GDI32_APITEST] Fix test results for SetWorldTransform on Windows 2003 x64 2022-12-30 11:19:26 +01:00
Timo Kreuzer
284ee9dc9c [GDI32_APITEST] Fix test results for CombineTransform on Windows 2003 x64 2022-12-30 11:19:26 +01:00
Timo Kreuzer
3d1ca45934 [XMLLITE_WINETEST] Fix stack corruption on 64 bit 2022-12-30 11:19:26 +01:00
Timo Kreuzer
c1362c64b0 [WS2_32_WINETEST] Fix use of uninitialized variable 2022-12-30 11:19:26 +01:00
Timo Kreuzer
91b51f6e9c [NTDLL_APITEST] Fix LdrEnumResources test for x64 2022-12-30 11:19:26 +01:00
Timo Kreuzer
3b437b8a1c [NDK] Fix definition of RTL_DEBUG_INFORMATION
Fixes ntdll_aiptest RtlDebugInformation on x64
2022-12-30 11:19:26 +01:00
Timo Kreuzer
918c98a239 [NDK] Fix definition of LDR_ENUM_RESOURCE_INFO
This fixes ntdll_apitest LdrEnumResources on x64 Windows
2022-12-30 11:19:26 +01:00
Mark Jansen
a09d5bae0f [LOG2LINES] Compile the tool for MSVC builds 2022-12-29 16:51:40 +01:00
Justin Miller
24d124f99f [NTOS] Set SwapBusy properly for i386
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2022-12-28 21:09:41 +01:00
Justin Miller
2a33aed7cf [NTOS] Increment ActiveProcessors accurately 2022-12-28 21:09:41 +01:00
Justin Miller
fbd033df0a [NTOS] fix timer lock data and hardcod 2022-12-28 21:09:41 +01:00
Justin Miller
b5c35c03b6 [NTOS] Swap MAXIMUM_PROCESSORS with NUMBER_POOL_LOOKASIDE_LISTS 2022-12-28 21:09:41 +01:00
Joachim Henze
83e1363065 [INF] More deduplication and style harmonization (#4952)
- deduplication of manufacturer strings
- at some places harmonizes the different length of separator lines within the same file, centers the words (as requested by hbelusca during review), harmonizes those lines to 74characters length each
- moving some strings that are not to be localized into the non-localization string section
- other minor formatting preferences coauthored by StasM
2022-12-28 02:26:17 +01:00
Joachim Henze
f9dfc45375 [SYSSETUP] Fix *.rc combobox for the timezone is too small CORE-18587
Use the same width for COMBOBOX IDC_TIMEZONELIST that we use in timedate.cpl to
prevent strings from getting cut off for some timezones with long names.
To still make it look appealing afterwards, enlarge and move a bit to the right also IDC_TIMEPICKER.

IDC_AUTODAYLIGHT used different widths in several translations, we can harmonize
for all languages to the biggest one that was used: 230 (taken from eu-ES.rc).

And also fix a few additional whitespace-glitches in zh-CN, zh-HK, zh-TW and en-GB.

After this commit the whole dialog IDD_DATETIMEPAGE uses the exact same dimension for
all of its controls for all languages.
2022-12-26 19:58:31 +01:00
Joachim Henze
2ac931ce34 [TIMEDATE] Limit the expanded combobox height by using CBS_NOINTEGRALHEIGHT CORE-18665
It is good practice to not make the expanded combobox larger than the dialog itself.
CBS_NOINTEGRALHEIGHT will allow to set a fixed amount of pixels for the v6 combobox,
and therefore allows us to hide the problem for this specific dialog.

The problem was unhidden by 0.4.12-dev-882-g e3e173ffaa

Even after this patch I think Wines comctl32 can be improved for comboboxes with very
many elements that do not use this small trick yet. I will create a follow-up-ticket.
2022-12-26 16:26:51 +01:00
Hermès Bélusca-Maïto
068fcd3894 [REG] Fix mis-converted Yes-No-All keypress shortcuts strings.
The PO \"#msgctx\" control strings were not stripped out.
2022-12-26 13:16:31 +01:00
George Bișoc
9385830b33 [NTOS:CM] Enable verbose debug output of registry lazy flushing component
Log debug output of the lazy flusher as much information as possible so that we can examine how does the lazy flusher behave, since it didn't work for almost a decade. Verbose debugging will be disabled once we're confident enough the registry implementation in ReactOS is rock solid.
2022-12-23 19:45:25 +01:00
George Bișoc
578f2fc512 [NTOS:CM] Don't lazy flush the registry during unlocking operation
Whenever ReactOS finishes its operations onto the registry and unlocks it, a lazy flush is invoked to do an eventual flushing of the registry to the backing storage of the system. Except that... lazy flushing never comes into place.

This is because whenever CmpLazyFlush is called that sets up a timer which needs to expire in order to trigger the lazy flusher engine worker. However, registry locking/unlocking is a frequent occurrence, mainly when on desktop. Therefore as a matter of fact, CmpLazyFlush keeps removing and inserting the timer and the lazy flusher will never kick in that way.

Ironically the lazy flusher actually does the flushing when on USETUP installation phase because during text-mode setup installation in ReactOS the frequency of registry operations is actually less so the timer has the opportunity to expire and fire up the flusher.

In addition to that, we must queue a lazy flush when marking cells as dirty because such dirty data has to be flushed down to the media storage of the system. Of course, the real place where lazy flushing operation is done should be in a subset helper like HvMarkDirty that marks parts of a hive as dirty but since we do not have that, we'll be lazy flushing the registry during cells dirty marking instead for now.

CORE-18303
2022-12-23 19:45:13 +01:00
Fernando Isnaldo Silva de Faria
1247a16863 Translate favorites menu
Improve translation for Favorites menu
2022-12-22 23:50:36 +01:00
Jose Carlos Jesus
ef10fd0109 [TRANSLATION] Don't translate Documents and Settings folder 2022-12-22 23:18:57 +01:00
Jose Carlos Jesus
f59304098d [SHELL32][USER32] Improve pt-PT translation 2022-12-22 23:18:57 +01:00
Tibor Lajos Füzi
55d816df7c [TRANSLATION] Hungarian translation update for sysdm 2022-12-22 23:13:07 +01:00
Fernando Isnaldo Silva de Faria
5b8886de26 [DXDIAG] Fix Portuguese (pt-BR) translation (#4953)
Fix minor translation error.
2022-12-22 13:30:51 +01:00
Thamatip Chitpong
ca9ded7af8 [NTUSER] Fix zombie window created by CTRL+ALT+DEL (#4935)
Based on patch by I_Kill_Bugs. CORE-18258
See also commit 58b0558f9.
2022-12-22 01:38:53 +01:00
Serge Gautherie
8efde69a25 [WIN32K:NTGDI] PATH_PathToRegion(): Update documentation (#4941)
Addendum to 215e0d9 (r64177).
2022-12-22 01:27:51 +01:00
Serge Gautherie
0b6775505a [NTOBJSHEX] Fix displayed registry value type and icon (#4949)
- RegistryTypeNames[]: Remove an unwanted space

- CRegistryFolderExtractIcon::GetIconLocation():
  Add the REG_ENTRY_VALUE_WITH_CONTENT case

- CRegistryFolder::GetDetailsOf(): Fix copypasta

- CRegistryFolder::FormatValueData(): Fix magic constant

CORE-18747
2022-12-21 15:42:36 +03:00
Egor Ananyin
e0248f4f51 [NTOBJSHEX] Fix sorting elements by different columns (#4947)
- Add ability to sort NT objects by symlinks
- Add ability to sort registry entries by type/value

CORE-18761 CORE-18762
2022-12-20 23:58:30 +03:00
Egor Ananyin
d1718366de [SHELL32] Read the label for a CD from autorun.inf (#4945)
Some CDs may set a custom label using autorun.inf.
Read the label from the file, and if it succeeds, show it to the user.

CORE-18567
2022-12-20 22:30:09 +03:00
Stanislav Motylkov
ba03ffd645 [NTOBJSHEX] Formatting only 2022-12-20 20:08:08 +03:00
Muthu R Kumar
4c25af5bd4 [SHELL32] Fix detailed list views in Control Panel and Registry Folder
- Add enums for Control Panel and Registry Folder columns
- Fix iColumn values in GetDetailsOf() and fix checks in
  GetDefaultColumnState()

Current CControlPanelFolder::CompareIDs was using wrong lparam column
index. Actual column index should be 1 instead of 4. Because of this
the comment column next to name in details view was not being displayed
correctly. The same fixes for CRegFolder class functions.

PR #4944. CORE-18743 CORE-18501
2022-12-20 18:42:07 +03:00
Eric Kohl
28088ab25d [RPCRT4_WINETEST] Remove obsolete todo_wine
Addendum to 00ccbd2f
2022-12-19 17:58:02 +01:00
Eric Kohl
00ccbd2f39 [RPCRT4] RpcStringBindingParseA/W must fail, if a colon is missing in the string binding
This fixes a bug in the rpc winetest.
This patch will be sent upstream.
2022-12-19 16:13:58 +01:00
Eric Kohl
d01de6dc8b [RPCRT4] Call WSAStartup in rpcrt4_ip_tcp_get_top_of_tower
This fixes the crash in the rpc winetest.
2022-12-19 13:39:52 +01:00
Eric Kohl
2a783979ff [RPCRT4] RpcStringFreeA/W must set the pointer to NULL
Add a matching wine test.

This change will be sent upstream.
2022-12-19 09:18:48 +01:00
Joachim Henze
5ecb9e8cb5 [DESK] Update german translation de-DE.rc (#4943) 2022-12-16 16:29:17 +01:00
Eric Kohl
5ff50741dd [NTOS:IO] Replace an outdated E-Mail Address
The old Address will be gone soon.
2022-12-16 10:34:51 +01:00
Joachim Henze
e8e38b8301 [SYSSETUP] Fix missing comma in german translation de-DE.rc
The old string lacked a *mandatory* comma before the word "übereinstimmen"
as the part "die Sie nutzen wollen" is a relative clause,
relative to the noun "Anwendungen".
But we can fix it without having to add the comma by some shuffling.
That also improves the reading flow.
2022-12-15 00:14:57 +01:00
Joachim Henze
e54c7fa740 [WINLOGON] Update german translation de-DE.rc
Addendum to 0.4.15-dev-2358-g 5f03339239
to avoid regressing the german translation compared to releases/0.4.14
2022-12-14 23:27:37 +01:00
Timo Kreuzer
9762ef9480 [WIN32K] Workaround for broken/retarded (on non-x86) FLOATOBJ_GetFloat
The official definition in winddi.h always returns the result in an ULONG. This works to assign to a FLOATL on x86, which is also an ULONG, but it doesn't work on any other architecture, where FLOATL is actually a FLOAT, so the assignment would convert the ULONG encoding of the FLOAT to an actual float, which gives broken results. Work around this by simply replacing the definition with a sane one in win32k.
2022-12-13 07:18:24 +01:00
Timo Kreuzer
a206b55838 [WIN32K] Fix memory leak on failure in REGION_SetPolyPolygonRgn 2022-12-13 07:18:24 +01:00
Timo Kreuzer
4f0f5f6ff8 [WIN32K] Fix a bug in PATH_PathToRegion 2022-12-13 07:18:24 +01:00
Timo Kreuzer
84b09285c8 [WIN32K] Fix missing NULL check in NtGdiPathToRegion 2022-12-13 07:18:24 +01:00
Timo Kreuzer
60af8194bb [WIN32K] Fix uninitialized variable in IntExtTextOutW 2022-12-13 07:18:24 +01:00
Timo Kreuzer
2e3fe5de90 [NTOS] Fix saving of XMM registers on some trap handlers 2022-12-13 07:18:24 +01:00
Timo Kreuzer
52fe43e87b [KMTEST] Add a NULL check 2022-12-13 07:18:24 +01:00
Timo Kreuzer
9e12af569f [KMTEST] Handle failure in KmtLoadDriver and KmtOpenDriver 2022-12-13 07:18:24 +01:00
Victor Perevertkin
53de4fd93e [NTOS:IO] Bring back the NDEBUG definition
Addendum to 947f60b207
2022-12-13 01:49:32 +03:00
Victor Perevertkin
947f60b207 [NTOS:IO] Allow REG_SZ type for ImagePath of a driver
Fixes the load of the Sysinternals FileMon driver.

CORE-18725
2022-12-13 01:46:20 +03:00
Serge Gautherie
475c0d1b4d [BTRFS] btrfs.inf: Comment out mkbtrfs.exe (#4937)
It is not imported into ReactOS.

Addendum to 0.4.13-dev-788-g c8875c182a and 0.4.14-dev-1535-g 194ea909fd
2022-12-11 23:10:02 +01:00
Hermès Bélusca-Maïto
e942eeaff8 ['OLD'_WORDPAD] General resources in rsrc.rc are language-neutral. 2022-12-10 00:40:53 +01:00
Hermès Bélusca-Maïto
1103104227 [ROSAPPS] Exclude the templates from compilation by default. 2022-12-10 00:36:13 +01:00
Hermès Bélusca-Maïto
49ceac2efc [MDI] Template MDI app is Win32 GUI, not CUI. 2022-12-10 00:36:12 +01:00
Joachim Henze
5123edd731 [CONSOLE] Improve font preview and Update de-DE.rc (#4933)
An addendum to bc1e2dbb92 == SVN r74465
from CORE13182 (I intentionally did not want JIRA to auto-link)
2022-12-09 21:28:38 +01:00
Thamatip Chitpong
7ca2710d64 [SHELL32] Improve "Empty Recycle Bin" sound code (#4927)
Split off from PR #4755. This change doesn't require WINMM fixes (#4635).

- Remove `MAX_PATH` limit
- Use ATL classes
- Play the sound asynchronously
2022-12-09 23:14:09 +03:00
Thamatip Chitpong
f0c20caf32 [SHELL32] Fix My Documents properties (#4906)
Tell the caller to run default action by returning S_FALSE in else case.

CORE-17509
2022-12-09 16:00:24 +03:00
Oleg Dubinskiy
82cf6c2b06 [NTOS:IO] Properly zero-initialize a file object created by IopParseDevice (#4931)
Fix uninitialized kernel memory leakage for a case when a file object extension is appended.

CORE-18711
2022-12-08 01:15:42 +03:00
Hermès Bélusca-Maïto
1341c384f2 [MSPAINT] Fix manifest for mspaint. 2022-12-06 15:26:30 +01:00
Thamatip Chitpong
ebf10528c2 [SYSDM] System Parameters: Add close button (#4928)
Follow-up of PR #4891 (commit f125cd1c7).
2022-12-06 13:50:12 +01:00
Hermès Bélusca-Maïto
b577ac073e [KDGDB] Fix compilation following commit de81021ba (#4930)
Use cast to be compatible with "public" structure definition.
2022-12-06 00:53:53 +01:00
Katayama Hirofumi MZ
599ba9cefb [BOOTDATA][INF] Add Japanese (ja-JP) translation to timezone
CORE-18706
2022-12-05 11:29:02 +09:00
Egor Ananyin
71123b72fa [DESK] Fix screensaver preview after calling its settings (#4921)
Fix a bug when after closing the settings window for a screensaver,
the preview for it wouldn't restart.

- Keep waiting for messages from the settings window while it's open
- Fix leaking two handles to avoid creating zombie processes

CORE-18680
2022-12-04 18:04:23 +03:00
Thamatip Chitpong
cae51e8f77 [MMSYS] Prevent the same sound from being added multiple times (#4898)
Check if the list already contains the sound.
2022-12-04 17:12:36 +03:00
Katayama Hirofumi MZ
11ee1fa88e [NTGDI][FREETYPE] Follow-up of #4920 (e316d61); Rename functions
Follow the naming policy.

- ftGdiGetRealGlyph --> IntGetRealGlyph
- ftGdiGlyphCacheGet --> IntFindGlyphCache
- ftGdiGlyphSet --> IntGetBitmapGlyphNoCache
- ftGdiGlyphCacheSet --> IntGetBitmapGlyphWithCache
- FtMatrixFromMx --> IntMatrixFromMx

CORE-11848
2022-12-04 22:11:46 +09:00
Katayama Hirofumi MZ
47f3a4e144 [OSK] Delete WS_EX_NOACTIVATE workaround code
CORE-18528
2022-12-04 10:15:56 +09:00
Katayama Hirofumi MZ
1fbed1710e [NTUSER] Fix SetActiveWindow return value
Apply set-active.patch. CORE-13257
2022-12-04 08:58:34 +09:00
Thamatip Chitpong
7c2b22c4de [SENDMAIL] Fix Send To -> Desktop (create shortcut) behavior (#4913)
Several fixes and improvements to the CDeskLinkDropHandler:
- Set default working directory for shortcuts (except folders and zip files)
- Copy existing shortcut to the desktop if the source file is a shortcut
- Prevent destination file name collision

Verified on Windows XP SP3 and Windows 7 SP1.
2022-12-03 20:06:45 +03:00
Thamatip Chitpong
feff2b1e6c [EXPLORER] Fix Windows XP compatibility (#4923)
CORE-18694
It regressed by 0.4.15-dev-4596-g 1aa95f3897
2022-12-03 16:00:22 +01:00
Katayama Hirofumi MZ
e316d61215 [NTGDI][FREETYPE] lfEscapement for TextOut (#4920)
Rotation and shearing transformation of font/text is now available. Retrial of PR #1207.
- Rename ftGdiGetTextWidth as IntGetTextDisposition and add a Y parameter.
- Apply lfEscapement values (by multiplying matrices).
- Add IntEngFillPolygon and IntEngFillBox helper functions.
CORE-11848
2022-12-03 13:03:28 +09:00
Timo Kreuzer
e7bbbf049e [NTOS] Fix double free on allocation failure in ObCreateObject 2022-12-01 20:17:40 +02:00
Timo Kreuzer
51a09e7358 [SPOOLSS] Fix prototype of BuildOtherNamesFromMachineName 2022-12-01 20:17:40 +02:00
Timo Kreuzer
561b71b644 [NTOS] Improve MmDeleteProcessAddressSpace 2022-12-01 20:17:40 +02:00
Timo Kreuzer
10fbefdeb0 [NTOS] Improve MmCleanProcessAddressSpace 2022-12-01 20:17:40 +02:00
Timo Kreuzer
9fc56bfc9d [WIN32K] Fix missing NULL check in IntCreateDIBitmap 2022-12-01 20:17:40 +02:00
Timo Kreuzer
b89a4eed72 [NTOS:EX] Initialize ExpTimeRefreshLock 2022-12-01 20:17:40 +02:00
Timo Kreuzer
eb502bbc10 [KERNEL32] Fix a bug in GetVolumeNameForRoot 2022-12-01 20:17:40 +02:00
Timo Kreuzer
866918c785 [WS2_32_APITEST] Fix uninitialized variable 2022-12-01 20:17:40 +02:00
Timo Kreuzer
f71940efb1 [CRT_APITEST] Restore direction flag to avoid false RTC break
With set direction flag the variables will not be initialized properly.
2022-12-01 20:17:40 +02:00
Timo Kreuzer
dacbc603b6 [CRT] Add simplistic fallback implementation of sincos to make GCC 11 happy 2022-12-01 15:21:59 +02:00
Timo Kreuzer
28c41b7d22 [CRT] Replace amd64 math functions/stubs with libm 2022-12-01 15:21:59 +02:00
Timo Kreuzer
20e6e17070 [FREELDR] Add stubs for pow and log to avoid pulling in the data from CRT (maybe fix printf functions instead?) 2022-12-01 15:21:59 +02:00
Timo Kreuzer
1ad4106b84 [CRT] Add basic version of handle_error 2022-12-01 15:21:59 +02:00
Timo Kreuzer
3d497ca883 [CRT] Improve _matherr handling 2022-12-01 15:21:59 +02:00
Timo Kreuzer
4d50f81419 [CRT] Implement _set_statfp 2022-12-01 15:21:59 +02:00
Timo Kreuzer
61cc62d1b2 [ASMPP] Implement asm preprocessor
This converts ML style assembly to GAS compatible syntax
2022-12-01 15:21:59 +02:00
Timo Kreuzer
7277e26944 [LIBM] Fix ldexp.c / ldexpf.c 2022-12-01 15:21:59 +02:00
Timo Kreuzer
4f348ee971 [LIBM] Add ldexp.c and ldexpf.c from aocl-libm-ose 2022-12-01 15:21:59 +02:00
Timo Kreuzer
105426b81a [LIBM] Fix up some asm files
This allows to compile them with GAS after translation
2022-12-01 15:21:59 +02:00
Timo Kreuzer
af6d3bb18f [LIBM] Convert tables from asm to C 2022-12-01 15:21:59 +02:00
Timo Kreuzer
9e8ed3f817 [LIBM] Fix build 2022-12-01 15:21:59 +02:00
Timo Kreuzer
4afb647c78 [LIBM] Import win-libm from AMD
Source: https://github.com/amd/win-libm
2022-12-01 15:21:59 +02:00
Timo Kreuzer
081c637c06 [XDK] Silence some GCC x64 warnings 2022-12-01 15:21:59 +02:00
Timo Kreuzer
06f1ac5fa4 [CRT] Add a workaround for CORE-18255 2022-12-01 15:21:59 +02:00
Katayama Hirofumi MZ
138eb58b95 [NTGDI][FREETYPE] lfWidth for GetTextMetrics and GetCharWidth (#4919)
- Add lfWidth member into FONTGDI structure.
- Delete IntWidthMatrix function.
- Fix IntRequestFontSize behavior for processing lfWidth value.
- Apply lfWidth in GetTextMetrics and GetCharWidth.
- Ignore the XFORM values in GetTextMetrics and GetCharWidth.
CORE-11848
2022-12-01 08:54:39 +09:00
Katayama Hirofumi MZ
4d0d22aee2 [NTGDI][FREETYPE] Add special structure for hashing (#4916)
Add FONT_CACHE_HASHED structure and use it.
CORE-11848
2022-11-29 19:41:09 +09:00
Mark Jansen
062a8f20a9 [RPCRT4] Sync msvc.S with WINE's inline assembly,
as suggested by Thomas

CORE-18505
2022-11-28 20:12:57 +01:00
Hermès Bélusca-Maïto
8398b28ae4 [PSDK] Fix x64 incompatibilities in ***Box_GetItemData(). Addendum to 6572dd7f4. 2022-11-28 15:02:39 +01:00
Katayama Hirofumi MZ
b85f0056a8 [NTGDI][FREETYPE] lfWidth for GetTextExtentPoint32 (#4912)
- Apply LOGFONT.lfWidth in TextIntGetTextExtentPoint function.
- Delete XFORM transformation in TextIntGetTextExtentPoint (to be simply ignored).
CORE-11848
2022-11-28 07:34:58 +09:00
Thomas Faber
991e2bd45b [LIBPNG] Update to version 1.6.39. CORE-18670 2022-11-27 10:10:53 -05:00
Thomas Faber
c5febe93f0 [LIBPNG] Update to version 1.6.38. CORE-18670 2022-11-27 10:10:51 -05:00
Jose Carlos Jesus
45c8e4dcd0 [NEWDEV][SHELL32][SYSSETUP] Improve browse driver folder dialog (#4293)
[NEWDEV] Enable OK button in "Browse For Folder" only when driver is found

Implement BrowseCallbackProc() function which sends BFFM_ENABLEOK message
to the browse dialog whether the driver is found in the selected folder.

Pass the search path to the browse dialog depending on the current index
of the drop down combobox. If the index is not set, just get window text.
Then, automatically expand the tree view to the specified path by sending
BFFM_SETSELECTION message.

Also fix a bug in SearchDriverRecursive() where a duplicate backslash
was added to the PathWithPattern string variable.

[SHELL32] Do not add Recycle Bin to the tree view items in FillTreeView()

[SYSSETUP] Add source path to the "Installation Sources" multi-string key

Each time the ProcessSetupInf() is being called, add the source path
to the "Installation Sources" registry key, if it's not added there yet.
The driver search path combobox will be then populated using its value.
2022-11-27 18:00:46 +03:00
Katayama Hirofumi MZ
015cd2596c [NTGDI][FREETYPE] Follow-up of #4901 (57702ed)
- Drop APIENTRYs for static functions.
- Use FIELD_OFFSET instead of offsetof.
- Delete unnecessary ASSERTs.
- Add annotations.
CORE-11848
2022-11-27 12:42:25 +09:00
Katayama Hirofumi MZ
57702ed401 [NTGDI][FREETYPE] Font cache: Use hash (#4901)
- Modify FONT_CACHE_ENTRY structure to use hash.
- Use hash in ftGdiGlyphCacheGet and ftGdiGlyphCacheSet functions.
- Reduce function call overheads by using FONT_CACHE_ENTRY, in getting glyph.
CORE-11848
2022-11-27 11:26:44 +09:00
Katayama Hirofumi MZ
430674022a [GDI32_APITEST] Strengthen TextTransform testcase (#4908)
- Simplify and refactor the tests.
- Add the tests for LOGFONT.lfWidth and LOGFONT.lfEscapement.
CORE-11848
2022-11-27 11:25:11 +09:00
Hermès Bélusca-Maïto
3c95c95369 [NDK] Fix description for PIO_APC_ROUTINE.
[RTL] Typo fix.
2022-11-26 02:38:52 +01:00
Hermès Bélusca-Maïto
5871716c64 [HALX86] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2022-11-25 03:15:01 .
Maintained by Albert Pool, Martin Mares, and other volunteers from the PCI ID Project.
2022-11-25 16:17:10 +01:00
Thomas Faber
c0027d117c [LIBXML2] Update to version 2.10.3. CORE-17766 2022-11-25 09:30:40 -05:00
Thomas Faber
19da1718e5 [LIBXSLT] Update to version 1.1.37. CORE-17766 2022-11-25 09:30:40 -05:00
Thomas Faber
1dbad942d8 [LIBXML2] Update to version 2.10.2. CORE-17766 2022-11-25 09:30:39 -05:00
Thomas Faber
0d5a4166a4 [LIBXML2] Update to version 2.10.1. CORE-17766 2022-11-25 09:30:36 -05:00
Katayama Hirofumi MZ
3f3714bad4 [NTGDI][FREETYPE] Font cache: Use FT_Matrix instead of MATRIX (#4900)
- Use FT_Matrix instead of MATRIX in FONT_CACHE_ENTRY structure.
- Use FtMatrixFromMx and FT_Set_Transform instead of FtSetCoordinateTransform.
CORE-11848
2022-11-25 11:23:29 +09:00
Timo Kreuzer
9658c6a220 [NTOSKRNL] Print boot cycles on x64 just like on x86 2022-11-24 21:17:58 +02:00
Timo Kreuzer
225e0c89d9 [NTOS] Fix a bug in KiPrepareUserDebugData 2022-11-24 21:17:58 +02:00
Timo Kreuzer
e923912f94 [NTOS] Fix unwinding through KiThreadStartup 2022-11-24 21:17:58 +02:00
Timo Kreuzer
66aa25b1cd [RTL] Implement RtlUnwind 2022-11-24 21:17:58 +02:00
Timo Kreuzer
8d3bc7c572 [RTL] Set unwind flags in RtlUnwindEx 2022-11-24 21:17:58 +02:00
Timo Kreuzer
0c211b975f [RTL] Fixes for RtlpUnwindInternal 2022-11-24 21:17:58 +02:00
Timo Kreuzer
aade1ab01b [RTL] Fix RtlVirtualUnwind 2022-11-24 21:17:58 +02:00
Timo Kreuzer
90d2e12dfa [RTL] Fix RtlpCaptureNonVolatileContextPointers 2022-11-24 21:17:58 +02:00
Timo Kreuzer
f4d4b31c61 [RTL] Implement x64 version of RtlInterlockedPushListSList 2022-11-24 21:17:58 +02:00
Timo Kreuzer
20a6cff4dd [CRT] Implement _InterlockedCompareExchange128 intrinsic for GCC 2022-11-24 21:17:58 +02:00
Timo Kreuzer
3381bf39db [HAL/x64] Fix x86BiosCall
Use an INT call stub and exit on the address after the stub instead or using iret (some BIOS code uses int / iret internally). This fixes the messed up display when trying to switch modes.
2022-11-24 21:17:58 +02:00
Timo Kreuzer
38fc6e1274 [OLEAUT32] Implement x64 call_method in asm
This is based on the inline implementation for GCC.
2022-11-24 21:17:58 +02:00
Timo Kreuzer
a007f5e490 [NTOS] Fix NtContinue for x64 2022-11-24 21:17:58 +02:00
Timo Kreuzer
6744368755 [NTDLL_APITEST] Implement NtContinue test for x64 2022-11-24 21:17:58 +02:00
Hermès Bélusca-Maïto
f7024d6c72 [PSDK][NTOS:KD64] Turns out, that even Clang in MSVC mode needs the 64-bits pointer extension hack!
Addendum to commit de81021ba.
Otherwise, we get the following build error:

 \ntoskrnl\kd64\kddata.c(532,5): error: initializer element is not a compile-time constant
      PtrToUL64(RtlpBreakWithStatusInstruction),
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 \ntoskrnl\kd64\kddata.c(526,26): note: expanded from macro 'PtrToUL64'
 #define PtrToUL64(x)    ((ULPTR64)(x))
                          ^~~~~~~~~~~~
2022-11-24 13:30:43 +01:00
Katayama Hirofumi MZ
375b02f337 [NTGDI][FREETYPE] Simplify IntRequestFontSize and FONTGDI
FONTGDI.lfWidth and FONTGDI.EmHeight are not used.
Simplify code without setting these members.
CORE-11848
2022-11-24 14:18:20 +09:00
Katayama Hirofumi MZ
476f94c0fe [NTGDI][FREETYPE] Formatting code; Follow up #4865 (a620c6f)
CORE-11848
2022-11-24 12:28:10 +09:00
Thomas Faber
911153da10 [LIBXML2] Update to version 2.10.0. CORE-17766 2022-11-23 22:02:47 -05:00
Thomas Faber
608bbe1136 [MSXML3][MSXML3_WINETEST] Partial sync to Wine to enable libxml2 update. CORE-17766
xml2: Import upstream release 2.10.0.

wine commit id 015491ab32742ace5218d37b1149c58803858214 by Alexandre Julliard <julliard@winehq.org>

Note: Upstream msxml3_test has switched away from WINE_NO_LONG_TYPES, so
I've kept the old printf format specifiers for now. Once we do a full
sync, we can get rid of __ROS_LONG64__ for this test and use them
unmodified.
2022-11-23 22:02:47 -05:00
Thomas Faber
21ab4d93c7 [LIBXSLT] Update to version 1.1.36. CORE-17766
This version was released after libxml2 2.10.0, but it removes
usage of some now-deprecated functions that would break the build.
2022-11-23 22:02:43 -05:00
Katayama Hirofumi MZ
a620c6f82e [NTGDI][FREETYPE] Simplify font rendering (#4865)
- Add ftGdiGetRealGlyph and ftGdiGetTextWidth helper functions.
- Optimize font rendering.
CORE-11848
2022-11-24 11:51:04 +09:00
Hermès Bélusca-Maïto
968b264300 [NTOS:KD] Rename the private acquire/release lock functions to fix GCC compilation.
If you ask why there are two sets of functions that do the same, it's
because this file (and the kdmain.c) will very soon some day be moved to
a transport dll, outside the kernel, and it will need these functions.
2022-11-24 01:44:14 +01:00
Hermès Bélusca-Maïto
ffb05406e6 [NTOS:KD64] Implement KdLogDbgPrint() for the WinDbg !dbgprint command.
See this command's documentation:
https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/-dbgprint
and the section "DbgPrint buffer and the debugger"
https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/reading-and-filtering-debugging-messages#dbgprint-buffer-and-the-debugger
for more details.

- Loosely implement the function, based on our existing circular printout
  buffers in kdio.c.
- Enable its usage in the KdpPrint() and KdpPrompt() functions.

Notice that this function will *only* capture the strings being sent **to**
the debugger, and not the strings the debugger itself produce. (This means
that we cannot use the KdPrintCircularBuffer as a replacement for our
KDBG dmesg one, for example...)

How to test:
Run ReactOS under WinDbg, and use the !dbgprint command to view the
buffer. You can also use the Memory Window, place yourself at the
address pointed by KdPrintCircularBuffer and KdPrintWritePointer, and
read its contents.

What you should observe:
Prior notice: The circular buffer in debug builds of ReactOS and Windows
is 0x8000 bytes large. In release builds, its size is down to 0x1000.
1- When you start e.g. the 2nd-stage GUI installation of ReactOS, going
   past the initial "devices installation" and letting it stabilize on
   the Welcome page, break into WinDbg and run the !dbgprint command. You
   should notice that the end of its output is weirdly truncated, compared
   to what has been actually emitted to the debug output. Comparing this
   with the actual contents of the circular buffer (via Memory Window),
   shows that the buffer contents is actually correct.
2- Copy all the text that has been output by the !dbgprint command and
   paste it in an editor; count the number of all characters appearing +
   newlines (only CR or LF), and observe that this number is "mysteriously"
   equal to 16384 == 0x4000.
3- Continue running ReactOS installation for a little while, breaking back
   back into WinDbg and looking at !dbgprint again. Its output seems to be
   still stopping at the same place as before (but the actual buffer memory
   contents shows otherwise). Continue running ROS installation, and break
   into the debugger when ROS is about to restart. You should now observe
   that the dbgprint buffer rolled over:
     dd nt!KdPrintRolloverCount shows 1.
   Carefully analysing the output of !dbgprint, however, you will notice
   that it looks a bit garbage-y: the first part of the output is actually
   truncated after 16384 characters, then you get a second part of the
   buffer showing what ReactOS was printing while shutting down. Then
   you get again what was shown at the top of the !dbgprint output.
   (Of course, comparing with the actual contents of the circular buffer
   in memory shows that its contents are fine...)

The reason of these strange observations, is because there is an intrinsic
bug in the !dbgprint command implementation (in kdexts.dll). Essentially,
it displays the contents of the circular buffer in two single dprintf()
calls: one for the "older" (bottom) part of the buffer:
  [WritePointer, EndOfBuffer]
and one for the "newer" (upper) part of the buffer:
  [CircularBuffer, WritePointer[ .
The first aspect of the bug (causing observation 3), is that those two
parts are not necessarily NULL-terminated strings (especially after
rollover), so for example, displaying the upper part of the buffer, will
potentially also display part of the buffer's bottom part.
The second aspect of the bug (explaining observations 1 and 2), is due
to the implementation of the dprintf() function (callback in dbgenv.dll).
There, it uses a fixed-sized buffer of size 0x4000 == 16384 characters.
Since the output of the circular buffer is not done by little chunks,
but by the two large parts, if any of those are larger than 0x4000 they
get truncated on display.
(This last observation is confirmed in a completely different context by
https://community.osr.com/discussion/112439/dprintf-s-max-string-length .)
2022-11-24 01:18:18 +01:00
Hermès Bélusca-Maïto
36335d9cee [NTOS:KD64] Correctly initialize the KdPrint buffer data in KdDebuggerDataBlock so as to fix the WinDbg !dbgprint command.
Now, !dbgprint just shows an empty log (since we don't fill it), instead
of showing the following error:

  kd> !dbgprint
  Can't find DbgPrint buffer
2022-11-24 01:18:17 +01:00
Hermès Bélusca-Maïto
de81021bab [PSDK][NTOS:KD64] Rename GCC_ULONG64 to ULPTR64 to self-document the fact it stores a pointer as a 64-bit quantity.
But the underlying GCC stupidity is still there (15 years later).

However, enable it only in 32-bit GCC builds, not in 64-bits nor with MSVC.
See commit b9cd3f2d9 (r25845) for some details.

GCC is indeed still incapable of casting 32-bit pointers up to 64-bits,
when static-initializing arrays (**outside** a function) without emitting
the error:

  "error: initializer element is not constant"

(which might somehow indicate it actually tries to generate executable
code for casting the pointers, instead of doing it at compile-time).

Going down the rabbit hole, other stupidities show up:

Our PVOID64 type and the related POINTER_64 (in 32-bit archs), or the
PVOID32 and POINTER_32 (in 64-bit archs), are all silently broken in
GCC builds, because the pointer size attributes __ptr64 and __ptr32,
which are originally MSVC-specific, are defined to nothing in _mingw.h.
(And similarly for the __uptr and __sptr sign-extension attributes.)

Clang and other sane ompilers has since then implemented those (enabled
with -fms-extensions), but not GCC. The closest thing that could exist
for GCC is to do:

  #define __ptr64 __attribute__((mode(DI)))

in order to get a 64-bit-sized pointer type with

  typedef void* __ptr64 PVOID64;

but even this does not work, with the error:

  "error: invalid pointer mode 'DI'"
2022-11-24 01:18:16 +01:00
Hermès Bélusca-Maïto
1c0950b557 [PSDK][NTOS:KD64] Update the KDDEBUGGER_DATA64 structure with new fields.
Information from the Windows 10 SDK and from
https://github.com/DarthTon/Blackbone/blob/master/src/BlackBoneDrv/NativeStructs.h
2022-11-24 01:18:15 +01:00
Hermès Bélusca-Maïto
1847474aaa [PSDK] Clarify the FIXME comment about this mysterious warning.h (here for WDK compatibility). 2022-11-24 01:18:11 +01:00
Marcin Jabłoński
edb7575faa [NTOS:KE/x64] Implement KeDisconnectInterrupt() for amd64 (#4883)
Choose the correct element of the KiUnexpectedRange array,
depending on the interrupt vector, the same way as here:
a2c6af0da4/ntoskrnl/ke/amd64/except.c (L77)

And guard KeConnectInterrupt() execution with dispatcher lock.

CORE-14922
2022-11-22 23:52:18 +03:00
Hermès Bélusca-Maïto
d15f126143 [NTOS:KDBG] Fix the ANSI escape sequences used to get terminal characteristics when printing with paging.
- Line-wrapping is enabled with 'ESC[?7h' (the '?' was forgotten).
  Notice that the following reference also shows it wrong:
  https://www.cse.psu.edu/~kxc104/class/cse472/09s/hw/hw7/vt100ansi.htm

- Terminal type is actually queried with 'ESC Z' (VT52-compatible), or
  with 'ESC[c' (VT100-compatible). The antediluvian CTRL-E ('\x05')
  control code gives instead a user-configurable (usually empty) string,
  so it's not reliable.
  Also, we don't really care about the returned result, we just need to
  know that one has been sent.

Cross-checked with online documentation:
* "Digital VT100 User Guide" (EK-VT100-UG-001) (1st edition, August 1978,
  reviewed November 1978).
* https://www.real-world-systems.com/docs/ANSIcode.html
* https://geoffg.net/Downloads/Terminal/TerminalEscapeCodes.pdf
* https://invisible-island.net/xterm/ctlseqs/ctlseqs.html
* https://en.wikipedia.org/wiki/Enquiry_character

- Retrieve the size of the *controlling terminal* with escape sequences
  only when it's a serial one: serial output is enabled *and* KDSERIAL
  is set (i.e. user input through serial). See code for the actual logic
  (the corresponding truth table is left as an exercise for the reader).

- Fix also a "Buffer" vs. "InBuffer" mismatch, that caused the whole
  code to fail.

- For fallback terminal size values, use meaningful ones when SCREEN
  is instead the controlling "terminal" (based on full-size BOOTVID
  values).

- When echoing read characters during line-cooking, do direct output by
  using KdpDprintf() instead of going through the heavy KdbpPrint() function.
  This fixes some input artifacts like: 1. extra slowdowns due to
  querying terminal size at each keypress, and 2. getting obnoxious
  "--- Press q to abort ..." prompts in the middle of typing a long
  comamnd because you are at the very bottom of the screen.
2022-11-22 02:10:55 +01:00
Hermès Bélusca-Maïto
c29d6806b8 [NTOS:KD] Remove last remnant of KdpDetectConflicts, deprecated since 2007.
Addendum to commit be2645ad8 (r25987).
2022-11-22 02:10:54 +01:00
Hermès Bélusca-Maïto
9337ea6a3c [NTOS:KDBG] Deduplicate code between KdbpPrint() and KdbpPager(). 2022-11-22 02:10:54 +01:00
Thomas Faber
8940614a78 [LIBXML2] Update to version 2.9.14. CORE-17766 2022-11-21 19:46:12 -05:00
Thomas Faber
7244e0c5c6 [LIBXML2] Update to version 2.9.13. CORE-17766 2022-11-21 19:46:12 -05:00
Thomas Faber
df1adce32c [LIBXML2] Fix forgotten config.h update. CORE-17766 2022-11-21 19:46:11 -05:00
Thomas Faber
f7671c1be8 [LIBXSLT] Update to version 1.1.35. CORE-17766 2022-11-21 19:46:11 -05:00
Thomas Faber
e524b1bcf6 [LIBXSLT] Improve sync with upstream. CORE-17766
Makefile.am: this hasn't been updated in a while
security.c: WIN32 -> _WIN32 to keep the ROS-diff consistent with the rest
win32config.h/libxslt.h: remove unnecessary ROS-diff
xsltwin32config.h: this was missed in the 1.1.34 sync
xsltexports.h: mark a ROS-diff as such
2022-11-21 19:46:08 -05:00
Zebediah Figura
dee3e6e7cd [WINESYNC][WORDPAD] paint_ruler(): Use GetSysColorBrush()
Import wine-4.7 commit:
dcd9376ae7

Follow-up to 0.4.15-dev-5248-g be014129a5.
2022-11-21 23:08:27 +03:00
Zebediah Figura
0828e16462 [WINESYNC][USER32] MDI_AugmentFrameMenu(): Use GetSysColorBrush()
Import applicable part of wine-4.7 commit:
8d251a1dd1

Follow-up to 0.4.15-dev-5248-g be014129a5.
2022-11-21 23:08:09 +03:00
Thomas Faber
79b0fce5dc [NTOS:CM] Consistently use synchronous I/O for registry hives.
Our current CmpFileRead/CmpFileWrite do not wait for completion,
so will cause stack corruption if used on files opened in async
mode.
2022-11-20 16:02:39 -05:00
Jose Carlos Jesus
dfb7e2d639 [TRANSLATION] Improve Portuguese (pt-PT) translation (#4886)
- [APPWIZ] Improve pt-PT translation
- [INPUT] Update pt-PT translation
- [INTL] Fix typos in pt-PT translation
- [LICCPA] Improve pt-PT translation
- [SYSDM] Update and improve pt-PT translation
- [NTOBJSHEX] Update pt-PT translation
- [ZIPFLDR] Update and improve pt-PT translation
2022-11-20 23:20:11 +03:00
Jose Carlos Jesus
685728bc24 [SHELL32] Prevent a second call to Drive Properties dialog (#4888)
CDefaultContextMenu::DoProperties provides a fallback call
to the property sheet testing the return value of the _DoCallback method,
which is ultimately the return value of SH_ShowDriveProperties().

SH_ShowDriveProperties() sometimes returns an HRESULT, however it is marked
as returning a BOOL. Then, DrivesContextMenuCallback() always handles this
result as an HRESULT.

Fix SH_ShowDriveProperties() to always return a BOOL as it is intended,
and in DrivesContextMenuCallback() handle the result accordingly.

CORE-18537
2022-11-20 21:10:11 +03:00
Jose Carlos Jesus
c093d4f803 [TASKMGR] Prevent context menu on idle process (#4889)
In Win2K3, there is no context menu on the System Idle Process.

CORE-18640
2022-11-20 20:22:30 +03:00
Thamatip Chitpong
f125cd1c71 [SYSDM] System Parameters: Close dialog on ESC (#4891)
CORE-18610
2022-11-19 20:08:04 +03:00
Katayama Hirofumi MZ
f908d37bb3 [REGEDIT] F4, Alt+D, Tab, and Shift+Tab (#4885)
CORE-12323
2022-11-19 08:42:20 +09:00
Hermès Bélusca-Maïto
ffe3109d37 [NTOS:KD] Handle work-buffer allocation failure in KdpDebugLogInit. It can be ignored in KdpScreenInit. 2022-11-18 18:48:46 +01:00
Hermès Bélusca-Maïto
271b985981 [NTOS:KD] Cleanup of some old code.
- Remove KdbInit() macro and directly use KdbpCliInit() (since the place
  where it was used was already within an #ifdef KDBG block).

- Declare KdpKdbgInit() only when KDBG is defined, move its definition
  into kdio.c and remove the legacy wrappers/kdbg.c file.
  And in KdbInitialize(), set KdpInitRoutine directly to the former,
  instead of using the KdpKdbgInit indirection.

- Don't reset KdComPortInUse in KdpDebugLogInit().

- Minor refactorings: KdpSerialDebugPrint -> KdpSerialPrint and make it
  static; argument name "Message" -> "String", "StringLength" -> "Length".
2022-11-18 18:11:30 +01:00
Hermès Bélusca-Maïto
98e585364b [NTOS:KD] Annotate KdInitSystem and remove redundant declaration in kd.h 2022-11-18 18:11:29 +01:00
Hermès Bélusca-Maïto
4a93b0a463 [NTOS:IO] Show the captured/generated driver name in one failure path of IoCreateDriver. 2022-11-18 18:11:28 +01:00
Hermès Bélusca-Maïto
56be4eafd5 [NTOS:IO][NDK] Add the exported IoDeleteDriver to the NDK headers. 2022-11-18 18:11:26 +01:00
Joachim Henze
9c5bb096bc [COMCTL32] Remove a rosdiff TOOLBAR_EraseBackground() (#4887)
This fixes the toolbar in FileZilla 3.8 being drawn wrong (grey)
It regressed by 0.4.15-dev-1603-g 232c45fcd7

And todays fix is a partial revert of that guilty rev.
The reverted part is not even necessarily needed for what we had in mind back then,
It was just a first tiny step with the aim to get rid of the comctl32.h changes of that commit.
But that goal was and even is far out of reach for many other reasons also.
Actually we should have reverted the toolbar.c change back then already,
before committing the "flipfix9".

CORE-18263
2022-11-18 12:42:32 +01:00
Katayama Hirofumi MZ
7cc89e520c [NTUSER] Implement IntCheckImeShowStatusInThread
CORE-11700
2022-11-17 10:27:12 +09:00
Joachim Henze
bcb9abc133 [SYSDM][SMSS] Addendum to (#4843) (#4844) CORE-18574
[SYSDM] Prevent my german-teacher from getting a heart-attack by that misplaced comma.

[SMSS] Prevent myself from getting a heart-attack by that superfluous dot.

Furthermore this addendum serves the purpose of actually linking both PRs
and their 4 previous commits to the actual JIRA ticket CORE-18754, which wasn't
the case before:
0.4.15-dev-5392-g 04b2d35f5b
0.4.15-dev-5391-g a8e06d92e8

0.4.15-dev-5390-g a4274ad548
0.4.15-dev-5389-g 5dc43c0f32
2022-11-16 23:08:52 +01:00
Serge Gautherie
770b3a3ce5 [HHPCOMP:CHMC] chmc_crunch_lzx(): Disable a dead check (#4880)
CORE-18642
2022-11-16 22:19:52 +01:00
Hermès Bélusca-Maïto
04b2d35f5b [SYSDM] Improvements for the Paging File settings dialog. (#4844)
- Implement the architecture-specific pagefile size limits.
  In particular, verify that the selected volume on which to create
  the page file can accomodate the theoretical maximum limit (e.g.
  FAT32 cannot accomodate a 16 TB pagefile on x64, and the limit must
  be lowered down to 4 GB).

- Change the IDS_WARNINITIALRANGE and IDS_WARNMAXIMUMRANGE strings
  so that the maximum limit mentioned is the dynamic one.

- Review, improve and fix other aspects of the code.

Parts of this PR: addendum to commits 4d2d2dbb2 (#2597), 3bee3b92a (#2706).
2022-11-16 21:55:23 +01:00
Hermès Bélusca-Maïto
a8e06d92e8 [SYSDM] Make ResourceMessageBox() support printf-like messages. (#4844)
+ Make usage of this new functionality.
+ Cleanup precomp.h.
2022-11-16 21:55:22 +01:00
Hermès Bélusca-Maïto
a4274ad548 [SMSS][NTOS:MM] Implement the architecture-specific pagefile size limits + code review. (#4843)
What we have:
- Maximum number of pagefiles: 16
- Minimum pagefile size: 256 pages (1 MB when page size = 4096 bytes)
- Maximum pagefile size:
  * 32-bit platforms: (1024 * 1024 - 1) pages (~ 4095 MB)
  * x86 with PAE support: same size as for AMD x64
  * x64 platform:  (4 * 1024 * 1024 * 1024 - 1) pages (~ 16 TB)
  * IA64 platform: (8 * 1024 * 1024 * 1024 - 1) pages (~ 32 TB)

Those are the values as supported and verified by the NT kernel.
Now,  user-mode programs (including SMSS.EXE)  have different opinions
on these, namely, they consider estimates directly in MB, respectively:
4095 MB, (16 * 1024 * 1024) MB, and (32 * 1024 * 1024) MB
(verified on Win2k3 and Win7 32 and 64 bits).
Also here, the minimum pagefile size is set to 2 MB.

Starting Windows 8+ (and 10), those values change slightly, and are
still not fully synchronized between NTOS:MM and SMSS. Finally, while
(x86 PAE and) AMD64 and ARM64 seem to share the maximum pagefile
size limit, 32-bit ARMv7 appears to use different limits than regular
x86 (2 GB instead of 4).

Please keep those values as they are for NT compatibility!

See the following references:
https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/mm/modwrite/create.htm
https://techcommunity.microsoft.com/t5/ask-the-performance-team/what-is-the-page-file-for-anyway/ba-p/372608
+ Manual extraction of the values from different NT 6.2,6.3,10 builds.

[SMSS] Fill out in particular the x86-specific case for PAE.

[NTOS:MM] Some cleanup in the NtCreatePagingFile() code, namely:
- Clarify some comments;
- Validate the lower and upper bounds of the Minimum and Maximum sizes
  (based on Windows behaviour as explained by Geoff + manual tests).
- Open the pagefile in case-insensitive;
- Simplify the loop that finds an existing matching pagefile;
- Simplify some failure exit paths;
- Add a "Missing validation steps TODO" comment block explaining the
  existing code-hole.
2022-11-16 21:54:31 +01:00
Hermès Bélusca-Maïto
5dc43c0f32 [SMSS] Improve some comments. 2022-11-16 21:54:21 +01:00
Hervé Poussineau
12ef61ba10 [WIN32SS:ENG] Set VGA device as child of primary device
That way, we don't have anymore the VGA device together with primary device in device list.

Change also EngpUnlinkGraphicsDevice() function to add back VGA device to device list
when removing its parent from device list.

CORE-18522
2022-11-15 23:16:10 +01:00
Hervé Poussineau
b3cdb7e713 [WIN32SS:ENG] Add EngpLinkGraphicsDevice, to add a device to gpGraphicsDeviceFirst list 2022-11-15 23:16:10 +01:00
Hervé Poussineau
3d01a103d7 [WIN32SS:ENG] Zero memory when allocating GRAPHICS_DEVICE structures 2022-11-15 23:16:10 +01:00
Hervé Poussineau
ea30b96334 [WIN32SS:ENG] When VGA mode is requested, drop all graphic devices except VGA one
We don't need driver cooperation anymore to handle VGA mode request.
2022-11-15 23:15:26 +01:00
Hervé Poussineau
0ecd997bdf [WIN32SS:NTUSER] Extract InitVideo() prototype and gbBaseVideo variable to header 2022-11-15 23:15:26 +01:00
Hervé Poussineau
79f16507c4 [VGAMP/VGADDI] Be consistent in IOCTL_VIDEO_GET_CURRENT_MODE and IOCTL_VIDEO_SET_CURRENT_MODE
As IOCTL_VIDEO_GET_CURRENT_MODE returns 2 as ModeIndex, wait for the same value
in IOCTL_VIDEO_SET_CURRENT_MODE.
Also change vgaddi to send this hardcoded value.

vga_new also uses 2 as index for 640x480x16
2022-11-15 23:15:26 +01:00
Katayama Hirofumi MZ
a2c6af0da4 [BOOTDATA][NTUSER] Add UserIsIMMEnabled and use it (#4882)
This PR enables SRVINFO_IMM32 also for non-CJK. You can disable this flag by setting zero to the LoadIMM registry value if you're non-CJK.
CORE-11700
2022-11-15 17:10:06 +09:00
Serge Gautherie
ba1ed89f91 [HALX86] HalpQueryInterface(): Debug log InterfaceType param (#4772)
This should help to find out which GUIDs are actually wanted.
Based on CircularTriangle06's patch.

CORE-11632
2022-11-15 02:04:04 +03:00
Serge Gautherie
5efb6e3d97 [NTFS] NtfsCreateFCB(): Check allocation result (#4795) 2022-11-15 01:28:33 +03:00
Stanislav Motylkov
a09e903398 [SHELL32] CDrivesFolder: Unhardcode pqcminfo->idCmdFirst value
DFM_MERGECONTEXTMENU handler works better now. However there is difference
between ours and Windows' menu building systems, which has to be fixed.

Addendum to 64657051c3. CORE-13841 CORE-18577
2022-11-14 21:56:01 +03:00
Katayama Hirofumi MZ
2628309baf [IMM32_APITEST] Follow-up of #4876 (7355810)
CORE-11700
2022-11-14 22:02:17 +09:00
Katayama Hirofumi MZ
73558102e7 [IMM32_APITEST] Add ImmEnumInputContext testcase (#4876)
Verify the IMM implementation. CORE-11700
2022-11-14 18:01:42 +09:00
Hermès Bélusca-Maïto
2dddbd5c54 [SMSS] Fix three SmpLoadSubSystem bugs related to the SB_CREATE_SESSION callback.
This fixes starting the Windows 2000 POSIX subsystem in ReactOS.

- The CreateSession pointer was initialized against the SbApiMsg variable, but
  it was the other SbApiMsg2 that was being initialized and sent through LPC.

- Do not overwrite the MuSessionId (Terminal Services session ID) variable with
  the generated environment subsystem session ID from SmpAllocateSessionId().

- Actually initialize the SbApiMsg ApiNumber for the CreateSession LPC call.

(dll\win32\kernel32\client\proc.c:3690) Retrying with: POSIX /P C:\ReactOS\system32\posix\ls.exe /C ls
Breakpoint 1 hit
csrsrv!CsrSbApiRequestThread+0x64:
001b:1000ac34 837dfc00        cmp     dword ptr [ebp-4],0
kd> ??ReceiveMsg
struct _SB_API_MSG
   +0x000 h                : _PORT_MESSAGE
   +0x018 ConnectionInfo   : _SB_CONNECTION_INFO
   +0x018 ApiNumber        : 0xcccccccc (No matching name)
   +0x01c ReturnValue      : 0n0
   +0x020 u                : <unnamed-tag>
kd> p
...
(base\system\smss\smsubsys.c:393) SMSS: SmpLoadSubSystem - NtRequestWaitReplyPort Failed with  Status c0000002 for sessionid 2
...
<Retrying>
...
(base\system\smss\smsubsys.c:393) SMSS: SmpLoadSubSystem - NtRequestWaitReplyPort Failed with  Status c0000002 for sessionid 3

All those bugs could have been avoided *IF*, rather than (badly) duplicating
its code, the existing SmpSbCreateSession() function had been used instead.

- "Not sure these field mean what I think they do -- but clear them" ... ◔_◔
  Those fields are related to the debug client interface (DbgUi) and session
  in case the subsystem being started is going to be debugged. These have
  nothing to do with the MuSessionId. Clarify this in the SB_CREATE_SESSION_MSG
  structure and in the SmpSbCreateSession() function.
2022-11-14 00:10:35 +01:00
Hermès Bélusca-Maïto
f43ce46566 [SMSS] Improve comments/code/some DPRINTs. Reorganize smss.h header. 2022-11-14 00:10:35 +01:00
Hermès Bélusca-Maïto
06a0451415 [SMSS][CSRSRV] Undefine CreateProcess symbol. Name the union inside SB_API_MSG.
Undefine CreateProcess because it can be #define'd (to CreateProcessA/W)
if winbase.h is included prior (as it is in SMSS).
2022-11-14 00:10:32 +01:00
Hermès Bélusca-Maïto
9c8a8cf2aa [CSRSRV][NTOS:PS] Misc typos fixes. 2022-11-14 00:10:30 +01:00
Joachim Henze
1dd9d2ef37 [NTUSER][USER32] Classic Theme: disabled "checked" checkboxes should be grey (#4874)
Classic Theme: disabled "checked" checkboxes should be grey CORE-18609
and not black, like they erroneously were.
This patch does not seem to have any impact on how they are rendered
for themed ros.

Ftr: We experimented also with COLOR_GRAYTEXT instead of COLOR_BTNSHADOW
but that did result in incorrect drawing of disabled "checked" checkboxes for
the 'High Contrast' Color Schemes.
2022-11-14 00:01:29 +01:00
Joachim Henze
45e79c3f23 [MSPAINT] Update de-DE.rc CORE-12356
An addendum to 0.4.14-dev-843-g	15bc263b07
2022-11-13 22:41:05 +01:00
Katayama Hirofumi MZ
3d298831db [IMM32] Get gHighestUserAddress in ImmInitializeGlobals
CORE-11700
2022-11-13 20:04:34 +09:00
Stanislav Motylkov
51f78918da [USER32] Rewrite CharPrev(Ex)A functions and fix tests (#4860)
Fixes 48 failing tests of user32:CharFuncs.
Only 12 minor failing tests are left!

Thanks to Simone Mario Lombardo for the problem analysis!

CORE-18415 CORE-18452
2022-11-13 13:22:26 +03:00
Katayama Hirofumi MZ
6b53f6d824 [USER32] Follow-up of e1f8b32; Delete unnecessary empty line
CORE-11700
2022-11-13 11:50:54 +09:00
Katayama Hirofumi MZ
e1f8b32c3d [INCLUDE][USER32] Add WM_FINALDESTROY and improve ImeWndProcA/W
CORE-11700
2022-11-13 09:59:17 +09:00
Katayama Hirofumi MZ
c7e8b544bc [USER32] Fix ImeWndProc_common comment
CORE-11700
2022-11-13 08:49:38 +09:00
Hermès Bélusca-Maïto
9bb5627df6 [SETUP][INF] Use the standard "Helv" -> "MS Sans Serif" substitution... (#4864)
... and let the latter one substitute to whatever we want.
Hindi however had "Helv" -> "Tahoma", but "MS Sans Serif" -> "FreeSans".
Now its "Helv" will go to "FreeSans".
2022-11-13 00:26:13 +01:00
Hermès Bélusca-Maïto
34c0bd0d5a [SETUP] muifonts.h Formatting only. 2022-11-13 00:25:53 +01:00
Marcin Jabłoński
6a3a79bb72 [DISKPART] Fix help for multi-word command crashing. (#4873)
* [DISKPART] Fix help for multi-word command crashing.

When the HELP command is executed for a multi-word command,
for example "HELP CREATE PARTITION PRIMARY", diskpart crashes.
This happens because before the desired form of the command
is encountered, its single word form is found - since the first word
of the command matches the one HELP is looking for, it tries to
compare the second word of the input command with the second
(nonexistent) word of the encountered single word command,
which is NULL. This results in diskpart crashing.
The fix makes HELP check if the to-be-compared word is not NULL,
before calling wcsicmp.
2022-11-12 13:02:33 +01:00
Joachim Henze
c47758b102 [SETUP][INF][MEDIA] Get rid of the last Ubuntu references CORE-18607 (#4871)
An addendum to 0.4.14-dev-20-g 2f4fb903b4
because since then we don't have the Ubuntu font anymore.

The substitutes are also not needed any longer.
We can use Tahoma here without causing any change in the current rendering,
because for all languages the former
Ubuntu substitutions did point either to Tahoma,
or to the same thing, that Tahoma atm points to
(for those language that do require additional glyphs).

This way we do not only get the substitutions closer to 2k3sp2, but will also
simplify our maintenance and testing, because the same font is guaranteed to be used then
for all themes: Classic, Blackshade and Lautus: The font which has the needed glyphs for
that specific language.

E.g.
"FreeSans" for Hindi,
"Tahoma" for most Western languages, and
"Droid Sans Fallback" for Chinese and Japanese language.

Things are cleaner and simpler this way.
2022-11-12 12:44:54 +01:00
Katayama Hirofumi MZ
0bc6bd6480 [NTGDI][NTUSER][INCLUDE] Add 'See also:' comments for structures (#4872)
Add 'See also' URLs to some undocumented structures.
2022-11-12 20:27:50 +09:00
Katayama Hirofumi MZ
f73a4d6bab [IMM32] ImmDllInitialize's first argument is an HINSTANCE
CORE-11700
2022-11-12 20:25:29 +09:00
Joachim Henze
a33fe38418 [SHELL32] Show 'comment' column for folders, make it rightmost CORE-18615 (#4868)
In explorer filebrowser 'details' view
the column 'comments' had invalid length of zero, and therefore
was hidden under the 'attributes' column.

I guess even after this patch, it will not display any
sane contents in there yet.
Therefore I chose a small width of 10 only, to reduce the chance for
it to trigger an undesired horizontal scrollbar.

As far as I see we don't support manual showing and hiding of additional columns yet.
By default my Windows does not show this column. But when activated manually, it is always
shown on the right hand side of the 'attributes' column.
2022-11-11 18:25:50 +01:00
Hervé Poussineau
d117765e71 [BOCHSMP] Move related registry entries to bochsmp directory 2022-11-11 15:14:13 +01:00
Katayama Hirofumi MZ
11a71418d5 [SHELL32] Implement IsLFNDriveA/W and improve PathResolve (#4866)
- Fix IsLFNDriveA and IsLFNDriveW functions.
- Add IsRemovableDrive helper function.
- Fix PathQualifyExW by using IsLFNDriveW.
CORE-11335
2022-11-10 23:18:04 +09:00
Katayama Hirofumi MZ
40863aebc4 [NTUSER] Add 'Win:' comments around IntDefWindowProc 2022-11-10 15:59:52 +09:00
Katayama Hirofumi MZ
0484beb04b [NTUSER] Don't redraw scrollbar if it is hidden (#4849)
Fix redrawing bug on Command Prompt. CORE-18593
2022-11-10 13:12:20 +09:00
Piotr Hetnarowicz
3fc6d90c58 [SYSSETUP] Update Polish (pl-PL) translation (#4859)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-11-10 02:10:19 +03:00
Piotr Hetnarowicz
2a400b29c0 [INPUT] Update Polish (pl-PL) translation (#4858)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
2022-11-10 02:08:40 +03:00
Simone Mario Lombardo
6755921560 [DDRAW] Sync the fix for swap_interval from Wine (#4831)
Sync the barebone fix from Wine (wine-7.19-557-g13cc08e32d6):
https://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=grep&s=ddraw_surface_update_frontbuffer%28
and
13cc08e32d:/dlls/ddraw/surface.c

- Added "swap_interval" argument to ddraw_surface_update_frontbuffer()
- Added ddraw_swap_interval_from_flags() function for dispatching
  the integer type of required swap interval
- Updated ddraw_surface_update_frontbuffer() function for managing the
  swap interval between backbuffer and frontbuffer (and relative flipping)
- Updated the ddraw_surface7_Flip() function for relaying the swap interval
  to ddraw_surface_update_frontbuffer() function.
- Added 0 value (as Wine) when the swap interval is not required

This fixes empty white screen issue on rendering because of lacking
swap interval for the software / games that use ddraw.

CORE-18547
2022-11-09 20:44:30 +03:00
Hermès Bélusca-Maïto
f1908c8959 [SMSS] Fix build. 2022-11-09 00:05:13 +01:00
Hermès Bélusca-Maïto
b076800dd8 [SMSS] Fix the displayed subsystem name in the failure path of SmpSbCreateSession().
The SubSystemNames array didn't correlate with the possible values of
SubSystemType (e.g. index 4 was "Posix" whereas Posix is type 7; Posix
and OS/2 entries were inverted; Windows CUI subsystem (type 3) was
mapped to "Posix"), and the array dereferencing was out of bounds if the
SubSystemType of the image happened to be larger than 8.

I know (strings extraction from debug build of Windows' SMSS.EXE) that
they use that same old'n'broken array. Perhaps a leftover from very old
times (NT 3.1 betas) where the PE format was under work and the
subsystem numbers didn't have their definitive values... (This has
already happened with the NT PDK v1.196 from September 1991.)
2022-11-08 23:47:02 +01:00
Hermès Bélusca-Maïto
bcbfcd2278 [CSRSRV] Minimally-adapt CSRSRV to make it able to host other subsystems than Win32.
This is really ReactOS-specific, so I surround them with __REACTOS__
(even if this is our code) to differentiate these from Win2k3 behaviour,
even though they were strongly inspired by what was possible in the beta
versions of NT 3.1 (pre-3.10.404).
Interestingly, Windows 7+ partially re-introduced that functionality
(just in differencing "Windows=On" from "Off").

See https://reactos.org/wiki/User:Hbelusca/CSRSS for more information.
2022-11-08 23:46:32 +01:00
George Bișoc
2fef8be892 [NTOS:SE] Dump security debug info in case no every right has been granted in SepAccessCheck
The "failed to grant access rights" message isn't enough to understand what kind of access rights haven't been granted and why. Dumping information of the captured security descriptor, the ACL and its ACEs with mask rights and token SIDs should be enough to understand the reason of the failure in question.
2022-11-08 18:24:37 +01:00
George Bișoc
e2ee126c23 [NTOS:SE] Add new ACE types for SepGetSidFromAce routine 2022-11-08 18:24:37 +01:00
George Bișoc
caa3571cd7 [NTOS:SE] Implement security debug facility routines
debug.c will serve as a centralized facility for security debugging routines and everything related to that. This file will be expanded with further debug functions for the Security subsystem if needed.
2022-11-08 18:24:37 +01:00
Hermès Bélusca-Maïto
9f48c69231 [SMLIB][SMSS] Implement SmLoadDeferedSubsystem() client and server-side. (#4821)
Loosely based on the deprecated ReactOS-specific SmExecuteProgram().
On server-side, we lookup into the list of deferred subsystems that
has been initialized at init time.

Dedicated to Justin Miller (The_DarkFire) work on reviving the
POSIX subsystem!
2022-11-08 17:41:02 +01:00
Hermès Bélusca-Maïto
8fea507d9b [SMSS] Logically group the LIST_ENTRY-ies. 2022-11-08 17:41:01 +01:00
Hermès Bélusca-Maïto
0e14378d3e [SMDLL][SMLIB] Deprecate the legacy ROS-specific SMDLL and improve SM client functions. (#4821)
This DLL was exporting legacy NT-incompatible or ROS-specific SM client
functions, that have been since 10 years now (2012) replaced by the new
NT-compatible SM:

- SmConnectApiPort(): was just SmConnectToSm().

- SmCompleteSession():
  The legacy SMSS used it for when a subsystem initialization was finished.
  Now (NT-compatible) this function is called by subsystems **only** when a
  subsystem session **terminates**: SmSessionComplete().

- SmExecuteProgram(): was just the client side of SmLoadDeferedSubSystem()
  (whose server side is not implemented yet). The legacy SM "old" SmExecPgm
  implementation actually was "SmLoadDeferedSubSystem"...

- SmLookupSubsystem(): is a utility-only function to read any registry value
  inside "Session Manager\SubSystems".

Move SMDLL's readme into SMLIB and update its contents.

Collect some residual useful functions into smutils.c (and moved in SMLIB,
though not compiled yet):
- SmExecuteProgram(), now implemented as a wrapper around SmExecPgm();
- SmLookupSubsystem(), described above;
- SmQueryInformation(), that retrieves a list of currently-running subsystems.

[SMLIB] Validate SbApiPortName's length in SmConnectToSm().
Fix CommandLine length validation in SmStartCsr().

Add documentation (+ SAL annotations) to the NT-compatible SMSS client functions.

smmsg.h: Add both Win32 and Win64 struct sizes C_ASSERTs for those whose size
change between these two processor architecture sizes.

[SMLIB] Introduce SmSendMsgToSm() as helper to send data into the SM LPC port.
+ Make the other API functions use it.

It should be observed that in Vista+, both functions SmConnectToSm() and this
new SmSendMsgToSm() are exported by NTDLL under the names RtlConnectToSm()
and RtlSendMsgToSm() (and use the same signature).
See: https://www.geoffchappell.com/studies/windows/win32/ntdll/history/names60.htm

[NTDLL] Correctly stub RtlConnectToSm() and RtlSendMsgToSm().
[NTDLL_VISTA] Link to SMLIB and simply export RtlConnectToSm() and RtlSendMsgToSm().
2022-11-08 17:40:53 +01:00
Katayama Hirofumi MZ
9f36a9d4a7 [NTGDI][FREETYPE] Optimize MatchFontNames (#4861)
Optimize MatchFontNames helper function for speed.
CORE-15554
2022-11-08 16:35:01 +09:00
Katayama Hirofumi MZ
467768f766 [NTGDI][FREETYPE] Reduce font size request (#4862)
- Delete some IntRequestFontSize function calls.
- Enable cache on font size requests.
- Add two members into FONTGDI structure, for font size cache.
CORE-15554
2022-11-08 16:31:10 +09:00
Katayama Hirofumi MZ
140aa11c36 [SHELL32] shlexec: Initial support of App Paths (#4850)
- Fix SHELL_TryAppPathW helper function by using SHRegQueryValueExW function.
- Fix SHRegQueryValueExA/W functions.
CORE-11335
2022-11-08 09:23:06 +09:00
Tony Lambregts
05d2935eed [USER32] Fix bug in CharPrevExA().
Import Wine commit wine-20050111-258-gffc17dbe0d0:
ffc17dbe0d

Fixes 20 failing tests of user32:CharFuncs.

CORE-18415 CORE-18452
2022-11-07 20:36:06 +03:00
Stanislav Motylkov
59f0ed43b9 [USER32] Coding style fixes only 2022-11-07 20:30:02 +03:00
Stanislav Motylkov
4b10fdbce9 [USER32_APITEST] Add tests for CharPrev/Next/Ex/A/W
CORE-18415 CORE-18452
2022-11-07 19:02:09 +03:00
Katayama Hirofumi MZ
bd40c13f6f [SETUP][BOOTDATA][FONTS][INF] Delete DejaVu Sans Mono and re-map (#4856)
- Delete "DejaVu Sans Mono" font files (DejaVuSansMono.ttf etc.).
- Re-map "Terminal" font substitute to "Lucida Console" except for HebrewFonts and UnicodeFonts.
- Re-map HebrewFonts "Terminal" font substitute to "Courier New".
- Re-map UnicodeFonts "Terminal" font substitute to "Courier New". And then, re-map UnicodeFonts "Courier" font substitute to "Courier New". Delete UnicodeFonts "Courier New" font substitute.
CORE-18605
2022-11-07 11:34:19 +09:00
Katayama Hirofumi MZ
a4193ade03 [SETUP][FONTS][INF][GDI32_APITEST] Delete FreeMono and re-map (#4852)
- Delete FreeMono fonts.
- Re-map "Courier" font substitutes to "Courier New" fonts.
CORE-18605
2022-11-07 08:04:38 +09:00
Tuur Martens
075ec50298 [DEVMGR] Fix wrong menu item hint (#4854)
Item hint for "Resources by connection" was incorrectly set to the hint for "Resources by type".

CORE-18608
2022-11-06 20:00:18 +03:00
Hermès Bélusca-Maïto
c48ca5b022 [SMSS] Fix some x64 warnings C4267 "conversion from 'size_t' to 'ULONG', possible loss of data" 2022-11-06 16:58:45 +01:00
Thomas Faber
f0dd1e7b57 [ACPICA] Update to version 20221020. CORE-17905 2022-11-06 08:33:29 -05:00
Thomas Faber
03b24380a7 [ACPICA] Update to version 20220331. CORE-17905 2022-11-06 08:33:29 -05:00
Thomas Faber
8129fee128 [ACPICA] Update to version 20211217. CORE-17905 2022-11-06 08:33:28 -05:00
Thomas Faber
9b247f6ae3 [ACPICA] Update to version 20210930. CORE-17905 2022-11-06 08:33:25 -05:00
Katayama Hirofumi MZ
7e9f1e67f3 [CHARMAP] Improve keyboard usability (#4839)
- Use IsDialogMessage function in message loop to enable Tab.
- Add WS_TABSTOP style to IDC_FONTCOMBO control.
- Set focus on create.
- Handle WM_KEYDOWN and WM_GETDLGCODE messages.
- Add UpdateCells, LimitCaretXY SetCaretXY, MoveUpDown, and MoveLeftRight helper functions.
- Delete DrawGrid, and DrawActiveCell functions for simplicity.
- Add and delete some members in MAP structure.
CORE-13806
2022-11-06 08:37:18 +09:00
Jeff Smith
c8ef276778 [COMDLG32] Set background to transparent for font dialog sample text
Import Wine commit wine-5.19-325-g4273004e65a:
4273004e65

CORE-18588
2022-11-05 02:42:13 +03:00
Mark Jansen
f89b406de6 [SDK] Fix missing comma in check_packing.py 2022-11-04 23:02:25 +01:00
Mark Jansen
2567a66399 [SHELL32] Fix CDefView UAF 2022-11-04 23:01:31 +01:00
Joachim Henze
d035452148 [SETUP][INF][ROSTESTS] Delete font substitutions and tests for "DejaVu Sans" (#4829)
I manually applied the final state of the reviewed (#4829) by hand.

The commit relies on (#4837) which added the Greek Tahoma glyphs, and the result now
does finally draw fine with unbold Tahoma also for the Greek ros installation.
See the final screenshot that I added today within (#4829).

Since 0.4.14-dev-6-g f45dd65 we do have a proper "Verdana" font,
so there is no need for substitution with "DejaVu Sans" any longer. That is the proper MS name for such a font.

And with 0.4.14-dev-20-g 2f4fb90 we even deleted the "DejaVu Sans" font,
so it makes no sense to keep it as a substitution target.

So adapt fonts.inf and muifonts.h, and also a test where it was still referenced.
MS 2k3sp2 does neither have such a font substitute, nor such a font.
2022-11-04 15:39:32 +01:00
Katayama Hirofumi MZ
94c8f271c9 [CPL:INTL] Use Japanese package for Far-East files (#4834)
Implement IDC_INST_FILES_FOR_ASIAN checkbox action. It will install/uninstall "ReactOS JPN Package" in Japanese ReactOS.
JIRA issue: CORE-12748
2022-11-04 21:48:07 +09:00
Katayama Hirofumi MZ
1a1a8a8303 [SHELL32][INCLUDE] Fix PathResolve for double-backslash (#4833)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>

Fix shell32!PathResolve and shell32!PathQualifyExW functions for double-backslash. However it doesn't fix CORE-15204.
CORE-18080, CORE-15204
2022-11-04 21:44:46 +09:00
Katayama Hirofumi MZ
2c4cb40d8e [SHELL32_APITEST] Workaround on wine_dbgstr_w bugs
Double wine_dbgstr_w calls makes output broken.
I used two buffers and kept the results of wine_dbgstr_w to do workaround.

CORE-18080
2022-11-04 19:58:10 +09:00
Katayama Hirofumi MZ
02d92979d9 [SHELL32_APITEST] Add dots tests to PathResolve testcase
CORE-18080
2022-11-04 11:37:01 +09:00
Hermès Bélusca-Maïto
e944dfa75f Remove '.html' from spdx.org license page URLs. (#4845) 2022-11-03 18:25:37 +01:00
Tuur Martens
be970d8d31 [EXPLORER] Implement "Undo Cascade/Tile" menu items (#4817)
Implement taskbar context menu items "Undo Cascade" and "Undo Tile".
Based on patch by KRosUser.

CORE-18383
2022-11-03 15:48:18 +03:00
Katayama Hirofumi MZ
9642031d2a [MEDIA:FONTS] Add Greek glyphs to tahoma.ttf (#4837)
- Copy Greek vector glyphs from DejaVu Sans font by using FontForge.
- Add Greek bitmap glyphs by hand with using FontForge.
- Add Greek charset on font info.
- Underline position is hacked because FontForge has a bug in saving Underline position.
CORE-14343
2022-11-03 14:05:57 +09:00
Hermès Bélusca-Maïto
258caa85d1 [SMSS] Call SmpConfigureEnvironment() twice in order to resolve forward environment variables references.
Example: environment variable EnvVar1 that refers to a later-defined
variable EnvVar2.
2022-11-03 02:55:51 +01:00
Hermès Bélusca-Maïto
4ac263c93a [NTOS][NTDLL][NDK] Nt/ZwCreatePagingFile: Fix parameter names + use SAL; fix NTDLL spec file. 2022-11-03 02:55:50 +01:00
Hermès Bélusca-Maïto
ab5fdac922 [NTOS] Add TAG_DACL in tag.h and use it. 2022-11-03 02:55:49 +01:00
Hermès Bélusca-Maïto
33e0a69dad [NTOS] tag.h formatting (align values on 4-space tab stops). 2022-11-03 02:55:48 +01:00
Hermès Bélusca-Maïto
25958a7c3d [KERNEL32] Spec file: GetCurrencyFormatW takes wide strings in parameters. 2022-11-03 02:50:23 +01:00
Hermès Bélusca-Maïto
671d7e4741 [RTL] RtlDefaultNpAcl(): Don't hardcode SidBuffer size, but deduce it through FIELD_OFFSETs. 2022-11-03 02:50:21 +01:00
Hermès Bélusca-Maïto
9f938ea3bb [KERNEL32] Reformat K32CreateDBMonMutex(). 2022-11-03 02:50:20 +01:00
Adam Stachowicz
75da7ad212 [DESK] Improve Polish (pl-PL) translation (#4840)
Fix typo, addendum to f1102742.
2022-11-03 03:40:12 +03:00
Stanislav Motylkov
5daf5cd057 [REGEDIT] Use shell icons for the tree view
- This makes regedit.exe smaller
- Reduces resource duplication in the source tree
- Potentially improves support for theming

CORE-10764
2022-11-03 02:58:05 +03:00
Stanislav Motylkov
ed7b0d0bd9 [REGEDIT] Use MessageBoxW instead of outputting to console
Our regedit is a Win32 GUI application, so do it properly.
Also fix STRING_USAGE linebreak sync problem.

Addendum to 36a7f0dc.
2022-11-03 00:24:16 +03:00
Robert Naumann
683d81b7db [REGEDIT] Readd ILC_COLOR32 to the Treeview icons
Fixes regression introduced in 36a7f0dc
2022-11-02 21:17:40 +01:00
Jérôme Gardou
2ae9feb59f [NTOS] Properly implement and use FsRtlAcquireFileForModWriteEx 2022-11-02 19:41:04 +01:00
Robert Naumann
36a7f0dc7c [REGEDIT] Partially sync Regedit to Wine-7.17 (#4717)
* [REGEDIT] Partially Sync to Wine 7.17

- regproc.c and regedit.c are now in sync.
- some other mostly depending fixes for the remaining files

* [REGEDIT_WINETEST] Sync to Wine-7.0
2022-11-02 19:02:14 +01:00
Jose Carlos Jesus
66030257b1 [TRANSLATION] Improve Portuguese (pt-PT) translation (#4830)
- [RAPPS] Improve pt-PT translation
- [SNDVOL32] Add pt-PT translation
- [TASKMGR] Improve pt-PT translation
- [DESK] Update pt-PT translation
- [MMSYS] Update pt-PT translation. Adjust object size to fit all text
- [ACPPAGE] Improve pt-PT translation
2022-11-02 19:52:21 +03:00
Piotr Hetnarowicz
f110274208 [DESK] Improve Polish (pl-PL) translation (#4826)
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-11-02 18:50:23 +03:00
Katayama Hirofumi MZ
802a87dfb2 [EXPLORER] Hide Start Menu before Run dialog (#4823)
- Add HideStartMenu helper method.
- Hide Start Menu before opening Run dialog.
CORE-13330
2022-11-02 11:29:08 +09:00
Mark Jansen
e3ac541360 [RTL] Use RtlApplicationVerifierStop for DPH 2022-11-01 21:26:05 +01:00
Mark Jansen
d82185f104 [SDK] Define CCoInit in shellutils 2022-11-01 21:24:14 +01:00
Ratin Gao
8083ef9ad7 [IPCONFIG] Localized datetime format (#4777)
IPconfig used a fixed format for time/date display (for DHCP lease), while it should respect local settings.
CORE-18396
2022-11-01 20:56:43 +01:00
Artyom Ovsyannikov
b1854d7cad [TRANSLATION] Minor Russian (ru-RU) translation fixes (#4835)
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-11-01 17:22:18 +03:00
Katayama Hirofumi MZ
a17664cec2 [SHELL32_APITEST] Consider more tests in PathResolve testcase
Consider:
- Double-backslash.
- Name with trailing backslash.
- Directory with trailing backslash.
- Non full path.
CORE-18080
2022-11-01 11:19:55 +09:00
Serge Gautherie
b5fcf9fe07 [PSDK] SECURITY_ATTRIBUTES: Remove size_is(nLength) (#4832)
nLength is the size of the struct itself, not a number of descriptors.
Addendum to 1f12113 (r26428).
2022-11-01 03:14:09 +01:00
Hermès Bélusca-Maïto
d8cc88ca80 [KERNEL32][BASESRV] Fix interoperability with Win2k3 regarding NLS section security. (#4828)
Partially revert some aspects of commits 5696e4ba4 and bf40c7a31.
(See PR #4340.)

In order for Win2k3 kernel32.dll to operate with our basesrv.dll (or our
kernel32.dll to operate with Win2k3 basesrv.dll), we need in particular
to have the CreateNlsSecurityDescriptor() helper to exactly take the
expected parameters. Namely, a pointer to a **user-allocated**
SECURITY_DESCRIPTOR buffer, its size (and an access mask).

The function expects its caller to provide all this, and the caller expects
the function to initialize the security descriptor buffer. Note that the
function does *NOT* allocate a new descriptor buffer to be returned!

Indeed, with the way it currently is in master, using Win2k3 kernel32
with our basesrv is now failing with the errors:
```
NLSAPI: Could NOT Create ACL - c0000023.
(subsystems/win/basesrv/nls.c:279) NLS: CreateNlsSecurityDescriptor FAILED!: c0000023
NLSAPI: Could NOT initialize Server - c0000023.
(dll/ntdll/ldr/ldrinit.c:867) LDR: DLL_PROCESS_ATTACH for dll "kernel32.dll" (InitRoutine: 77E40D95) failed
```
(and, if we ever attempted to increase the so-claimed "dummy parameter"
descriptor size in the basesrv call, we would end up with its stack
corrupted and a crash).
Conversely, using our kernel32 with Win2k3 basesrv, would end up with
basesrv receiving a wrongly-initialized descriptor that would not work
(the buffer not being initialized with the contents of a descriptor, but
instead receiving some address to a descriptor allocated somewhere else).
2022-11-01 02:34:04 +01:00
Hermès Bélusca-Maïto
5bf0c00ddc [KERNEL32] Minor code style changes + add documentation for BasepMoveFileDelayed().
+ cut the too long lines; don't hardcode types in sizeofs; correctly specify COPY_FILE_FAIL_IF_EXISTS flag.
2022-11-01 02:29:24 +01:00
Hermès Bélusca-Maïto
b4dfef73e5 [PSDK] Formatting for COPY_FILE_* and FILE_FLAG_* defines.
As flags it's easier to see hex values than decimal numbers.
Also I wonder who made those headers, it's as if they "unformatted" them
on purpose (looks like some autodump from somewhere). Just ugly smh...
2022-11-01 02:29:23 +01:00
Hermès Bélusca-Maïto
df95d05f5f [SYSDM.CPL] Remove useless ', 0, 0, 0x0' in the resource dialog FONT statements.
Those are the default values, so...
2022-11-01 02:29:17 +01:00
Katayama Hirofumi MZ
346d12bcd9 [SHELL_APITEST] Add double-backslash tests for PathResolve testcase
- Add s_LinkTargetDoubleBackslash variable.
- Add double-backslash tests.
- Add curly brackets for for-loop.
CORE-18080
2022-11-01 10:11:20 +09:00
Katayama Hirofumi MZ
6fe0a082ec [SHELL32_APITEST] Follow-up of 83e690c
Forgotten the section numbers.
CORE-18080
2022-11-01 09:05:24 +09:00
Katayama Hirofumi MZ
83e690cd92 [SHELL32_APITEST] Improve PathResolve testcase
- Use line numbers instead of entry numbers.
- Add LFN check.
- Delete some test entries outside of test data directory.
- Add some test entries.
CORE-18080
2022-11-01 08:55:42 +09:00
Joachim Henze
4615c824db [SETUP][INF] Delete obsolete font substitutions "DejaVu Serif" (#4827)
[INF] These 2 lines are nonsense now for 2 different reasons even:
Since 0.4.13-dev-764-g dbb4432b25
we do have a proper "Times New Roman" font, so there is no need for
substitution any longer.

And since 0.4.14-dev-20-g 2f4fb903b4
we don't even have the substitution-target "DejaVu Serif" anymore.

[SETUP] Similar glitch in muifonts.h

[ROSTESTS] Thin out gdi32:GetTextMetrics test
 Deletes tests for 3 fonts that we do not longer have
2022-10-31 02:00:01 +01:00
Thomas Faber
885459d8b4 [WIN32K:NTUSER] Fix parameter check in NtUserGetAsyncKeyState. CORE-18124 2022-10-30 10:46:33 -04:00
Stanislav Motylkov
9c21d0c124 [DESK] Do not load system-defined class name
In fact Windows XP/2003 desk.cpl uses only user-defined values,
and performs fallback to shell32.dll strings in case they are missing.

CORE-18565 CORE-8427
2022-10-30 15:04:41 +03:00
Katayama Hirofumi MZ
6f03be8570 [KBSWITCH] Don't activate target window on WM_CREATE
CORE-10667
2022-10-30 08:30:10 +09:00
Katayama Hirofumi MZ
4d9026c852 [CPL:INPUT] Return TRUE against WM_INITDIALOG and add WS_TABSTOP
This affects control focus.
2022-10-30 08:01:57 +09:00
Katayama Hirofumi MZ
06cd45353b [KBSWITCH] Menu with icons (#4822)
Add icons to the left-click menu. CORE-10667
2022-10-30 06:18:58 +09:00
Hermès Bélusca-Maïto
6259be3afa [CSRLIB] Remove old hack in CsrpConnectToServer(). ObjectDirectory cannot be NULL (otherwise it's caller's bug). 2022-10-29 18:52:34 +02:00
Hermès Bélusca-Maïto
141daf4de8 [CSRLIB] Add comments regarding the calculation of the data and total message lengths in CsrClientCallServer(). 2022-10-29 17:36:09 +02:00
Hermès Bélusca-Maïto
8cd01eaf25 [CSRLIB] Add SAL annotations to the CSR client functions. 2022-10-29 17:17:30 +02:00
Hermès Bélusca-Maïto
d2aeaba5f8 [CSR][NTDLL] Move the CSR subsystem into its own "csr" sub-directory. (#4802)
Move CSRSS, CSRSRV there, as well as CSR client calls from NTDLL into a "CSRLIB" library.
2022-10-29 17:17:29 +02:00
Katayama Hirofumi MZ
a6df7ddb95 [KBSWITCH] Fix shutdown and logout dialog CORE-18563
20221028-0.4.15-dev-5273-g36f7d1a introduced bug.
Quick fix.
CORE-18563
2022-10-29 20:36:45 +09:00
Katayama Hirofumi MZ
433240feec [KBSWITCH] Follow-up of #4815 (36f7d1a); Less flicker Alt+Shift
Add bNoActivate argument to ActivateLayout function.
CORE-11700, CORE-2699, CORE-18546
2022-10-29 16:23:58 +09:00
Katayama Hirofumi MZ
8f9283398a [NTUSER] Add 'Win:' comment to InitThreadCallback 2022-10-29 14:08:15 +09:00
Katayama Hirofumi MZ
fb58782012 [IMM32_APITEST] Add JapanImeConvTestA/W testcases (#4820)
Add IME conversion tests to verify IMM/IME support. CORE-11700
2022-10-29 13:49:28 +09:00
Katayama Hirofumi MZ
36f7d1a953 [KBSWITCH][CPL:INPUT][NTUSER][EXPLORER] Fix keyboard layout icon (#4815)
Fix keyboard layout icon in taskbar notification area. JIRA issue: CORE-11700, CORE-2699, CORE-18546
- Call ActivateKeyboardLayout to select the keyboard layout correctly.
- Modify WM_INPUTLANGCHANGEREQUEST parameter.
- Modify BroadcastSystemMessageW parameter.
- Revert Taskbar Notification Area MA_NOACTIVATE HACK 8344291 . This fixes Context Menu display.
- Load the "IME File" value and set the IME icon if necessary.
- Correctly implement global hooks.
2022-10-29 07:35:19 +09:00
Mark Jansen
a06f10d0c0 [BROWSEUI] Fix CAutoComplete use after free
CORE-18395
2022-10-27 23:45:18 +02:00
Justin Miller
98b90e7394 [DBGHELP] Add ARM64 definitions into compat.h (#4810)
This fixes ARM64 build in preparation for PR #4809.
CORE-18200
2022-10-27 18:14:10 +03:00
Tuur Martens
df77f88f0d [CONTRIBUTING] Fix broken hash links. (#4816)
These links did not actually work, as GitHub expected no question mark, but we did provide one.
2022-10-27 16:37:16 +02:00
Katayama Hirofumi MZ
7a8ddbf147 [NTUSER] Support SM_DBCSENABLED and SM_IMMENABLED (#4806)
- Don't set SRVINFO_CICERO_ENABLED flag because we don't have Cicero support.
- Improve UserGetSystemMetrics for SM_DBCSENABLED and SM_IMMENABLED.
- Delete useless UserIsDBCSEnabled function.
CORE-11700
2022-10-27 21:53:58 +09:00
Hermès Bélusca-Maïto
58983061e9 [NTOS:MM] Remove residual hack from commit 864a1bc6a (r55323). 2022-10-27 01:08:07 +02:00
Mark Jansen
a0b1a01c59 [MSI] Add jira ticket to debug logging 2022-10-26 20:19:31 +02:00
Mark Jansen
d284c81494 [APPHELP] Stop shimeng being initialized multiple times
This is a hack, but is required when MSI is loaded in a process that is already shimmed.
It should be removed when the MSI shim integration is fixed.
CORE-18532
CORE-13283
2022-10-26 20:19:31 +02:00
Mark Jansen
21e68b0dba [SHELL32] Fix empty 'Send to' menu
CORE-18517
2022-10-26 20:18:40 +02:00
Mark Jansen
15d491fb29 [NTDLL] Implement LdrInitShimEngineDynamic.
This is the final step required to properly support SE_DynamicShim
CORE-13283
2022-10-26 20:12:21 +02:00
Robert Naumann
b544640c29 [SHELL32] Update German (de-DE) translation (#4808)
Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
2022-10-26 19:48:27 +03:00
Konrad Dybcio
b55658b396 [WININET] Update Polish (pl-PL) translation (#4811)
Reviewed-by: Adam Słaboń <asaillen@protonmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-10-26 18:30:39 +03:00
Konrad Dybcio
97a61654c5 [BROWSEUI] Update Polish (pl-PL) translation (#4813) 2022-10-26 16:22:56 +03:00
Konrad Dybcio
e15490a2b8 [RASDLG] Fix typos in Polish (pl-PL) translation (#4812)
`tą` and `tę` are very often mistaken for each other by native speakers.
2022-10-26 16:22:05 +03:00
Konrad Dybcio
1f3cee73e9 [MMSYS] Fix English string in PL translation
Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2022-10-26 14:54:53 +02:00
Katayama Hirofumi MZ
e1df4f2d8f [IMM32] Add reasoning for tracing (#4807)
Follow-up of c2a9436 (#4798).
Improve trace messages.
CORE-11700
2022-10-26 12:01:33 +09:00
Thamatip Chitpong
dd75ae8eca [WIN32SS] Use GDI_HANDLE_* macros for readability (#4797) 2022-10-26 02:17:01 +02:00
Adam Słaboń
23e5d3fe25 [NTOS:MM] MmPurgeSegment: Fix wrong return value (#4801)
Return TRUE instead of NTSTATUS code which has a value of FALSE and may confuse caller.
Fixes sporadic 0x7B bugcheck when booting from corrupted NTFS volume using WinXP ntfs.sys.
2022-10-26 02:15:16 +02:00
Hermès Bélusca-Maïto
e774423689 [NTDLL:CSR] Don't hardcode types in sizeofs; move local variables into code blocks where they are used. 2022-10-26 01:45:26 +02:00
Hermès Bélusca-Maïto
cb8c8693e0 [SMSS] Initial SmpInit() call initializes the *first handle* (index 0) in the array. 2022-10-26 00:44:41 +02:00
Hermès Bélusca-Maïto
5cfb71baf8 [NTDLL] Properly stub out RtlRegisterThreadWithCsrss() in spec file. 2022-10-26 00:43:57 +02:00
Hermès Bélusca-Maïto
0997e9023c [SMSS][NTOS:MM] Get rid of the remaining sprintf_nt hacks. (#4799) 2022-10-26 00:41:23 +02:00
Hermès Bélusca-Maïto
426598c6f7 [CSRSRV] Remove deprecated dependency on smdll. (#4799) 2022-10-26 00:41:13 +02:00
Jose Carlos Jesus
9701bbcf6d [NTUSER] Fix issue when cursor/caret is static
Also remove the check that Windows doesn't do.

CORE-17929
2022-10-25 23:54:31 +03:00
Jose Carlos Jesus
c0eb407130 [ACCESS][MAIN] Fix setting cursor/caret blinking rate
- Save uCaretBlinkTime to CursorBlinkRate registry key
- Also fix blinking rate never reaching None

CORE-17929
2022-10-25 23:54:28 +03:00
Jose Carlos Jesus
be014129a5 [ACCESS][MAIN] Do not delete system stock object 2022-10-25 17:42:39 +03:00
Piotr Hetnarowicz
126afdaa6f [DISKPART] Update Polish translation for message table (#4548)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-10-24 17:08:35 +03:00
Piotr Hetnarowicz
bb406c4c18 [DISKPART] Update Polish (pl-PL) translation v2 (#4547)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-10-23 14:00:51 +03:00
Katayama Hirofumi MZ
67d8ffb60b [USER32] Fix UpdatePerUserImmEnabling tracing bug
CORE-11700
2022-10-23 13:02:37 +09:00
Katayama Hirofumi MZ
a65014e3a0 [IMM32] Add UNEXPECTED() macro for detailed debugging
CORE-11700
2022-10-23 12:49:37 +09:00
Katayama Hirofumi MZ
c2a943653e [IMM32] Improve debuggability at all (#4798)
- Strengthen tracing.
- Introduce IS_NULL_UNEXPECTEDLY, IS_ZERO_UNEXPECTEDLY etc. macros to manage tracing.
CORE-11700
2022-10-23 09:51:24 +09:00
Joachim Henze
e6fb0e0c25 [SHELL32] Delete old unused implementation of OLD_SHAppBarMessage() (#4800)
SHAppBarMessage() was reimplemented at a different place by
0.4.14-dev-1209-g 10d1afea18
That was a reimport from Wine.
2022-10-22 21:48:11 +02:00
Katayama Hirofumi MZ
5166ffa447 [SHELL32] Improve Japanese translation (ja-JP) 2022-10-21 23:20:50 +09:00
Piotr Hetnarowicz
b4dedecff3 [DESK] Update Polish (pl-PL) translation (#4794)
- Addendum to bb43363416
- Also update resource file header

Reviewed-by: Adam Słaboń <asaillen@protonmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-10-21 16:22:10 +03:00
Katayama Hirofumi MZ
16ba3ff2ed [DESK.CPL] Improve Japanese translation (ja-JP) Part 2 2022-10-21 19:06:35 +09:00
Katayama Hirofumi MZ
b562f50707 [DESK.CPL] Improve Japanese translation (ja-JP) 2022-10-21 18:44:22 +09:00
Katayama Hirofumi MZ
5462d4adad [IMM32] Imm32InternalLockIMC: Unlock hIC on failure
CORE-11700
2022-10-21 16:40:25 +09:00
Katayama Hirofumi MZ
143ed5e72d [IMM32] Improve ImmSetCompositionFontA/W
CORE-11700
2022-10-21 16:37:59 +09:00
Katayama Hirofumi MZ
6585803681 [IMM32] Add uCodePage parameter to Imm32WideFromAnsi/Imm32AnsiFromWide
This needs for multiple codepage support.
CORE-11700
2022-10-21 16:04:59 +09:00
Katayama Hirofumi MZ
e1d3a7d08c [IMM32] Improve ImmGetCandidateWindow
CORE-11700
2022-10-21 15:22:06 +09:00
Katayama Hirofumi MZ
633ed86af2 [IMM32][INCLUDE] s/CLIENTIMC_UNKNOWN5/CLIENTIMC_ACTIVE/
CORE-11700
2022-10-21 13:21:02 +09:00
Katayama Hirofumi MZ
962c4557b5 [IMM32] Fix ImmSetActiveContext
CORE-11700
2022-10-21 13:08:49 +09:00
Katayama Hirofumi MZ
2865423abe [IMM32] Minor fix of ImmSetCompositionWindow
CORE-11700
2022-10-21 11:29:47 +09:00
Katayama Hirofumi MZ
b086f910d8 [IMM32] Fix and improve Imm32SelectInputContext
CORE-11700
2022-10-21 11:23:34 +09:00
Katayama Hirofumi MZ
edbeaa3c87 [IMM32] Move CtfImmTIMCreateInputContext calls
CORE-11700
2022-10-21 10:52:43 +09:00
Katayama Hirofumi MZ
db16a1f783 [IMM32] ImmGetImeInfoEx minor fix
CORE-11700
2022-10-21 10:40:38 +09:00
Katayama Hirofumi MZ
1f1dc9d84a [IMM32] s/ImmNt3Trans/WINNLSTranslateMessage/
CORE-11700
2022-10-21 10:32:33 +09:00
Katayama Hirofumi MZ
8f0e22ac23 [IMM32] Simplify Imm32WriteImeLayout
CORE-11700
2022-10-21 10:11:59 +09:00
Stanislav Motylkov
a8ee11e0ff [HHCTRL.OCX] Fix toolbar icons order
In `hhtoolbar.bmp` the "Expand" icon comes first, then "Collapse".

Import Wine commit wine-7.19-39-g4f4b342ad44:
4f4b342ad4

CORE-12198
2022-10-20 21:20:36 +03:00
Katayama Hirofumi MZ
4572aad16a [IMM32][INCLUDE] s/IMEDPI_FLAG_UNKNOWN/IMEDPI_FLAG_UNLOADED/
CORE-11700
2022-10-20 13:50:37 +09:00
Katayama Hirofumi MZ
27cc079d90 [IMM32] Fix ImeDpi_Escape by adding !IS_16BIT_MODE()
CORE-11700
2022-10-20 13:48:11 +09:00
Katayama Hirofumi MZ
91e3d06cdb [IMM32] Fix and improve Imm32InquireIme
CORE-11700
2022-10-20 12:47:15 +09:00
Katayama Hirofumi MZ
72c56c2f1f [IMM32] Improve ImmAssociateContext readability
CORE-11700
2022-10-20 12:32:45 +09:00
Katayama Hirofumi MZ
f9b2b1a6cd [IMM32] Use UNICODE_NULL for null characters
CORE-11700
2022-10-20 12:29:29 +09:00
Katayama Hirofumi MZ
378d0e814c [IMM32] ImmTranslateMessage: Minor fix
CORE-11700
2022-10-20 11:32:23 +09:00
Katayama Hirofumi MZ
4af3372c23 [IMM32] s/Imm32PostMessages/ImmPostMessages/
CORE-11700
2022-10-20 11:29:33 +09:00
Stanislav Motylkov
5f14928763 [DESK] Refactor the work with registry parameters
Use SHGet/Set functions instead of talking directly to registry.
This makes the code a lot more simple and readable.

CORE-3567
2022-10-20 04:10:04 +03:00
Stanislav Motylkov
769fcd895b [DESK] Add desktop icon change feature
- All functions now implemented, except no support for themes.
- Fixed listview height to avoid vertical scrollbar in Windows.
- Refactored existing code for show/hide desktop icons.

CORE-3567 CORE-8427
2022-10-19 23:24:03 +03:00
Stanislav Motylkov
43ecf7e4e4 [SHELL32] Add missing strings for desktop icons
Reuse existing translations where possible.

CORE-8427
2022-10-19 21:00:22 +03:00
Katayama Hirofumi MZ
39fe905efa [NTUSER] Improve IntSetImeHotKey (#4789)
- Use the LOWORD value for VK_PACKET detection.
- IntGetImeHotKeyByKeyAndLang accepts the neutral language identifier (that is zero).
CORE-11700
2022-10-20 02:57:47 +09:00
Mark Jansen
122423238a [PSDK] Add arguments for SearchPathW 2022-10-19 19:39:29 +02:00
Mark Jansen
8e16f28789 [RUNDLL32] Try to resolve the manifest file manually
This fixes f.e. Ctrl+A not working in the Create Shortcut wizard
CORE-16669
2022-10-19 19:39:29 +02:00
Mark Jansen
0452d3415a [SHELL32] Fix 'Paste' command in context menu not working
Bug found by Rosen Iliev
2022-10-19 19:38:33 +02:00
Mark Jansen
5bd86b8487 [SHELL32] Fix menu item handling
This restores the 'properties' functionality on the desktop
Bug found by Hervé Poussineau
2022-10-19 19:37:41 +02:00
Mark Jansen
7b33915adc [SYSSETUP] Add support for shortcut arguments 2022-10-19 19:36:26 +02:00
Dmitry Borisov
9d06e79373 [FREELDR] Partially implement docking station detection (#4751) 2022-10-19 16:48:27 +02:00
Katayama Hirofumi MZ
774c3b3c92 [USER32] CliGetPreloadKeyboardLayouts: Use _ultow
CORE-11700
2022-10-19 17:52:31 +09:00
Katayama Hirofumi MZ
7523bf84a5 [USER32] Fix build; Appendum to 21feb52
CORE-11700
2022-10-19 17:40:40 +09:00
Katayama Hirofumi MZ
21feb529fe [USER32] Improve CliGetPreloadKeyboardLayouts
CORE-11700
2022-10-19 17:36:04 +09:00
Katayama Hirofumi MZ
10acb335fa [USER32] Improve CliGetImeHotKeysFromRegistry
CORE-11700
2022-10-19 17:03:54 +09:00
Katayama Hirofumi MZ
dff4579bd6 [NTUSER][USER32][INCLUDE] s/SETIMEHOTKEY_DELETEALL/SETIMEHOTKEY_INITIALIZE/
CORE-11700
2022-10-19 12:15:11 +09:00
Vadim Galyant
2580889cfa [SETUPLIB] Add NTFS boot support. (#3778) 2022-10-19 02:02:24 +02:00
Hervé Poussineau
a33719500c [BOCHSMP] Add driver for QEMU and Bochs graphic card 2022-10-17 18:20:22 +02:00
Katayama Hirofumi MZ
ac0a0adc51 [NTUSER][USER32] Improve DrawFrameControl:DFC_MENU and DFC_BUTTON (#4783)
A retrial of 13868ee (#4779).
- Fill the background if necessary, and set the text color and the back mode in DrawFrameControl:DFC_MENU.
- Use UITOOLS95_DrawFrameMenu in menu drawing instead of DrawFrameControl.
CORE-18515, CORE-18417
2022-10-17 13:28:56 +09:00
Katayama Hirofumi MZ
227e596f68 Revert "[USER32][NTUSER] Fill by white in DrawFrameControl:DFC_MENU (#4779)" (#4784)
This reverts commit 13868ee0e8.
CORE-18515
2022-10-16 00:18:50 +09:00
Hervé Poussineau
f0b8a1730e [VIDEOPRT] Correctly detach from device stack in case of failure 2022-10-15 15:06:53 +02:00
Katayama Hirofumi MZ
13868ee0e8 [USER32][NTUSER] Fill by white in DrawFrameControl:DFC_MENU (#4779)
DrawFrameControl:DFC_MENU draws the monochrome image of menu arrow or checkmark. However, the function didn't draw the entire rectangle correctly when the rectangle was not a square. CORE-18417
2022-10-15 21:00:13 +09:00
Mark Jansen
b448fbdf59 [SHELL32] Fix using the wrong context menu 2022-10-15 11:09:25 +02:00
Katayama Hirofumi MZ
dac807e237 [RAPPS] Improve Japanese translation (ja-JP) 2022-10-15 12:27:32 +09:00
Katayama Hirofumi MZ
26caef2336 [INCLUDE] immdev.h: Adapt INPUTCONTEXTDX to C++
CORE-11700
2022-10-15 08:13:22 +09:00
Mark Jansen
57d0e1d207 [SHELL32] Remove unused function 2022-10-15 00:01:45 +02:00
Mark Jansen
6a9696f10b [SHELL32] CFolderItemVerb: Zero-initialize output parameters 2022-10-14 21:04:19 +02:00
Mark Jansen
9efa7cc498 [SHELL32] Fix CDefaultContextMenu DFM_MERGECONTEXTMENU handling 2022-10-14 21:04:19 +02:00
Mark Jansen
6a1f287820 [SHELL32] Show file / drive properties at the position where the mouse was.
CORE-18386
2022-10-14 21:02:33 +02:00
Katayama Hirofumi MZ
26408144a1 [INF][INTL.INF][SETUPLIB] We don't have preinstalled IMEs (#4774)
Don't write the preinstalled IME keyboard layouts in Chinese, Japanese and Korean (CJK). CORE-18506
2022-10-14 07:17:24 +09:00
Robert Naumann
abaf0d1cbb [WMIC] Update German translation 2022-10-13 21:30:22 +02:00
Thamatip Chitpong
9cc9a26392 [SYSDM] Improve license dialog icon (#4773)
- Use `mimetypes/application-certificate` icon
  from Tango Icon Theme 0.8.90 instead of `IDI_CPLSYSTEM`
- Set large icon correctly
- Add NULL check for DestroyIcon
- Minor code formatting
2022-10-13 17:52:14 +03:00
Katayama Hirofumi MZ
bbef618032 [KBSWITCH][IMM32][USER32] Consider keyboard layout corner cases
Considering invalid Keyboard Layout registry entries.
CORE-11700
2022-10-13 16:01:02 +09:00
Katayama Hirofumi MZ
fb86db15bb [IMM32] Silence CtfImmDispatchDefImeMessage's fixme
Too noisy. CORE-11700
2022-10-13 12:08:02 +09:00
Katayama Hirofumi MZ
337cbf5888 [BROWSEUI] Follow-up of 2e67c18 (#4767); Also check 'MenuText'
CORE-18394
2022-10-13 11:07:03 +09:00
Katayama Hirofumi MZ
31a33c5fcb [IMM32] Implement Imm32ImeNonImeToggle (#4769)
- Rename Imm32ImeNonImeToggle as Imm32CImeNonImeToggle (Win: CIMENonIMEToggle).
- Add Imm32ImeNonImeToggle (Win: IMENonIMEToggle) function.
- Improve IME hot-key functions.
CORE-11700
2022-10-13 07:14:24 +09:00
Jose Carlos Jesus
a3eda784a5 [COMCTL32] Don't hardcode dwCaretWidth parameter while calling CreateCaret
Also replace 0 with NULL for the second argument of the function call.

CORE-18151
2022-10-12 22:12:19 +03:00
Jose Carlos Jesus
9789e9c409 [COMCTL32] Read caret width from registry
Add caret width value to EDITSTATE structure.
To keep the same behavior as Windows Server 2003,
we need to update dwCaretWidth when EDIT_WM_SetFocus is called.

CORE-18151
2022-10-12 22:12:19 +03:00
Jose Carlos Jesus
d794996217 [NTUSER] Call SpiSetDWord when processing SPI_SETCARETWIDTH message
This corresponds to REG_DWORD type of CaretWidth value.

CORE-18151
2022-10-12 22:12:12 +03:00
Hermès Bélusca-Maïto
0dd6aa6ca5 [WINDOWSX.H] Make header compatible with MS PSDK + Add missing original license. (#4768)
To hypothetical future sync'ers: If you ever try to sync this file with
MinGW-w64, please be extremely careful to port all the fixes (including
x64-compatible casting fixes, missing definitions, etc.) that have been
brought to this file along the years by your dear ReactOS colleagues.
2022-10-12 16:10:35 +02:00
Hermès Bélusca-Maïto
6572dd7f48 [WINDOWSX.H] Fix some x64 incompatibilities. (#4768) 2022-10-12 16:10:22 +02:00
Hervé Poussineau
162de4a0d8 [WIN32SS:ENG] Call display mouse functions only when using hardware pointer
Otherwise, use software pointer functions.

This fixes graphical glitches on cursor change, when the display driver
provides accelerated pointer functions (DrvSetPointerShape/DrvMovePointer),
but refuses to handle a certain cursor.

These graphical glitches may be reproduced:
- by using Voodoo driver SFFT 1.9
- by using framebuf_new.dll instead of framebuf.dll
- by using the panning driver (setting DefaultSettings.XPanning and
  DefaultSettings.YPanning in registry)
2022-10-11 19:04:59 +02:00
Stanislav Motylkov
e6841944b8 [RAPPS] Fix inconsistencies in the translations
- Fix truncated dialogs
- Fix element positions
- Fix element misc flags
- Also uniform resource file headers per Coding Style

Addendum to e3fdbe5806, 1866b89100, and 9186a358da.

CORE-18497
2022-10-11 19:32:12 +03:00
Katayama Hirofumi MZ
72dbd87b1a [IMM32] Follow-up of deb4f4e; Add comments
CORE-11700
2022-10-11 12:06:51 +09:00
Katayama Hirofumi MZ
00bd373e88 [NTOSKRNL] Revert 53ac8da and use UNIMPLEMENTED_DBGBREAK() 2022-10-11 07:39:40 +09:00
Stanislav Motylkov
e63be36c68 [BROWSEUI] Update Russian (ru-RU) translation
Addendum to 2e67c18d. CORE-18394
2022-10-11 00:48:31 +03:00
Katayama Hirofumi MZ
2e67c18d2b [BROWSEUI][INCLUDE] Localize 'Address' on CBandSiteMenu (#4767)
- Add IDS_ADDRESSMENUTEXT resource string (whose ID matchs the string of addressband.rgs).
- Add SHLoadRegUIStringA/W function prototype to <shlwapi_undoc.h>.
- Use SHLoadRegUIStringW to load MenuTextPUI.
CORE-18394
2022-10-11 06:15:28 +09:00
Stanislav Motylkov
bb43363416 [DESK] Implement dialog to manipulate desktop icons (#4766)
For now only add ability to show or hide desktop icons.

CORE-8427
2022-10-10 18:30:25 +03:00
Stanislav Motylkov
3188f93fd4 [PSDK] Add some missing Shell State Flags to shlobj.h
See https://docs.microsoft.com/en-us/windows/win32/shell/ssf-constants

CORE-8427
2022-10-10 18:30:24 +03:00
Peter Meerwald-Stadler
6bf909d66a [ZLIB] Restore 'uncrypt' functionality in minizip (using #ifdef REACTOS)
CORE-18339
2022-10-10 11:03:55 -04:00
Peter Meerwald-Stadler
3e1f407439 [ZLIB] Update to v1.2.12. CORE-18339
Upstream commit 21767c654d31d2dccdde4330529
2022-10-10 11:03:41 -04:00
Katayama Hirofumi MZ
deb4f4e4e2 [IMM32] Add ImmGetAppCompatFlags and epilogue of ImmProcessKey
CORE-11700
2022-10-10 15:50:13 +09:00
Katayama Hirofumi MZ
9a3a11d26b [USERINIT] Improve Japanese translation (ja-JP) 2022-10-10 14:58:22 +09:00
Katayama Hirofumi MZ
53ac8dae4d [NTOSKRNL] Write 'if (var) ASSERT(FALSE);' as 'ASSERT(!var);'
Based on Serge Gautherie's patch.
CORE-13216
2022-10-10 09:33:08 +09:00
Katayama Hirofumi MZ
92c904addc [SHELL32] DestroyMenu on m_pShellMenu->SetMenu failure
CORE-13194
2022-10-10 08:48:59 +09:00
Katayama Hirofumi MZ
924a8fea10 [SHELL32] De-select m_marlett on CMenuToolbarBase::OnCustomDraw
CORE-13194
2022-10-10 08:45:04 +09:00
Stanislav Motylkov
62f09debc1 [SYSDM] Fix element positions and general consistency 2022-10-09 18:12:02 +03:00
Stanislav Motylkov
c3daf56d6e [NETPLWIZ] Add Russian (ru-RU) translation 2022-10-09 16:40:28 +03:00
Andrei Miloiu
5b4a145453 [TRANSLATION] Big Romanian (ro-RO) translation update - part 1 (#4701)
- [CALC] Improve Romanian (ro-RO) translation
- [SOLITAIRE] Improve Romanian (ro-RO) translation
- [MSPAINT] Improve Romanian (ro-RO) translation
- [MSTSC] Improve Romanian (ro-RO) translation
- [SNDVOL32] Improve Romanian (ro-RO) translation
- [REACTOS] Improve Romanian (ro-RO) translation
- [USETUP] Improve Romanian (ro-RO) translation
- [DESK] Improve Romanian (ro-RO) translation
- [INPUT] Improve Romanian (ro-RO) translation
- [INTL] Improve Romanian (ro-RO) translation
- [JOY] Improve Romanian (ro-RO) translation
- [MMSYS] Improve Romanian (ro-RO) translation
- [POWERCFG] Improve Romanian (ro-RO) translation
- [SYSDM] Improve Romanian (ro-RO) translation
- [ACPPAGE] Improve Romanian (ro-RO) translation
- [DESKADP] Improve Romanian (ro-RO) translation
- [MYDOCS] Add Romanian (ro-RO) translation
- [NETPLWIZ] Add Romanian (ro-RO) translation
- [NTOBJSHEX] Improve Romanian (ro-RO) translation
- [SENDMAIL] Add Romanian (ro-RO) translation
- [ZIPFLDR] Improve Romanian (ro-RO) translation
- [JSCRIPT] Improve Romanian (ro-RO) translation
- [MSGINA] Improve Romanian (ro-RO) translation
- [SYSSETUP] Improve Romanian (ro-RO) translation
- [MC] Add Romanian (ro-RO) translation

Reviewed-by: Ștefan Fulea <stefan.fulea@mail.com>
Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
Reviewed-by: George Bișoc <george.bisoc@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-10-09 14:00:20 +03:00
Robert Naumann
2e56c3bc14 [MORE] Update German translation (#4761) 2022-10-08 13:19:28 +02:00
Robert Naumann
20b915dab3 [FC] Add German translation (#4760) 2022-10-08 13:19:06 +02:00
Robert Naumann
19ab5fa310 [GIT] Add .DS_Store files to .gitignore (#4762)
When working on macOS, the system creates a .DS_Store file in every accessed directory. They are marked as new files
in git, which is very annoying. This change will exclude these files.
2022-10-08 13:18:18 +02:00
Katayama Hirofumi MZ
bf2f5a70a5 [USETUP] Clear underlined text correctly
CORE-18446, CORE-5052
2022-10-08 08:47:22 +09:00
Katayama Hirofumi MZ
d707916605 [USETUP][VGAFONTS] Improve Japanese character display
- Modify media/vgafonts/932-8x8.bin Japanese VGA font.
- Use special codepoints of new font 932-8x8.bin.
Appendum of #4750. Line connection bug still remains.
CORE-5052
2022-10-08 08:22:24 +09:00
Katayama Hirofumi MZ
3c5a56ed93 [USETUP][VGAFONTS] Improve Romanian character display (#4750)
- Modify media/vgafonts/28606-8x8.bin Romanian VGA font to display special characters.
- Add global variables for special characters "Char..." for Romanian VGA font.
- Toggle the global variables "Char..." in SetConsoleCodePage function.
CORE-18446
2022-10-08 07:46:00 +09:00
Jose Carlos Jesus
fece68b63f [TRANSLATION] Improve Portuguese (pt-PT) translation (#4758)
- [WINNLS] Update pt-PT translation
- [NETCFGX] Update pt-PT translation
- [SHELL32] Update pt-PT translation
2022-10-06 22:48:38 +03:00
Mas Ahmad Muhammad
0753202cf1 [TRANSLATION] Update Indonesian (id-ID) translation (#4585)
- [WRITE] Add Indonesian (id-ID) translation
- [WINLOGON] Update Indonesian (id-ID) translation
2022-10-06 22:44:46 +03:00
Hermès Bélusca-Maïto
3d64217f70 [FC] Add missing period at the end of the usage sentence.
Except for German as it's going to be handled by PR #4760.
2022-10-06 19:55:25 +02:00
Hermès Bélusca-Maïto
61cfc0f055 [KERNEL32] Fix DisableThreadLibraryCalls function argument type in spec file.
+ Remove space between function name and parentheses there too.
2022-10-06 16:16:46 +02:00
Hermès Bélusca-Maïto
b764a42db8 [ACLEDIT][MSIMG32][HIDCLASS] Fix DLL-main function argument type in spec file. 2022-10-06 16:16:40 +02:00
Hermès Bélusca-Maïto
2c244eafe0 [IMM32][LPK] Remove msvcrt dependency; fix entrypoint. (#4759) 2022-10-06 15:52:20 +02:00
Hermès Bélusca-Maïto
58740bfbc1 [GDI32][USER32] Order the set_module_type arguments the usual way ("UNICODE" before the entrypoint).
+ Harmonize the entrypoints as well.
2022-10-06 15:37:23 +02:00
Hermès Bélusca-Maïto
069b08da0b [EVENTVWR] Fix settings loading. Remove usage of Rtl functions. Use Win32 CRT assert. (#4752)
- Don't create the settings registry key when trying to load them.
  Defer its creation when saving the settings.

- Use more restricted access rights when opening/creating the key.

- Ensure read and written string settings are NULL-terminated.

- Use the Win32 CRT assert so that if an assertion fails we get a
  message on the screen, not via the kernel debugger.
2022-10-06 01:59:33 +02:00
Stanislav Motylkov
cdf907074d [KEYBOARD] Fix problems in our keyboard layouts
- Fix failing API tests added in 6aacfa93 and c1c12793:
  'KbdLayout' test: All failures fixed now
  'VirtualKey' test: One of two failures fixed

- This also should fix related problems with "F17" shortcut key
  in the menu items of some programs.

CORE-17906 CORE-3903
2022-10-05 21:28:15 +03:00
Stanislav Motylkov
6aacfa93c0 [USER32_APITEST] Add tests for Keyboard Layouts
CORE-17906
2022-10-05 16:18:16 +03:00
Ratin Gao
badd97043f [RTL][NTDLL_APITEST] Implement RtlRemovePrivileges (#4614)
Vista+ API, compile-time guarded.
Add tests for it.
2022-10-05 14:31:39 +02:00
Hermès Bélusca-Maïto
967f5b9898 [WINLOGON] Protect function calls to '3rd-party' DLLs by SEH. (#4743)
This includes:
- Notification dll calling in CallNotificationDll().
- winmm.dll API calling (e.g. PlaySound) in PlaySoundRoutine().

Also:
- Fix dwKeyName usage in RegEnumKeyExW() specifying a number of *characters*.
2022-10-04 23:14:35 +02:00
Stanislav Motylkov
ab3e0002a6 [DESK] Fix screensaver preview drawing
Use window subclassing to override WM_PAINT message handling
and use RedrawWindow function along with WS_CLIPCHILDREN style
for the parent window in order to preserve screensaver drawing.

CORE-15929
2022-10-04 21:16:08 +03:00
Stanislav Motylkov
092fc8edd0 [DESK] Show screensaver preview in a monitor
Reuse the same monitor bitmap for the top preview control.
Also use Windows-compatible class name for it.

CORE-10606
2022-10-04 21:16:07 +03:00
Stanislav Motylkov
d5bd08fca4 [REACTOS][CPL] Coding style fixes only 2022-10-04 21:14:31 +03:00
Hermès Bélusca-Maïto
ff3d1b7bb1 [EVENTVWR] Improve behaviour on event item selection. (#4746)
CORE-18438

- Each event detail control stores its own "current" item index, so
  that there can be different event detail dialogs showing different
  events concurrently (half-plemented; this is a Win7-like feature).
  As such, give the index of the selected event item when sending
  the EVT_DISPLAY message, instead of having the details dialog
  retrieve everytime by itself the current selected item (that may
  change in-between calls, and can trigger the "No Items in ListView"
  error).

- When pressing "Prev"/"Next" buttons, detect whether we already are
  at the top/bottom of the event log, and if so, prompt the user to
  continue around.
  Clear up any selected event in the list, before selecting the new
  one. (Note: the event list supports multiple selection, for future
  functionality.)
2022-10-04 17:29:10 +02:00
Katayama Hirofumi MZ
826bd41d88 [NTUSER][USER32] Initial support of WS_EX_NOACTIVATE flag (#4731)
WS_EX_NOACTIVATE flag forbids the window to be activated. CORE-18417
2022-10-04 09:40:43 +09:00
Doug Lyons
bd027c9de4 [NTUSER] Fix 'Trying to link windows to itself' (#4478) CORE-18132
Fix 'Trying to link windows to itself' on DestroyWindow. Patch by I_Kill_Bugs.
This fixes a potential BSOD 0x50 observable in the app Localizer Editor"
2022-10-04 00:26:02 +02:00
Hermès Bélusca-Maïto
efd11b7f56 [EVENTVWR] Simplify some duplicated code. (#4745) 2022-10-03 23:17:02 +02:00
Hermès Bélusca-Maïto
89bdca6177 [EVENTVWR] Update file headers. 2022-10-03 23:16:57 +02:00
Stanislav Motylkov
12526424d5 [DESK] Fix screensaver layouts for all translations
Also remove trailing "0" for the preview static control styles.
2022-10-03 21:04:33 +03:00
Stanislav Motylkov
3aa5e8b897 [DESK] Show monitor on "Settings" page when only one monitor detected
Hide multiple monitor selection controls in this case.
Otherwise, show them when multiple monitors are detected
and hide the monitor preview bitmap.

This fixes the focus on the resolution slider when tested in Windows XP.

Also use the monitor bitmap globally, because it's used on multiple pages.

CORE-17939 CORE-10606
2022-10-03 17:34:09 +03:00
Stanislav Motylkov
311fcc612e [WLANCONF] Fix getting the interface GUID value
GetInterfaceInfo returns interface name in Windows XP and 2003
in this format: `\DEVICE\TCPIP_{GUID}`.

MSDN says that the `Name` member of the `IP_ADAPTER_INDEX_MAP`
may start with '{' character on Windows Vista and later.
https://docs.microsoft.com/en-us/windows/win32/api/ipexport/ns-ipexport-ip_adapter_index_map

Change the code to support both cases. CORE-18032
2022-10-02 15:36:45 +03:00
Stanislav Motylkov
c1c127932d [USER32_APITEST] Add tests for MapVirtualKeyW
For @julcar. See PR #4730 for details. CORE-17906
2022-10-02 02:46:24 +03:00
Mark Jansen
cd2d284142 [EXPLORER][BROWSEUI][SHELL32][NETSHELL] Fix wrong usage of CComPtr 2022-10-02 00:38:23 +02:00
Mark Jansen
a414c88dae [ATL] Prohibit the use of AddRef/Release on objects inside CComPtr
This mimics what MS's CComPtr is doing:
https://learn.microsoft.com/en-us/cpp/atl/reference/ccomptrbase-class?view=msvc-170#operator_ptr
The reasoning behind this is that AddRef/Release is handled by the CComPtr,
so anyone calling that is most likely not using the CComPtr correct.
2022-10-02 00:38:23 +02:00
Mark Jansen
544b734498 [SHELL32] CDefView: Rework context menu handling
Previously, we would share one object between a multitude of options.
Now, the only two options that need to store something for later use each have their own space for it.
The context menu always cleans up after itself, the File menu does not.
CORE-18345
CORE-18361
CORE-18366
2022-10-02 00:36:42 +02:00
Hermès Bélusca-Maïto
3bb451b1d3 [ROSAPPS] Rename template filesystem to a better name. 2022-10-01 01:28:19 +02:00
Hermès Bélusca-Maïto
23b7c7b823 [FASTFAT] And now use the MS-open-sourced fastfat_new as our official FAT12/16/32 FS driver. 2022-10-01 01:28:19 +02:00
Hermès Bélusca-Maïto
b9217c0e35 [EXPLORER] Addendum in translation (missing indentation). 2022-09-30 18:08:14 +02:00
Nikolay Dimitrov
f2bc613fda [TRANSLATION] Update Bulgarian translation (#4429)
Update translations for:
Explorer, Calculator, MSPaint, MSGina, USetup.

Add translations for:
INetCPL, Crypt32, CryptUI.

Signed-off-by: Nikolay Dimitrov <delphipro@gmail.com>
Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Rosen Iliev <winterhell2002@gmail.com>
2022-09-30 18:08:13 +02:00
Stanislav Motylkov
72bdbdd4fa [TRANSLATION] More Russian (ru-RU) translation fixes
Addendum to 3f411c5d.
2022-09-29 12:00:04 +03:00
Stanislav Motylkov
0ee5e4c7e3 [INPUT] Update Russian (ru-RU) translation
Addendum to 5f4bb73e.
2022-09-29 11:08:17 +03:00
Hermès Bélusca-Maïto
fb68e76c51 [TRANSLATION][INPUT.CPL] Update french translation. 2022-09-29 04:27:15 +02:00
Hermès Bélusca-Maïto
dbe4abab4f [KBSWITCH][INPUT.CPL] Correctly do the input language indicator.
Addendum to commits 5f4bb73e and c6ccb92b.

- GetLocaleInfo() returns an int, not a bool: makes it clear in the test.

- No need to use StringCchCopy() to just initialize two chars to the
  same value.

- The question about the test in https://github.com/reactos/reactos/pull/4723#discussion_r981331634
  was meant to discover that CreateDIBSection() was unnecessary, since
  the very original code (before commit 0991cedc) did not use it and was
  working fine in that regard. The simple fix was to use GetDC(NULL).

- Use SM_CXSMICON/SM_CYSMICON metrics for the KBSWITCH indicator as well.

- Override the font size obtained from SPI_GETICONTITLELOGFONT with a
  known one (allows to get a correct indicator even if the user font
  is very large).

- Do the initialization in such a way that in case SPI_GETICONTITLELOGFONT
  or CreateFontIndirect fails, we always fall back to the default stock
  font that is ensured to always exist.

- Initialize *all* the fields of the IconInfo structure.
2022-09-29 04:06:17 +02:00
Katayama Hirofumi MZ
c6ccb92bdd [KBSWITCH] Fix keyboard indicator text and font (#4723)
- Do the same behaviour as input.dll in getting indicator text.
- Use full color DIB (device-independent bitmap) to improve icon.
- Use SPI_GETICONTITLELOGFONT for font.
CORE-10667
2022-09-29 07:32:39 +09:00
Katayama Hirofumi MZ
5f4bb73eda [CPL][INPUT] Make the ListView a TreeView (#4726)
- Make the list a TreeView.
- Modify IDD_PROPPAGESETTINGS resource dialog for UI compatibility.
2022-09-29 07:31:43 +09:00
Serge Gautherie
f0e13157c6 [DNSAPI] DNSRSLVR_HANDLE_bind(): Demote 1 DPRINT1() (#4733)
Addendum to b79246c534 (0.4.14-dev-174).
CORE-18384
2022-09-28 22:38:35 +03:00
Serge Gautherie
421b89eea1 [DOC] 3rd Party Files.txt: Update WinBtrfs to v1.8.1 (#4732)
Addendum to 29d1938258 (0.4.15-dev-5113).
CORE-18322
2022-09-28 21:38:42 +03:00
Hervé Poussineau
7278ed2015 [WIN32SS] Change LDEVOBJ_bProbeAndCaptureDevmode to account for not provided fields when searching an exact mode
This fixes mode change if an application requests (for example) 640x480x32, without providing display frequency.
2022-09-28 18:31:19 +02:00
Johannes Obermayr
29d1938258 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.8.1 (#4729)
CORE-18322

v1.8.1 (2022-08-23):
- Fixed use-after-free when flushing
- Fixed crash when opening volume when AppLocker installed
- Compression now disabled for no-COW files, as on Linux
- Flushing now scales better on very fast drives
- Fixed small files getting padded to 4,096 bytes by lazy writer
- Added NoDataCOW registry option
2022-09-28 18:08:10 +02:00
Hervé Poussineau
22d8c0fd54 [FRAMEBUF] Implement required DirectDraw functions
However, do not support any optional callback.

dxdiag now accepts to run DirectDraw tests.
2022-09-26 23:45:56 +02:00
Hervé Poussineau
06b3ee43c2 [NTOS:PNP] Partially implement NtPlugPlayControl(PlugPlayControlQueryAndRemoveDevice)
CORE-12307
2022-09-26 23:35:09 +02:00
Hervé Poussineau
5eeeb1c235 [NETSHELL] Return error if disconnection failed
CORE-12307
2022-09-26 23:33:57 +02:00
Katayama Hirofumi MZ
2469ce2c31 [NTUSER][KBSWITCH] Realize Alt+Shift keyboard switch (retry) (#4721)
Alt+Shift is a useful key combination to switch the current keyboard layout. CORE-11737
- Add ID_NEXTLAYOUT command to kbswitch.
- Send command ID_NEXTLAYOUT to kbswitch on Alt+Shift key combination in WM_SYSKEYDOWN handling of IntDefWindowProc function.
- Make IntFindWindow a non-static function.
2022-09-26 08:07:50 +09:00
Hermès Bélusca-Maïto
38870875ba [CMD] Fix build. Addendum to 67ac583b5. 2022-09-25 23:59:18 +02:00
Hermès Bélusca-Maïto
67ac583b5b [CMD] COPY: Always remove the read-only attribute, for MS-DOS backwards-compatibility.
Tested and compared with MS CMD.EXE when copying files within the
same directory, across directories and across drives.
This is not done for the MOVE, REN and REPLACE commands however.

CORE-18090
2022-09-25 23:55:27 +02:00
Serge Gautherie
66d50537f4 [BCRYPT_WINETEST] Wine Sync to 8d8936cbb6fea3cac862e059e814527f5361f48b (#208)
Import, as is, the next 2 commits from Wine:
8d8936cbb6fea3cac862e059e814527f5361f48b  2016-12-06  Bruno Jesus  bcrypt/tests: Normalize all tests to use function pointers.
b5e5be13d20adff5d7b784e71c7a48fb95fde2c8  2016-12-06  Bruno Jesus  bcrypt/tests: Workaround RegGetValueW not being present in XP.

These let this test load on WS03 and even WXP, too.
Notice though, that even after the change, the test does not manage to load bcrypt.dll yet on Windows XPSP3 yet, even when copying it next the test.

No functional changes.
ROSTESTS-296
2022-09-25 20:35:23 +02:00
Mark Jansen
815dd140c7 [ACLAYERS] Fix RtlGetVersion 2022-09-25 19:33:51 +02:00
Mark Jansen
05637a5e3d [MSI] Abuse SE_DynamicShim until we have proper shims integration
CORE-18362
2022-09-25 19:33:51 +02:00
Mark Jansen
93e88edbb6 [APPHELP] Implement SE_DynamicShim 2022-09-25 19:33:36 +02:00
Hermès Bélusca-Maïto
18d40ebe81 [BOOTDATA] hivesys.inf: Remove redundant fastfat "Start" entry.
The one in the [AddReg] section has the very same value.
2022-09-25 17:52:35 +02:00
Hermès Bélusca-Maïto
5901897933 [OPENGLCFG] Fix encoding of Japanese translation (was using Shift-JIS, now using UTF8).
Addendum to commit 555bec6a4.
2022-09-25 17:40:46 +02:00
Joachim Henze
63fa674782 [EXPLORER] Cleanup after last commit (#4722)
Improves code that was added by 0.4.15-dev-5078-g 46de3a22ac
without any review yesterday.

CORE-15369
2022-09-25 16:48:54 +03:00
Thamatip Chitpong
1f2b7e5a56 [MMSYS] Fix "Speaker settings" image transparency (#4716)
- Use 72x72 icon instead of a bitmap
- Use correct control position and size for IDC_SPEAKIMG
- VolumeDlgProc: Add NULL check for DestroyIcon and fix cleanup order

Addendum to 781c247b.
2022-09-25 16:46:30 +03:00
Andrei Miloiu
be04c6358a [DEVMGR] Update Romanian (ro-RO) translation (#4699)
Reviewed-by: Ștefan Fulea <stefan.fulea@mail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-09-25 11:44:41 +03:00
Stanislav Motylkov
328cc41192 [FREELDR] Allow to boot from FATX volume using vfatfs driver
Also copy vfatfs.sys to disk in 1st stage setup.
CORE-16216 CORE-16329 CORE-16373
2022-09-24 23:56:10 +03:00
Stanislav Motylkov
542e9f2ba0 [FS_REC][VFATFS] Update headers per our current coding style
No code changes. Addendum to 14c39362 and 6d65da93.
2022-09-24 16:24:08 +03:00
Hervé Poussineau
6d65da93e3 [FS_REC] Add FATX recognizer
CORE-16373
2022-09-24 12:12:33 +02:00
Hervé Poussineau
fa809fd2fe [VFATFS] Correctly init dirIndex/startIndex on FATX subdirectories
'.' and '..' entries do not exist on FATX subdirectories. We have to fake them when
enumerating the directory, and ignore them when creating a FCB from a directory entry.

CORE-16373
2022-09-24 12:12:33 +02:00
Hervé Poussineau
0979fb29e2 [VFATFS] Always provide a short name for FATX files (equal to long name)
If no short name is provided, driver will think that the partition is corrupted.

CORE-16373
2022-09-24 12:12:33 +02:00
Hervé Poussineau
b935bfe6cb [VFATFS] Return 'FATX' as FsType for FATX volumes
CORE-16373
2022-09-24 12:12:33 +02:00
Hervé Poussineau
15ea997774 [VFATFS] Use device name FatX, to not collide with fastfat.sys
CORE-16373
2022-09-24 12:12:33 +02:00
Hervé Poussineau
14c3936251 [VFATFS] Add it back to build on XBOX, with the name vfatfs.sys
Adapt some comments to new name.

CORE-16373
2022-09-24 12:12:33 +02:00
Katayama Hirofumi MZ
555bec6a49 [CPL][OPENGLCFG] Add Japanese translation (ja-JP) 2022-09-24 13:15:51 +09:00
Katayama Hirofumi MZ
b77b7919a1 [CPL][MMSYS] Improve Japanese translation (ja-JP) 2022-09-24 13:12:08 +09:00
Katayama Hirofumi MZ
8ee308d700 [CPL][LICCPA] Improve Japanese translation (ja-JP) 2022-09-24 13:09:12 +09:00
Katayama Hirofumi MZ
48141d2eb6 [HOTPLUG] Improve Japanese translation (ja-JP) 2022-09-24 13:07:03 +09:00
Katayama Hirofumi MZ
a509f9a30d [JOY] Add Japanese translation (ja-JP) 2022-09-24 13:03:59 +09:00
Katayama Hirofumi MZ
7f1c77c875 [SHIMGVW] Improve Japanese translation (ja-JP) 2022-09-24 12:33:22 +09:00
Katayama Hirofumi MZ
7b73da2c41 [SHELL32] Improve Japanese translation (ja-JP) 2022-09-24 12:31:07 +09:00
Katayama Hirofumi MZ
d29c27127d [EXPLORER] Improve Japanese translation (ja-JP) 2022-09-24 12:22:55 +09:00
Hervé Poussineau
3a32d5980c [ISAPNP] Generate hardware ids and compatible ids in upper case 2022-09-23 23:07:45 +02:00
Hervé Poussineau
f3506ee626 [SHELL32] Prevent use after free
'buffer' is local to the function, while m_sPath is an instance class member.
Fix that by calling the IShellLink::Resolve() function, which will allocate
and fill the m_sPath variable.

CORE-15229
2022-09-23 23:07:26 +02:00
Katayama Hirofumi MZ
f79e80c520 [USER32][IMM32] Use wcscspn instead of wcsspn
b4575ec and db00a75 were my mistakes.
CORE-11700
2022-09-23 13:50:24 +09:00
Katayama Hirofumi MZ
46de3a22ac [EXPLORER] Follow-up of #4718 (ba2cead)
Handle click OnNcLButtonUp instead of OnNcLButtonDown/OnNcLButtonDblClick.
CORE-15369
2022-09-23 08:25:27 +09:00
Katayama Hirofumi MZ
ba2cead8a2 [EXPLORER] 'Show Desktop' button should work on button up (#4718)
Follow-up of PR #4715. CORE-15369
- The 'Show Desktop' button of taskbar works on button up instead of button down.
- Add NULL checks for m_ShowDesktopButton.
- Fix hung-up in rebooting.
2022-09-22 23:01:12 +09:00
Katayama Hirofumi MZ
26efda4d8d [EXPLORER] Add 'Show Desktop' button at right edge of taskbar (#4715)
This PR adds a tiny button of window class "TrayShowDesktopButtonWClass" at right/bottom edge of taskbar.
This button allows the user to access "Show/Restore Desktop" feature by mouse.
You can toggle visibility of this button by registry value "TaskbarSd" in key "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced".
The button is themed when theme is available.
CORE-15369
2022-09-22 12:18:59 +09:00
Katayama Hirofumi MZ
34635e1585 [CPL][INTL] Realize automatic Japanese IME installation (#4705)
In intl.cpl, realize semi-automatic Japanese IME installation by checkbox "Install files for East Asian languages" by using rapps.exe. CORE-11700
2022-09-19 18:13:17 +09:00
Kyle Katarn
32c20ab112 [SHELL32] Fix property sheets that can't be closed due to failed init (#4709)
When a PropertySheet fails to init, that fact is being logged
and it shows an empty page, but it can't be closed.

Handle second failure properly by using FAILED_UNEXPECTEDLY macro.

CORE-18333
2022-09-19 04:06:47 +03:00
Kyle Katarn
456f9f96e7 [HOTPLUG] Add French (fr-FR) translation (#4703) 2022-09-19 02:14:23 +03:00
Andrei Miloiu
5f0132ee95 [APPWIZ] Update Romanian (ro-RO) translation (#4700) 2022-09-19 02:10:49 +03:00
Thamatip Chitpong
7244a4a2f5 [ZIPFLDR] Set large icon correctly (#4708)
Now it's correctly displayed in Alt+Tab window selection.
2022-09-19 01:56:35 +03:00
Joachim Henze
305aae75f5 [DDRAW] Handle DDLOCK_WRITEONLY in wined3dmapflags_from_ddrawmapflags() CORE-18378 (#4713)
Mutes the logging:
fixme:(dll/directx/wine/ddraw/utils.c:584) Unhandled flags 0x20.
gets logged many times per second.

It does affect several applications, e.g. the game 'Anno 1602' from 1998, and the 'Diablo 2 demo' from rapps,
For both games it can be observed with both: our VBEMP driver and the VBox4.3.12 3D-accelerated-driver.

Muting may improve performance a bit in such apps.
It gets logged although no missing features can be perceived visually in the rendering.

Fix it by importing Wine-commit b943c7910b3261c9603343369cd632f7a3b56bba
 ddraw: Handle DDLOCK_WRITEONLY in wined3dmapflags_from_ddrawmapflags().
 Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
 Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-09-18 20:53:30 +02:00
Mark Jansen
d84b76a69e [GDI32] Fix ExtTextOutA with ETO_GLYPH_INDEX
CORE-18365
2022-09-18 20:51:12 +02:00
Jérôme Gardou
75125228be [NTOS] Add some sanity checks when synchronizing PDEs 2022-09-17 13:48:56 +02:00
Katayama Hirofumi MZ
e5ebbc8afa [CPL] Boundary check of Control Panel applets (#4706)
- Check the boundary (i < NUM_APPLETS) of the variable i in CPlApplet functions.
- Use UINT type for the variable i.
2022-09-17 13:59:51 +09:00
Katayama Hirofumi MZ
37ccb9e594 [MEDIA][INF] The name of rapps in Japanese is too long (#4707)
Renaming: 「アプリケーション マネージャ」→「アプリ マネージャ」
2022-09-17 07:56:41 +09:00
Katayama Hirofumi MZ
fd46398b63 [INPUT] Fix IsRebootNeeded condition
If there is any IME HKL, reboot is needed.
Follow-up to #4666 (596f04b). CORE-11700, CORE-18364
2022-09-17 07:12:05 +09:00
Katayama Hirofumi MZ
75116d6b87 [USER32] Avoid szImeFileName buffer overrun
CORE-11700
2022-09-16 18:04:55 +09:00
Katayama Hirofumi MZ
b4575eccd7 [USER32] Don't allow invalid 'IME File' values
Improve security. CORE-11700
2022-09-16 18:01:19 +09:00
Katayama Hirofumi MZ
787bbf0693 [IMM32] Follow-up of db00a75
Add more invalid characters. CORE-11700
2022-09-16 17:54:15 +09:00
Katayama Hirofumi MZ
8a48446d11 [NTUSER] Use IS_CICERO_MODE() macro in co_UserActivateKeyboardLayout
CORE-11700
2022-09-16 17:41:12 +09:00
Katayama Hirofumi MZ
db00a75227 [IMM32] Don't allow invalid 'IME File' values
Improve security. CORE-11700
2022-09-16 17:38:48 +09:00
Katayama Hirofumi MZ
87f2950e1a [INPUT] Follow-up of #4666 (596f04b)
Reboot is still needed for IME settings.
CORE-11700, CORE-18364
2022-09-16 08:26:22 +09:00
Katayama Hirofumi MZ
596f04be6b [USER32][INPUT] Support various keyboard layouts (#4666)
- Fix IntLoadKeyboardLayout function to return the correct HKL value.
- Modify LAYOUT_LIST_NODE structure to add more information.
- Fix LayoutList_GetByHkl function to choose the IME HKLs correctly.
- Ignore DELETED entries correctly.
- Improve UI/UX.
CORE-11700, CORE-13244, CORE-18364
2022-09-16 08:09:37 +09:00
Artyom Ovsyannikov
3f411c5da7 [REACTOS] Various Russian (ru-RU) translation fixes (#4696)
Reviewed-by: Stanislav Motylkov <binarymaster@mail.ru>
2022-09-15 18:46:03 +03:00
Thamatip Chitpong
474f406496 [HOTPLUG] Add title bar icon (#4695)
- Add small icon to the title bar
- Set large icon correctly

CORE-15445
2022-09-15 17:54:10 +03:00
Andrei Miloiu
cd6c7272a4 [HOTPLUG] Add Romanian (ro-RO) translation (#4693)
Signed-off-by: Andrei Miloiu <miloiuandrei@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Reviewed-by: Ștefan Fulea <reactos-contributor@programmer.net>
2022-09-15 17:42:03 +03:00
Kyle Katarn
c994ba79d1 [MMC] Implement standard "About" menu action (#4639)
Reviewed-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-09-15 16:56:31 +03:00
Kyle Katarn
67d063cbc8 [SNDVOL32][MMSYS] Fix French (fr-FR) layout and translation (#4678)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Serge Gautherie <32623169+SergeGautherie@users.noreply.github.com>
2022-09-15 12:14:50 +02:00
Kyle Katarn
a623990b15 [SHELL32] Fix French message for "Overwrite Folder" confirmation message
[SHELL32] Fix French message for "Overwrite Folder" confirmation message
2022-09-15 12:08:34 +02:00
Stanislav Motylkov
0eb042b74c [INF] Update Russian (ru-RU) translation
Addendum to a03ef85b.
2022-09-14 23:48:21 +03:00
Stanislav Motylkov
c46b1d75f1 [HOTPLUG] Update Russian (ru-RU) translation
Addendum to 21824a25.
2022-09-14 23:44:17 +03:00
Dmitry Borisov
a03ef85b5a [INF] Add description for IDE-compatible controllers (#4690)
Add missing string. CORE-17256
2022-09-14 23:40:47 +03:00
Thamatip Chitpong
21824a2596 [HOTPLUG] Add missing string resources for applet (#4689)
Use `IDS_CPLNAME` for the window title.
This also fixes the missing title text on the taskbar.
2022-09-14 23:12:50 +03:00
Thamatip Chitpong
781c247bd3 [MMSYS] Multimedia Control Panel diverse fixes (#4572)
- Use Unicode (WCHAR) instead of TCHAR
- Code formatting
- Use string safe functions
- Close handles after calling `CreateProcess`
- Save sound path as `REG_EXPAND_SZ` only if the path
  contains '%' character, like Windows does
- Fix `wcsdup` leaks

Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-09-14 20:06:22 +03:00
Thamatip Chitpong
67f7971fa2 [INPUT] Fix taskbar icon and remove small icon hack (#4688)
- Use int for applet index (like other CPLs).
- Revert some changes from 976d48b.
2022-09-14 23:29:29 +09:00
Vitaly Orekhov
3647f6a5eb [LOGONUI] Make Logon UI compilable again (#4684)
Logon UI was excluded from CMake build, probably for not being compliant
with 'warnings are errors' standard introduced at some point.
In the future, I would probably try to make Logon UI usable
alongside with the classic msgina interface.

- Add logonui back to CMakeLists
- Replace 'wcscpy_s' Vista+ function with StringCchCopyW
- Exclude some unused functions

Signed-off-by: Vitaly Orekhov <crce2000@mail.ru>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2022-09-14 15:10:37 +03:00
Mark Jansen
c8f4e4de62 [REGEDIT] Fix possible buffer overflow 2022-09-13 20:49:00 +02:00
Katayama Hirofumi MZ
976d48baeb [CPL][INPUT] s/IDI_KEY_SHORT_ICO/IDI_CPLSYSTEM/ and small icon
The task icon of Taskbar was wrong...
2022-09-14 03:39:18 +09:00
Katayama Hirofumi MZ
8e110335e7 [USER32] Load keyboard layouts on logon correctly (#4686)
- Add IntLoadPreloadKeyboardLayouts helper function to load the layouts on log-on.
- In UpdatePerUserSystemParameters function, call CliImmInitializeHotKeys and IntLoadPreloadKeyboardLayouts functions.
CORE-16600
2022-09-14 02:58:28 +09:00
Jose Carlos Jesus
e215a088f9 [ATL] Fix window position to fit in screen area (#4512)
Clicking "Edit compatibility modes" button in the "Compatibility" tab
opens a window centered on the parent window. If we move the parent
window to one of the screen edges and then click this button again,
the new window will appear off screen.

Adjust position of created window, so now it would be completely visible.

CORE-17089

Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2022-09-13 18:00:45 +03:00
Joachim Henze
d7f75a88ea [SYSSETUP] Update German (de-DE) translation (#4679)
- Fix typos in existing translation
- Update new strings that were added during 0.4.15-dev'ing

Addendum to 3f053db3 and 6d09885c. CORE-18357
2022-09-13 16:22:51 +03:00
Serge Gautherie
8482972a41 [DOC] 3rd Party Files.txt: Fix Buslogic driver version (#4685)
Correct version is in the BusLogic958.rc file.
Addendum to 5ee633f7d7 (0.4.15-dev-4556).

CORE-18180
2022-09-13 15:30:13 +03:00
Serge Gautherie
8d6a11eaa3 [DOC] 3rd Party Files.txt: Add 3rdparty/ to some sdk/lib/ paths (#4642) 2022-09-13 15:08:45 +03:00
Katayama Hirofumi MZ
b6cabfd1f3 [BOOTDATA] Fix 'Layout Id' values of hivesys.inf
Fix them to Win2k3's settings.
CORE-11700
2022-09-13 15:50:18 +09:00
Katayama Hirofumi MZ
b76602ff22 [NTUSER] Fix UserSetDefaultInputLang by using reordering
- Move IntReorderKeyboardLayouts function.
- Fix UserSetDefaultInputLang function.
CORE-11700
2022-09-13 14:32:39 +09:00
Serge Gautherie
f308c6a2bc [NTFS] PrintAllVCNs(): Fix a typo in an ASSERT() (#4682)
It was introduced in 0.4.7-dev-590-g 5579428b4f.
2022-09-12 22:30:28 +03:00
Mark Jansen
96e3c7bcc5 [SHELL32] Only hide a window when there is a window to hide 2022-09-12 20:00:39 +02:00
Mark Jansen
d0ba8fd4a3 [SHELL32] Properly destroy window 2022-09-12 20:00:39 +02:00
Mark Jansen
a6b8d4f6f0 [SHELL32] Don't try to remove buttons on a nonexisting window 2022-09-12 20:00:39 +02:00
Joachim Henze
46ea5171bd [TASKMGR] Pixel-perfection for left border (#4680)
CORE-18061

This makes the left border 2 pixels smaller in
IDD_APPLICATION_PAGE and IDD_PROCESS_PAGE.

The goal is:
- matching XPSP3 taskmgr to 100% on left border.
- leaving more room for the content of the 2 SysListView32.
- better aligning left border of  IDD_APPLICATION_PAGE
  and IDD_PROCESS_PAGE to IDD_PERFORMANCE_PAGE
  upon tab-switching.

In addition: Update german (de-DE) translation:
Make wording of IDS_MSG_TRAYICONCPUUSAGE (used in tooltip)
match the wording used in IDS_STATUS_CPUUSAGE (used in status bar).
2022-09-12 14:26:19 +02:00
Kyle Katarn
3703bbd631 [NTOS:MM] Implement PeakCommitment (MmPeakCommitment, MmTotalCommittedPages) (#4650)
And return the corresponding values in SystemPerformanceInformation.
Lockless updating counters suggestion by Thomas Faber.
2022-09-12 14:22:52 +02:00
Hervé Poussineau
51dd0523c7 [SHELL32] Fill link path before initializing the dialog
This fixes the Target type, Target location and Target fields
in shortcut properties window.

CORE-15229
2022-09-12 08:14:03 +02:00
Artyom Ovsyannikov
167399cfa3 [SYSSETUP] Add Tango Desktop Project to the list of used projects (#4676) 2022-09-11 15:54:02 +03:00
Stanislav Motylkov
c4bd0db05d [MMSYS] Add proper description to Speaker Volume dialog
Spotted by Kyle Katarn.
2022-09-11 02:16:34 +03:00
Hervé Poussineau
b6d7571ebb [CMAKE] Set KDBG define only where required (fastfat, win32k, ntoskrnl) 2022-09-10 23:16:27 +02:00
Hervé Poussineau
9e19352492 [CMAKE] Set _WINKD_ define only where required (kernel and setuplib) 2022-09-10 23:16:26 +02:00
Hervé Poussineau
0676247932 [FLOPPY] Correctly return media changed information
If disk changed since last time, we must either return STATUS_IO_DEVICE_ERROR
or STATUS_VERIFY_REQUIRED, depending of VPB_MOUNTED flag.
This is already handled by the SignalMediaChanged() function.

CORE-18244
2022-09-10 22:52:00 +02:00
Mark Jansen
55343f04b0 [MSPAINT][EXPLORER][SHELL32] Enable ATL asserts in CMake
CORE-17505

In MSVC builds they would not work reliably when enabled in the precompiled header
2022-09-10 17:27:50 +02:00
Kyle Katarn
86addae3cc [SHELL32] Fix Assertion when opening "File" menu in MyComputer twice (#4675)
ReactOS explorer shell asserts when opening the "File" menu in MyComputer for the second time.
This is due to the cached copy of IContextMenu not being released before attempting to cache it again.

Fix based on the patch proposed by JIRA user I_Kill_Bugs

CORE-18353

Signed-off by: I_Kill_Bugs (original patch author)
2022-09-10 15:59:00 +02:00
Kyle Katarn
6dcc07c18d [NETSHELL] Fix Network Tray icon activity indication (#4669)
The network activity tray icon wasn't showing activity until the Properties
dialog was opened at least once.
This was due to the fact that the tray icon was initialized once with missing
initialization parameters for pContext (default state and Adapter index).
Fix this problem by adding the missing initialization.

CORE-4497, CORE-9017, CORE-15744
2022-09-09 23:51:51 +02:00
Thamatip Chitpong
d5382f91e6 [ZIPFLDR] Show icon on the taskbar (#4670) 2022-09-09 20:26:39 +02:00
Kyle Katarn
a1f6d8a3f6 [EXPLORER] Fix Start Menu context menu actions (#4643)
CORE-18336

The current design was not processing actions verbs correctly for some
Start Menu context menu actions (Properties, Open all users, Explore all users),
despite associated code being implemented.
This was due by incorrectly filtering command IDs, not routing to the appropriate processing.
2022-09-09 20:23:11 +02:00
Katayama Hirofumi MZ
5bd03d8b97 [NTUSER] Implement IntReorderKeyboardLayouts
This function is provided for KLF_REORDER flag.
CORE-11700
2022-09-08 11:00:04 +09:00
Katayama Hirofumi MZ
a4fa5ef435 [IMM32] s/Ime32LoadImeDpi/Imm32LoadImeDpi/
Typo. CORE-11700
2022-09-08 10:50:49 +09:00
Katayama Hirofumi MZ
020d7d582f [IMM32] Remove unnecessary NULL checks for function pointers
CORE-11700
2022-09-08 09:57:17 +09:00
Katayama Hirofumi MZ
8ba378c901 [IMM32] s/Imm32Is16BitMode/IS_16BIT_MODE/
CORE-11700
2022-09-08 09:43:43 +09:00
Katayama Hirofumi MZ
5b87c95e23 [IMM32] s/Imm32IsCiceroMode/IS_CICERO_MODE/
CORE-11700
2022-09-08 09:40:50 +09:00
Kyle Katarn
f47c261ad0 [DESKADP] Add some spacing between the "legend" and the data (#4668)
Follow up of PR #4665 (cb6b07ee).

Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-09-08 02:28:13 +03:00
Katayama Hirofumi MZ
e3f8f52f3d [BOOTDATA] Delete "Layout Id" from Japanese/Korean Keyboard Layout
CORE-11700
2022-09-07 17:40:51 +09:00
Mark Jansen
27bc31100e [STOBJECT] Add support for the mouse key tray icon 2022-09-06 21:11:09 +02:00
Mark Jansen
ab760e539d [PSDK] Add missing defines / argument names 2022-09-06 21:11:09 +02:00
Mark Jansen
8760852129 [PSDK] Add COWAIT_DEFAULT 2022-09-06 21:11:09 +02:00
Mark Jansen
334c7cee35 [STOBJECT] Keep the object alive while the thread is running,
Fix shutting down the thread.
2022-09-06 21:11:09 +02:00
Mark Jansen
f10d40f912 [KERNEL32] Fix BaseDefaultPath containing extra '.' 2022-09-06 21:09:38 +02:00
Katayama Hirofumi MZ
a5fa4891e5 [NOTEPAD] Follow-up of 'CJK font workaround'
- Revert some code.
- Add font name comments.
CORE-11700
2022-09-07 00:54:31 +09:00
Katayama Hirofumi MZ
5ecf017ce2 [NOTEPAD] CJK font workaround
Far East Asian users may not have suitable fixed-pitch fonts.
CORE-11700
2022-09-06 15:35:14 +09:00
Katayama Hirofumi MZ
2d725449d2 [NOTEPAD] Use DEFAULT_CHARSET instead of ANSI_CHARSET
Fix the font problem.
CORE-11700
2022-09-06 14:21:46 +09:00
Katayama Hirofumi MZ
cef42ec443 [NOTEPAD] Add STRING_DEFAULTFONT for default font
CORE-11700
2022-09-06 14:05:59 +09:00
Jérôme Gardou
98e8827a59 [AMSTREAM_WINETEST] Add missing dependency 2022-09-05 18:27:25 +02:00
Thamatip Chitpong
d73b6cedf2 [NOTEPAD] Improve UTF-8 encoding support and improve status bar (#4649)
- Add write support for UTF-8 without BOM.
- Add "UTF-8 with BOM" encoding to the "Save As" dialog.
- Show line endings and encoding on the status bar (like Notepad in Windows 10).
- Remove ignored WS_EX_STATICEDGE

- Add grip to the status window.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2022-09-05 18:21:27 +02:00
Stanislav Motylkov
6b70fff808 [DESKADP] Add Russian (ru-RU) translation. Addendum to cb6b07ee. 2022-09-05 16:24:16 +03:00
Kyle Katarn
cb6b07eec8 [DESKADP] Improve default display of advanced adapter properties (#4665)
+ fix caption width in french resources.
2022-09-05 15:01:41 +02:00
Andrej Bartulin
3b0417d48e [TRANSLATION] Croatian translation of games (Solitare and Spider) (#4664) 2022-09-05 14:58:00 +02:00
Katayama Hirofumi MZ
b03ca35fb5 [NEWDEV] Improve Japanese translation (ja-JP) 2022-09-05 11:41:25 +09:00
Katayama Hirofumi MZ
f1ddb6c15f [SYSSETUP] Improve Japanese translation (ja-JP) 2022-09-05 11:28:04 +09:00
Katayama Hirofumi MZ
85e292d58f [NTUSER][USER32][IMM32] Initialize pKL->piiex by using ImmLoadLayout (#4645)
To recognize IME, we have to initialize pKL->piiex.
- Add co_ClientImmLoadLayout and User32CallImmLoadLayoutFromKernel functions to call imm32!ImmLoadLayout on user mode from kernel.
- Use co_ClientImmLoadLayout in NtUserLoadKeyboardLayoutEx.
- Improve Imm32LoadIME to sanitize the IME table.
CORE-11700
2022-09-05 08:34:00 +09:00
Kyle Katarn
15a0f7adb0 [TASKMGR] Fix number formatting to respect NLS Number format settings (#4657)
TaskMgr currently does not respect local NLS settings and forces 3 digits + comma (US convention) formatting.
Fix this with a direct reuse of SH_FormatInteger() as already implemented in other places
(dll/win32/shell32/dialogs/filedefext.cpp ...)

- Removal of CommaSeparateNumberString() and replace with SH_FormatInteger().
- PerfDataGetText(): Use a switch structure.  Return TRUE iftext could be retrieved; FALSE if not.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2022-09-04 19:10:11 +02:00
Mark Jansen
15b54c4123 [CODEOWNERS] Remove automatic assignment from cmake/apitests 2022-09-04 15:28:43 +02:00
Kyle Katarn
b42ddce11a [NETSHELL] Fix "ghost" network activity when opening Network Status page (#4662)
Opening Network Status page creates a systematic "ghost" network activity,
activating RX+TX activity icon both on property page and tray, while no Rx/Tx.
This is due to pContext->dw[In|Out]Octets being initialized to 0 and compared
to refreshed interface data.

To circumvent this, copy refreshed interface data to the context on first update.
2022-09-03 23:30:57 +02:00
Sam Watson
7dc58ccb0c [THEMES] Improve text colors of Modern Dark theme (#4655)
- Update colors for all different font sizes.
- Update caption color for other fonts too.
2022-09-03 23:18:36 +02:00
Kyle Katarn
22f0c3a84a [TRANSLATION] French translation update (#4638)
Update of various French translation files for several modules:
CALC, LABEL, DXDIAG, MPLAY32, RAPPS, SHUTDOWN, SNDVOL32, EXPLORER, WINLOGON;
CONSOLE.CPL, MMSYS.CPL; NETCFGX.DLL, SHELL32.DLL, SHLWAPI.DLL, SYSSETUP.DLL
2022-09-03 23:12:29 +02:00
Kyle Katarn
7ed0284e8e [NTOS:EX] Fix returned number of handles for Idle System Process (#4661)
PsIdleProcess and PsInitialSystemProcess share the same handle table. This
leads ObGetProcessHandleCount() to report the same number of handles
when called on those system processes, when being enumerated by
NtQuerySystemInformation(SystemProcessInformation).

Instead, just return 0 for the handle count of the Idle process in SystemProcessInformation.
This is not done in ObGetProcessHandleCount(), since a separate
NtQueryInformationProcess(ProcessHandleCount) for the idle process should return
a non-zero value.

CORE-16577
2022-09-03 22:56:33 +02:00
Kyle Katarn
de5af76811 [TASKMGR] Fix overlapping controls (French only) (#4658)
Controls are sized with 0 pixel gap, which is OK in general but show an overlap upon selection.
Add the extra 1 pixel gap.
2022-09-03 17:29:26 +02:00
Kyle Katarn
f8c28b9773 [TASKMGR] Fix UI on SwitchTo for multiple application (#4652) 2022-09-03 17:27:50 +02:00
Kyle Katarn
6b2eeb0a29 [CONSOLE.CPL] Use translated resource rather than hardcoded text (#4647) 2022-09-03 17:22:14 +02:00
Kyle Katarn
f07741e631 [USRMGR] Replace old (leftover) debug MessageBox with Wine trace macros (#4640)
Remove leftover of debug code. CORE-18276
2022-09-03 17:19:41 +02:00
Katayama Hirofumi MZ
bb9c5e8e3e [KERNEL32] Fix kernel32.rc for UTF-8 codepage (#4648)
- Move #pragma code_page(65001) line.
CORE-18177
2022-08-31 12:04:21 +09:00
Katayama Hirofumi MZ
facc2837a1 [NTUSER] Move TL structure definition to ntuser.h (#4644)
- Move struct _TL and TL definitions from win32.h to ntuser.h.
- Modify the type of TL.pfnFree as newly-defined TL_FN_FREE function pointer.
CORE-11700
2022-08-30 09:35:27 +09:00
Katayama Hirofumi MZ
8222c0e6d8 [KBSWITCH][NTUSER] Revert Shift+Alt handling
The current Shift+Alt handling is buggy. The keyboard won't work frequently.
It dislikes system-side Alt (VK_MENU) key handling.
It seems like Shift+Alt handling should be in kernel.
CORE-10667
2022-08-28 20:15:33 +09:00
Thamatip Chitpong
efe25648a5 [SYSDM] General page: Auto-update the system uptime (#4616)
- Also insert curly-brackets for switch-case in GeneralPageProc
- Use correct printf data type for the system uptime

Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2022-08-28 13:20:17 +03:00
Artyom Ovsyannikov
5f16fbcd47 [TASKLIST] Add Russian (ru-RU) translation (#4630)
Reviewed-by: Stanislav Motylkov <binarymaster@mail.ru>
2022-08-28 13:00:03 +03:00
Katayama Hirofumi MZ
6970b545af [USER32] Follow-up of "Follow-up of 2ba41ad"
You are careless. Do test.
CORE-18338
2022-08-28 16:20:40 +09:00
Katayama Hirofumi MZ
8edc22a2ca [USER32] Follow-up of 2ba41ad
Be careful about every case.
CORE-18338
2022-08-28 16:17:58 +09:00
Katayama Hirofumi MZ
2ba41ad4e0 [USER32] Retry: Fix build against 0aa9d9f and 1d10671
CORE-18338
2022-08-28 16:12:55 +09:00
Katayama Hirofumi MZ
1d106717bf [USER32] Fix build against 0aa9d9f (uninitalized variable hKey)
2022-08-28T00:37:16.2978407Z d:\a\reactos\reactos\src\win32ss\user\user32\windows\input.c(671) : error C4700: uninitialized local variable 'hKey' used

CORE-18338
2022-08-28 16:06:21 +09:00
Katayama Hirofumi MZ
43108ba763 [KBSWITCH] Simplify checking NULLs
CORE-10667
2022-08-28 09:48:56 +09:00
Katayama Hirofumi MZ
0aa9d9fdb7 [USER32] Fix HKL keyboard list values (Retrial)
CORE-18338
2022-08-28 09:08:12 +09:00
Katayama Hirofumi MZ
5d123ce5f1 Revert "[USER32] Fix HKL value in IntLoadKeyboardLayout (#4632)" (#4637)
This reverts commit ea2d32b9eb.
2022-08-28 08:11:01 +09:00
Thamatip Chitpong
0c324e350e [CPL] Use MAKEINTRESOURCE instead of LoadString (#4631)
Fixes for ACCESS, DESK, INTL, MAIN, MMSYS, OPENGLCFG, POWERCFG, TIMEDATE, USRMGR, and WINED3DCFG.
2022-08-27 16:01:55 +02:00
Serge Gautherie
730b13daac [NTOS:MM] kdbg.c: Fix Argv[n] copypastas (#4634) 2022-08-27 15:58:54 +02:00
Katayama Hirofumi MZ
ea2d32b9eb [USER32] Fix HKL value in IntLoadKeyboardLayout (#4632)
The loaded HKL values were wrong. CORE-11700
2022-08-27 07:42:37 +09:00
Katayama Hirofumi MZ
83442919e4 [EXPLORER] Do WM_MOUSEACTIVATE.MA_NOACTIVATE on notification area
Don't activate taskbar when clicked the notification area.
CORE-10667
2022-08-26 08:07:54 +09:00
Timo Kreuzer
3aa3b3af56 [CRT] Implement portable ceil/floor 2022-08-26 00:44:46 +02:00
Timo Kreuzer
2943ea2cfe [CRT_APITEST] Add tests for ceil/floor 2022-08-26 00:44:46 +02:00
Katayama Hirofumi MZ
e8b830d6bf [KBSWITCH] Fix GetNextLayout for three or more languages (#4629)
Typing Alt+Shift should work cyclically.
CORE-11737
2022-08-26 06:33:39 +09:00
Katayama Hirofumi MZ
b4114030a2 [RAPPS] Really update progress bar text (#4633)
- Invalidate rectangle at CDownloaderProgress::OnSetText.
- Unsubclass the progress bar if necessary.
- Set zero to the progress for each download beginning.
CORE-14686
2022-08-26 06:29:19 +09:00
Katayama Hirofumi MZ
844d447e03 [RAPPS] Don't send WM_SETTEXT directly
Use SetWindowText and SetDlgItemText.
CORE-14686
2022-08-25 17:40:23 +09:00
Katayama Hirofumi MZ
261416ddb9 [KBSWITCH] Follow-up of 0991ced
- Used FW_NORMAL.
- Added NULL checks.
CORE-10667
2022-08-25 14:19:50 +09:00
Katayama Hirofumi MZ
c7ba53e3fb [NTUSER] Follow-up of 9e7c2ba
CORE-11700
2022-08-25 12:07:32 +09:00
Katayama Hirofumi MZ
9e7c2ba460 [NTUSER] Improve NtUserGetImeInfoEx / NtUserSetImeInfoEx
CORE-11700
2022-08-25 10:20:42 +09:00
Katayama Hirofumi MZ
4d724b6fbb [INPUT] Refactor LayoutList_Create (#4626)
LayoutList_Create function was too complicated. CORE-11700
2022-08-25 08:38:49 +09:00
Thamatip Chitpong
0ed302ef65 [INPUT] Use MAKEINTRESOURCE instead of LoadString (#4628) 2022-08-24 15:17:14 +09:00
Katayama Hirofumi MZ
d4ed449ca2 [KBSWITCH] Total refactoring 2022-08-24 13:26:54 +09:00
Katayama Hirofumi MZ
82db0523e4 [KBSWITCH] Fix notification icon handle leak 2022-08-24 12:18:59 +09:00
Katayama Hirofumi MZ
eca08cfe98 [KBSWITCH] Refactor WndProc 2022-08-24 11:57:29 +09:00
Katayama Hirofumi MZ
7151c30079 [USER32] Get/SetWindowLongPtr about PIMEUI (#4625)
In ImeWndProc_common, correctly get/set the PIMEUI value by Get/SetWindowLongPtrW. CORE-11700
2022-08-24 11:10:23 +09:00
Katayama Hirofumi MZ
3892252bc5 [KBSWITCH] Use StringCchCopy instead of lstrcpyn 2022-08-24 10:23:51 +09:00
Katayama Hirofumi MZ
0991cedca7 [KBSWITCH] Refactor CreateTrayIcon 2022-08-24 10:21:50 +09:00
Katayama Hirofumi MZ
f974f02881 [KBSWITCH] Fix menu handle leak 2022-08-24 09:11:36 +09:00
Katayama Hirofumi MZ
b4f73f040f [KBSWITCH][NTUSER] Realize Shift+Alt language switch (#4622)
- Fix co_UserProcessHotKeys on modifiers-only hot-keys.
- Add Alt+Shift hot-keys to kbswitch window.
CORE-11737
2022-08-24 07:31:46 +09:00
Katayama Hirofumi MZ
372a445ad6 [IMM32] Add CtfImmIsGuidMapEnable and CtfImmGetGuidAtom (#4621)
- Add CtfImmIsGuidMapEnable and CtfImmGetGuidAtom functions.
- Modify imetable.h and imm32.spec.
CORE-11700
2022-08-23 21:57:45 +09:00
Katayama Hirofumi MZ
f34b8460e3 [NTUSER] Use assignment-lock against THREADINFO.KeyboardLayout (#4620)
- Assignment and locking are managed by UserAssignmentLock/UserAssignmentUnlock.
- Synchronize ClientInfo->hKL to pti->KeyboardLayout->hkl.
CORE-11700, CORE-18317
2022-08-23 19:32:23 +09:00
Hermès Bélusca-Maïto
5cadc268ef [BOOT][SDK:CMLIB] Compile a CMLIB for FreeLdr / NT bootloader with correct definitions. (#4619)
This also allows using the CMLIB with any reduced functionality
that could be required at boot-time.
2022-08-22 22:08:02 +02:00
Stanislav Motylkov
95b3e7508e [OSK] Fix text label height for Russian (ru-RU) translation
Addendum to e59e6ba0.
2022-08-22 16:50:17 +03:00
Timo Kreuzer
e9a129c1e2 [NTOS] Remove useless functions 2022-08-22 11:22:08 +02:00
Timo Kreuzer
620f9ee71a [NTOS] Add MxCsr handling to trap handlers 2022-08-22 11:22:08 +02:00
Timo Kreuzer
92c798c657 [NTOSKRNL] Implement KiXmmExceptionHandler 2022-08-22 11:22:08 +02:00
Timo Kreuzer
76086220fa [CRT] Fix amd64 floating point control functions 2022-08-22 11:22:08 +02:00
Timo Kreuzer
39f11249ff [NTOS][RTL] Initialize MxCsr where missing 2022-08-22 11:22:08 +02:00
Timo Kreuzer
a82e46e521 [CRT_APITEST] Add tests for floating point control and status functions 2022-08-22 11:22:08 +02:00
Artyom Ovsyannikov
5a9efc4081 [DRWTSN32] Add Russian (ru-RU) translation (#4617)
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-08-22 01:54:03 +03:00
Artyom Ovsyannikov
3dd5599fc4 [TRANSLATION] Improve Russian (ru-RU) translation (#4615)
[WINEMINE][INF] Improve Russian translation for Minesweeper
[TIMEDATE] Improve Russian translation
2022-08-22 01:42:24 +03:00
Artyom Ovsyannikov
e59e6ba017 [OSK] Update Russian (ru-RU) translation (#4611)
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-08-21 23:46:38 +03:00
Katayama Hirofumi MZ
6c748ca8a9 [NTUSER] Rewrite NtUserUnloadKeyboardLayout (#4613)
- Add co_IntUnloadKeyboardLayoutEx (Win: xxxInternalUnloadKeyboardLayout), IntUnloadKeyboardLayout (Win: xxxUnloadKeyboardLayout) helper functions.
- Rewrite NtUserUnloadKeyboardLayout function.
CORE-11700
2022-08-20 09:45:06 +09:00
Katayama Hirofumi MZ
c06cccea22 [USER32] Adjustment for IME/IMM (#4610)
- Add IS_CICERO_MODE() macro.
- Append DWORD dwLastStatus to IMEUI structure.
- Modify ImeWndProc_common, ImeWnd_OnCreate, ImeWnd_OnImeSelect, and ImeWnd_OnImeControl functions.
CORE-11700
2022-08-18 10:55:11 +09:00
Katayama Hirofumi MZ
93955f37de [NTUSER][USER32] Define NtUserSetWindowLongPtr for non-Win64 (#4612)
- Add NtUserSetWindowLongPtr macro on non-Win64.
- Use NtUserSetWindowLongPtr instead of NtUserSetWindowLong.
CORE-11700
2022-08-17 17:23:40 +09:00
Katayama Hirofumi MZ
fd1e799123 [USER32] Insert curly-brackts for switch-case
Follow-up of #4607 (60be15f).
CORE-11700
2022-08-17 08:04:11 +09:00
George Bișoc
3b00f98b94 [NTOS:SE] Fix new dynamic length calculation in TokenPrimaryGroup case
Not only primary group assignation was broken but new dynamic length calculation is also broken. The length of the captured SID is not taken into account so the new dynamic length gets only the size of the default ACL present in an access token.
Therefore, the condition is always FALSE and the code never jumps to the STATUS_ALLOTTED_SPACE_EXCEEDED branch because the length will always be small than the charged dynamic length.

Addendum to 86bde3c.
2022-08-16 20:27:27 +02:00
Thamatip Chitpong
3bd822366c [THEMES] New restore window button for Lautus and Mizu themes (#4590)
The original file for Lautus theme is made by JIRA user name Start.

CORE-15101 CORE-15936
2022-08-16 17:40:16 +03:00
Katayama Hirofumi MZ
e44e151840 [NTUSER] Empower co_UserActivateKeyboardLayout (#4608)
- Add code to co_UserActivateKeyboardLayout function for IME.
- Add IntImmActivateLayout helper function.
CORE-11700
2022-08-16 22:03:54 +09:00
George Bișoc
86bde3c76a [NTOS:SE] Fix the primary group assignation in TokenPrimaryGroup class case
With current master, what happens is that when someone wants to assign a new primary group SID for an access token, it results in an instant page fault because the primary group variable doesn't get assigned the dynamic part's address.
So the primary group variable gets an address which is basically a representation of the ACL size, hence the said address is bogus and it's where the page fault kicks in.

CORE-18249
2022-08-16 13:05:44 +02:00
Luke Luo
626fd4d240 [TRANSLATION] Improve Korean (ko-KR) translation (#4574)
- [SHELL32] Update Korean translation
- [EXPLORER] Update Korean translation

Reviewed-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
Reviewed-by: Seungju Kim <admin@manateeshome.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-08-16 13:02:25 +03:00
Chan Chilung
ac87259fa2 [TRANSLATION] Update Traditional Chinese (zh-TW) translation - Jun 2022 (#4570)
- [REG] Update zh-TW translation
- [DISKPART] Update zh-TW translation
- [HHCTRL.OCX] Update zh-TW translation
2022-08-16 13:00:11 +03:00
Katayama Hirofumi MZ
fe8f80610e [NTUSER] Send WM_IME_SYSTEM:IMS_LOADTHREADLAYOUT at IntCreateWindow (#4606)
- Send WM_IME_SYSTEM:IMS_LOADTHREADLAYOUT message at IntCreateWindow function.
CORE-11700
2022-08-16 08:02:49 +09:00
Katayama Hirofumi MZ
60be15ff5d [USER32] RealDefWindowProcA/W WM_IME_SYSTEM handling (#4607)
- Add WM_IME_SYSTEM message handling on RealDefWindowProcA and RealDefWindowProcW functions.
- Improve WM_IME_... messages handling.
- s/IMMGWL_IMC/IMMGWLP_IMC/
- Don't set IMMGWLP_IMC value to the default IME window.
CORE-11700
2022-08-16 08:00:47 +09:00
Katayama Hirofumi MZ
eb674f353e [IMM32] Reduce magic numbers from CtfImmSetLangBand
CORE-11700
2022-08-15 23:00:54 +09:00
Katayama Hirofumi MZ
f9a11d1e0b [IMM32] Add 'Win:' comments more
CORE-11700
2022-08-15 21:46:33 +09:00
Katayama Hirofumi MZ
379188acfe [NTUSER] Refactor NtUserUnloadKeyboardLayout (#4605)
- Add IntHKLtoPKL, co_UserActivateKeyboardLayout, IntReorderKeyboardLayouts, and co_IntActivateKeyboardLayout helper functions.
- Rewrite NtUserUnloadKeyboardLayout by using helper functions.
CORE-11700
2022-08-15 08:25:06 +09:00
Katayama Hirofumi MZ
e8ccc8516f [USER32] Call CliImmInitializeHotKeys on LoadKeyboardLayoutW epilogue (#4604)
Enable the IME hotkeys.
- Call CliImmInitializeHotKeys.SETIMEHOTKEY_ADD on IntLoadKeyboardLayout epilogue.
CORE-11700
2022-08-14 10:53:58 +09:00
Katayama Hirofumi MZ
25fcdc5c2b [USER32][IMM32][INCLUDE] Empower WM_IME_SYSTEM handling (#4603)
- Add code to ImeWnd_OnImeSystem function.
- Add CtfLoadThreadLayout and User32DoImeHelp helper functions.
- Define IMS_... constants (for WM_IME_SYSTEM wParam) and fix some magic numbers.
CORE-11700
2022-08-13 07:08:18 +09:00
Katayama Hirofumi MZ
5fa84035cf [IMM32] Renaming around ImmSystemHandler (#4602)
- s/IMM_UNKNOWN_PROCESS1/IMM_DELAY_SET_LANG_BAND/
- s/Imm32UnknownProcess1Proc/Imm32DelaySetLangBandProc/ (Win: DelaySetLangBand)
- s/Imm32UnknownProcess1/CtfImmSetLangBand/ (Win: CtfImmSetLangBand)
- s/Imm32SendChangeProc/Imm32SendNotificationProc/ (Win: SendNotificationProc)
- s/Imm32SendChange/Imm32SendNotification/ (Win: ImmSendNotification)
CORE-11700
2022-08-12 09:17:46 +09:00
Katayama Hirofumi MZ
1381cea2a7 [USER32] Refactoring on LoadKeyboardLayout(W/Ex) (#4601)
- Add IntLoadKeyboardLayout (Win: LoadKeyboardLayoutWorker) helper function.
- Use it in LoadKeyboardLayoutW and LoadKeyboardLayoutEx functions.
CORE-11700
2022-08-12 09:16:18 +09:00
Andrew Boyarshin
c15a9c1d09 [KERNEL32] lpNumberOfCharsWritten is optional for WriteConsole (#1079)
Some applications (and libraries, like replxx) rely on this undocumented behavior.
2022-08-12 01:58:18 +02:00
Katayama Hirofumi MZ
934e5212e4 [IMM32] Implement ImmWINNLSEnableIME (#4599)
- Implement imm32!ImmWINNLSEnableIME function.
- Rename CLIENTIMC_UNKNOWN3 flag as CLIENTIMC_DISABLEIME.
- Modify imm32.spec.
CORE-11700
2022-08-09 20:09:23 +09:00
Katayama Hirofumi MZ
d519b11a28 [NTUSER] Security: Follow-up of #4595 (#4598)
Improve security. CORE-11700
2022-08-08 21:23:49 +09:00
Thamatip Chitpong
f7d068e2bd [SHELL32] Fix "Fonts" and "Administrative Tools" icon incorrectly displayed after 8d520f3 (#4597)
CORE-18251
2022-08-08 18:46:20 +09:00
Katayama Hirofumi MZ
2220e566a2 [KEYBOARD][BOOTDATA][TOOLS] Rename keyboard layout files (#4596)
The keyboard layout file names of ReactOS are different from Windows' ones. It was one reason why ImmInstallIMEW fails.
- s/kbdbgm/kbdbu/ Bulgarian (Typewriter)
- s/kbdgrist/kbdgr1/ German_IBM
- s/kbdes/kbdsp/ Spanish (non-alternate!)
- s/kbdja/kbdjpn/ Japanese
- s/kbdko/kbdkor/ Korean
- s/kbdsk/kbdsl/ Slovak
- s/kbdsk1/kbdsl1/ Slovak (QWERTY)
CORE-11700
2022-08-06 08:03:46 +09:00
Katayama Hirofumi MZ
3e42f7b478 [NTUSER][USER32] NtUserGetKeyboardLayoutName and GetKeyboardLayoutNameW (#4595)
#4594 has proved that the 1st argument of NtUserGetKeyboardLayoutName has type PUNICODE_STRING.
CORE-11700
2022-08-06 08:02:31 +09:00
Timo Kreuzer
786017c5b6 [NTOS] Don't assert, when dispatching an exception to user mode fails
Instead continue with second chance handling.
2022-08-04 16:15:24 +02:00
Timo Kreuzer
b3a8f8611d [NTOS] Treat page faults with interrupts disabled as access violation 2022-08-04 16:15:24 +02:00
Timo Kreuzer
e45af60560 [NTOS:KE/X64] Enable interrupts when accessing user mode memory 2022-08-04 16:15:24 +02:00
Timo Kreuzer
902c6eee1e [NTOS:KE] Restore interrupts in KiSwitchKernelStack 2022-08-04 16:15:24 +02:00
Timo Kreuzer
ae39ad4d10 [NTOS] Add a hack for VBox 2022-08-04 16:15:24 +02:00
Timo Kreuzer
f96bee30ed [KERNEL32] Fix printing exception address 2022-08-04 16:15:24 +02:00
Timo Kreuzer
f8b6cc249e [HAL] Add missing I/O port to int 10 BIOS emulator 2022-08-04 16:15:24 +02:00
Timo Kreuzer
74014e74c0 [NTOS:KDBG] Improve x64 stack trace printing 2022-08-04 16:15:24 +02:00
Timo Kreuzer
090ccb3d8e [WIN32K] Add missing NULL checks
Also fix an old copy-pasta.
2022-08-04 16:15:24 +02:00
Katayama Hirofumi MZ
5f4db56486 [NTUSER] KLF_UNLOAD flag of NtUserGetKeyboardLayoutList (#4592)
This implementation enables KLF_UNLOAD flag awareness on listing the KLs.
CORE-11700
2022-08-03 12:45:10 +09:00
Katayama Hirofumi MZ
bfa92268da [WIN32KNT_APITEST] Follow-up of Follow-up of #4594 (54b3b73)
CORE-11700
2022-08-02 13:25:35 +09:00
Katayama Hirofumi MZ
8043706bf0 [WIN32KNT_APITEST] Follow-up of #4594 (54b3b73)
CORE-11700
2022-08-02 12:07:09 +09:00
Katayama Hirofumi MZ
54b3b73c08 [WIN32KNT_APITEST] Add NtUserGetKeyboardLayoutName testcase (#4594)
The type of the 1st argument of NtUserGetKeyboardLayoutName is doubtful.
CORE-11700
2022-08-02 10:47:49 +09:00
Katayama Hirofumi MZ
b9ecf4b055 [NTUSER] Release WinSta->spklList at IntWinStaObjectDelete (#4593)
Call UserAssignmentUnlock((PVOID*)&WinSta->spklList); in IntWinStaObjectDelete function.
CORE-11700
2022-08-02 10:46:37 +09:00
Katayama Hirofumi MZ
6c1b65d7a4 [NTUSER] Improve WINSTATION_OBJECT compatibility (#4591)
- Modify WINSTATION_OBJECT structure with inserting struct tagKL *spklList member.
- Add some C_ASSERT(offsetof(WINSTATION_OBJECT, ...) == ...);.
CORE-18252
2022-07-31 10:25:07 +09:00
Eric Kohl
23ecbb3ed5 [SECLOGON][ADVAPI] CreateProcessWithLogonW: Return process information to the caller 2022-07-24 01:08:13 +02:00
Katayama Hirofumi MZ
bfe959e62c [IMM32] Follow-up of #4588 (ffbdb7d)
CORE-11700
2022-07-23 12:42:54 +09:00
Katayama Hirofumi MZ
ffbdb7d39e [IMM32][USER32] ImmPutImeMenuItemsIntoMappedFile (#4588)
Implement inter-process menu item retrieving.
CORE-11700
2022-07-23 05:58:17 +09:00
Timo Kreuzer
fe777bb52f [NTOS:KDBG] Nuke KdbEnter and KdbpCliModuleLoaded
They are not used anymore. Also clean up some obsolete prototypes.
2022-07-20 23:57:42 +02:00
Timo Kreuzer
6778fa157f [SETUP] Don't default to MP builds, when KDBG is enabled
The reason is that KDBG and the MP kernel don't like each other much and crash hard, causing VBox to shut down.
2022-07-20 23:57:42 +02:00
Timo Kreuzer
31a5fa61bb [NTOS:KDBG] Add KdbpPrintUnicodeString
Calling normal unicode functions is not allowed at IRQL > APC_LEVEL, so calling _vsnprintf with unicode parameters from KDBG is invalid.
2022-07-20 23:57:42 +02:00
Timo Kreuzer
253362509e [KDBG] Fix x64 KDBG 2022-07-20 23:57:42 +02:00
Timo Kreuzer
04fe666590 [NDK] Add missing x64 unwind definitions 2022-07-20 23:57:42 +02:00
Timo Kreuzer
2881b77302 [CMLIB] Don't redefine PAGED_CODE() to nothing in cmlib.h except for cmlib_host
This header is included by ntoskrnl which effectively disabled all PAGED_CODE checks since 2015. Thanks Alex.
Instead define _BLDR_ when building cmlib, which will avoid trying to import KeGetCurrentIrql()
2022-07-20 20:36:22 +02:00
Katayama Hirofumi MZ
8d520f3c27 [MAIN] Improve mouse UI icons (#4583)
- Replace IDI_MOUSE_SPEED icon.
- Add and use IDI_MOUSE_HIDE icon for "Hide pointer while typing".
CORE-10728
2022-07-19 20:50:54 +09:00
Katayama Hirofumi MZ
9fc9180a1c [SYSDM] Don't use magic number (ja-JP) 2022-07-19 13:05:07 +09:00
Katayama Hirofumi MZ
255f43086d [EXPLORER] Fix assertion failure on start button (#4581)
CORE-18024
2022-07-18 22:20:25 +09:00
Katayama Hirofumi MZ
5f80670040 [CONSOLE] Improve Japanese translation (ja-JP) 2022-07-18 21:46:15 +09:00
Katayama Hirofumi MZ
a7f06eb480 [APPWIZ] Improve Japanese translation (ja-JP) 2022-07-18 21:44:25 +09:00
Katayama Hirofumi MZ
01643b8d9e [INTL] Improve Japanese translation (ja-JP) 2022-07-18 21:39:29 +09:00
Katayama Hirofumi MZ
971e33b734 [SYSDM] Improve Japanese translation (ja-JP) 2022-07-18 21:01:05 +09:00
Timo Kreuzer
bc9409daba [CRT] Add round and roundf and add it to msvcrtex to make clang v14 happy 2022-07-17 17:32:32 +02:00
Victor Perevertkin
83faa2da5e [GITHUB] Fix LLVM version for the clang-cl build (#4578) 2022-07-16 16:10:56 +03:00
Timo Kreuzer
45f75d5d32 [NTOS:KE/x64] Handle user faults in KiGeneralProtectionFaultHandler 2022-07-14 18:35:28 +02:00
Timo Kreuzer
f659ac5201 [NTDLL_APITEST] Add test for some user mode exceptions 2022-07-14 18:35:28 +02:00
George Bișoc
54a00aa8eb [CMLIB][NTOS:CM] Deduplicate other common definitions between CMLIB and the NTOS CM
Addendum to commit 8c2454e (r70605). Credits and courtesy go to Hermès BÉLUSCA - MAÏTO.

CORE-10802 CORE-10793
2022-07-10 14:35:53 +02:00
Tuur Martens
10126e7710 [NTOS:MM] Fix VADs being inserted even though the quota would exceed
Since we were charging the pool quota after the VAD insertion,
if the quota charge failed, the VAD would still have been inserted.
This commit attempts to resolve this issue by charging quota
before inserting the VAD thus allowing the quota charge to fail early.

Addendum to 884356a0. CORE-18028
2022-07-06 18:48:32 +02:00
Timo Kreuzer
f606b36cff [NTOSKRNL] Fix a bug in MiDeleteVirtualAddresses
When a PDE gets empty, we skip the address to the next PDE boundary, which might introduce an AddressGap, which wasn't handled before.
2022-07-05 19:29:05 +02:00
Eric Kohl
57c84dd658 [DISKPART] Fix magic values in CreateLogicalPartition() and CreatePrimaryPartition() 2022-07-03 14:10:02 +02:00
Serge Gautherie
b671b1cf8f [WIN32K:ENG] EngAlphaBlend(): Release EnterLeaveSource on error (#4560)
Part of CORE-11156

Co-authored-by: Carlo Bramini <carlo.bramix@libero.it>
2022-07-02 12:30:03 +03:00
Thamatip Chitpong
8a3db976a2 [EXPLORER] Fix taskbar icon display problem (#4538)
- Use SMTO_NOTIMEOUTIFNOTHUNG to get the icon with least timeout.
- Replace GCL_* consts with GCLP_* since we're using GetClassLongPtr.

Now the icon is correctly displayed for control panel applets.

CORE-18137
2022-06-30 16:10:47 +03:00
George Bișoc
4471ee4dfa [NTOS:SE] Properly handle dynamic counters in token
On current master, ReactOS faces these problems:

- ObCreateObject charges both paged and non paged pool a size of TOKEN structure, not the actual dynamic contents of WHAT IS inside a token. For paged pool charge the size is that of the dynamic area (primary group + default DACL if any). This is basically what DynamicCharged is for.
For the non paged pool charge, the actual charge is that of TOKEN structure upon creation. On duplication and filtering however, the paged pool charge size is that of the inherited dynamic charged space from an existing token whereas the non paged pool size is that of the calculated token body
length for the new duplicated/filtered token. On current master, we're literally cheating the kernel by charging the wrong amount of quota not taking into account the dynamic contents which they come from UM.

- Both DynamicCharged and DynamicAvailable are not fully handled (DynamicAvailable is pretty much poorly handled with some cases still to be taking into account). DynamicCharged is barely handled, like at all.

- As a result of these two points above, NtSetInformationToken doesn't check when the caller wants to set up a new default token DACL or primary group if the newly DACL or the said group exceeds the dynamic charged boundary. So what happens is that I'm going to act like a smug bastard fat politician and whack
the primary group and DACL of an token however I want to, because why in the hell not? In reality no, the kernel has to punish whoever attempts to do that, although we currently don't.

- The dynamic area (aka DynamicPart) only picks up the default DACL but not the primary group as well. Generally the dynamic part is composed of primary group and default DACL, if provided.

In addition to that, we aren't returning the dynamic charged and available area in token statistics. SepComputeAvailableDynamicSpace helper is here to accommodate that. Apparently Windows is calculating the dynamic available area rather than just querying the DynamicAvailable field directly from the token.
My theory regarding this is like the following: on Windows both TokenDefaultDacl and TokenPrimaryGroup classes are barely used by the system components during startup (LSASS provides both a DACL and primary group when calling NtCreateToken anyway). In fact DynamicAvailable is 0 during token creation, duplication and filtering when inspecting a token with WinDBG. So
if an application wants to query token statistics that application will face a dynamic available space of 0.
2022-06-29 10:06:37 +02:00
Stanislav Motylkov
846c9aa1fd [TRACERT] Fix displaying hop address on last ping timeout
- Update source file header per coding rules
- Store intermediate responses to display the hop address
- Add separate function to get response stats from buffer
- Add Cleanup label to free resources in a single place
- Move local variables around to allow Cleanup goto

CORE-18232
2022-06-28 23:42:09 +03:00
Stanislav Motylkov
35a816a24e [FREELDR][SDK] Sync copyright years with our banner and boot logo
Addendum to 831e2dea. CORE-18191
2022-06-27 21:42:01 +03:00
Stanislav Motylkov
831e2dea3d [FREELDR][SDK] Use "ReactOS Project" for consistency
CORE-18191
2022-06-27 21:38:14 +03:00
Stanislav Motylkov
bbccad0ed6 [INF] Set manufacturer as ReactOS Project for consistency
Also make it non-localizable. CORE-18191
2022-06-27 17:00:18 +03:00
Gary Sims
6881d8c624 [REACTOS] Remove references to ReactOS Foundation (#4557)
See https://reactos.org/wiki/ReactOS_Foundation for more information.

CORE-18191
2022-06-27 16:00:20 +03:00
Stanislav Motylkov
e1c89ce397 [PROCESSR] Fix INF file formatting only 2022-06-27 15:40:50 +03:00
Stanislav Motylkov
c24e09401b [CDMAKE] Remove module
We've been using mkisofs for 5 years now and are not looking back.
- Colin Finck
2022-06-27 15:14:03 +03:00
Timo Kreuzer
ba0d16f3b3 [CRT] Add missing OP_* constants in fpieee.h 2022-06-26 23:08:14 +02:00
Timo Kreuzer
b7c6170a5f [CRT] Add emmintrin.h
Implementations are taken from clang.
2022-06-26 19:59:41 +02:00
George Bișoc
5da5e644bb [NTOS:OB] Include the security descriptor charge when charging the paged pool quota of an object
On ObpChargeQuotaForObject function, the kernel will either charge the default object type charges or the specified information charges obtained from ObCreateObject API call. What happens is that if a paged pool charge is specified on ObCreateObject call the kernel will charge that
but when an object is about to be de-allocated, the amount of quota to return back to the system is the amounting of the paged pool charge specified previously by the ObCreateObject call plus the amounting of the security descriptor charge (see oblife.c / line 98).

This will result in a fatal crash with a bugcheck of QUOTA_UNDERFLOW because we are returning quota with bits of it that was never charged and that's SecurityDescriptorCharge. A QUOTA_UNDERFLOW bugcheck occurs in two following scenarios:

-- When installing Virtualbox Guest Additions and prompting the installer to reboot the system for you
-- When logging off and on back to the system and then you restart the system normally

This bug has been discovered whilst working on #4555 PR.
2022-06-26 19:47:02 +02:00
Timo Kreuzer
b85afdfd25 [CRT] Implement portable + amd64 asm version of fabs/fabsf
Note: older versions of ML64 are broken and don't understand the register form of movq.
See https://stackoverflow.com/questions/24789339/move-quadword-between-xmm-and-general-purpose-register-in-ml64
2022-06-26 19:13:47 +02:00
Timo Kreuzer
8a67170616 [CRT_APITEST] Implement tests for fabs/fabsf 2022-06-26 19:13:47 +02:00
Timo Kreuzer
96b847fd04 [NTDLL_APITEST] Fix RtlGetNtProductType test 2022-06-26 16:09:52 +02:00
Timo Kreuzer
47842d7847 [NTDLL_APITEST] Check whether changing the product type in the registry has an effect on RtlGetNtProductType 2022-06-25 22:57:18 +02:00
Timo Kreuzer
8521f6d7b5 [RTL] Implement dynamic function tables for x64 2022-06-25 21:45:47 +02:00
Serge Gautherie
ef1311b7a4 [IP] AddrCountPrefixBits(): Fix loop condition (#4556)
Properly handle BitTest reaching 0.

CORE-18225
2022-06-25 17:14:03 +02:00
Eric Kohl
d4a398fb13 [DISKPART] Support quoted command options in script files 2022-06-25 15:20:40 +02:00
Thamatip Chitpong
3a72a52ce8 [HHCTRL.OCX] Don't break WineSync. Addendum to 65d7fb1. (#4554)
Also minor code formatting for HH_LoadString.
2022-06-21 15:48:54 +03:00
Stanislav Motylkov
994e2f289e [DESK] Pass the list of all display modes to extensions
Also implement mode switching from adapter advanced settings.
2022-06-20 14:38:03 +03:00
Stanislav Motylkov
fced1c1192 [DESKADP][DESKMON] Notify property sheet that DWLP_MSGRESULT is set
When FALSE is returned, Apply button ignores validation result
and becomes disabled after clicking as if settings were applied.
Fix it by setting the return value to TRUE.

See https://docs.microsoft.com/en-us/windows/win32/controls/psn-apply
2022-06-20 02:14:02 +03:00
Jose Carlos Jesus
568383c9b9 [REGEDIT] Fix issue at Find registry key (#4341)
- If we dont select a item as a starting point to search from, we need to set
  pszValueName to the first value name in current subkey.

- Check pszSubKey length before calling RegFindRecurse.

- Set focus to subkey when we search for it.
2022-06-19 21:57:30 +02:00
Thamatip Chitpong
65d7fb1a82 [HHCTRL.OCX] Add help viewer window icon and default title (#4541) 2022-06-19 21:22:28 +02:00
Thamatip Chitpong
a50d309c48 [TASKMGR] Process page: Fix DevicePathToDosPath (#4537)
- Fix DevicePathToDosPath, don't use the same in-out buffer.
- Also simplify functions related to 59dcec1

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2022-06-19 20:52:06 +02:00
George Bișoc
0c569e1ff3 [NTDLL_APITEST] NtQueryInformationToken: write tests for TokenGroupsAndPrivileges 2022-06-19 17:22:04 +02:00
George Bișoc
9d2de519b2 [NTOS:SE] NtQueryInformationToken: implement TokenGroupsAndPrivileges
TokenGroupsAndPrivileges is the younger sister of two TokenGroups and TokenPrivileges classes. In its purpose there's no huge substantial differences apart that this class comes with its own structure, TOKEN_GROUPS_AND_PRIVILEGES, and that this structure comes with extra information.
2022-06-19 17:22:04 +02:00
Eric Kohl
f79ec61bdc [DISKPART] Print proper file system information for the FILESYSTEMS command 2022-06-19 16:12:10 +02:00
Doug Lyons
b6d1d1fd7d Modified WINESYNC.txt to show individual tests for msxml3 and update for schema 2022-06-19 15:48:42 +02:00
Doug Lyons
967db49174 Fix winetests/msxml3/schema.c crashes and sync to Wine-6.14 2022-06-19 15:48:42 +02:00
Thomas Csovcsity
1a6f523e01 [WINESYNC]: reg is now in sync with wine-staging wine-6.23
Used winesync.py script, commits which needed obious adjustments have explicit
note in commit message, that it is manually adjusted. Internationalization is
skipped while automated sync and done in last manual step.

Additonal manual adjustments to compile in ros are in this commit:
- wcsupr -> _wcsupr
- only 3 arguments for swprintf, instead of 4 in wine
- disable tests for "/reg:32" and "/reg:64", because they fail on w2k3

Manually addjusted base/applications/cmdutils/reg/lang/zh-CN.rc while rebase to
actuall master (4a66cbb224) on 19.06.2022
2022-06-19 14:13:00 +02:00
winesync
958d4a884a [WINESYNC] reg: Use the standard va_list instead of __ms_va_list.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 942f9f71575d4a53ae032360e03f1297be1319f7 by Alexandre Julliard <julliard@winehq.org>
2022-06-19 13:06:39 +02:00
winesync
29992c17f1 [WINESYNC] reg: Support use of registry views in the 'copy' operation.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50962
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 04d52eb83fa5c37cfe1100f435e36c2f78918338 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:39 +02:00
winesync
be726bd769 [WINESYNC] reg/tests: Test use of registry views when copying registry data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d92f26ed1264ec80f97c0a45a59b986f0b9cae38 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:39 +02:00
winesync
35b9e2d380 [WINESYNC] reg: Support use of registry views when exporting registry data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fcf79426147adf0d9f1d80b0cf24d0b6abd8bf59 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:39 +02:00
winesync
bac2e89b05 [WINESYNC] reg/tests: Use correct file and line arguments with delete_file().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0b5ba1d0be04f7c6bc0e53e9a28984cf2941b4bc by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:39 +02:00
winesync
54f7d655e4 [WINESYNC] reg/tests: Split 'export' syntax tests into a separate function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 959ea6677ea0571c5042a5ec5bec33fb5a5f1dc6 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:39 +02:00
winesync
73ac2fc096 [WINESYNC] reg/tests: Test use of registry views when exporting registry data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fee692178cebd33220027ad6038f6acd8185b77f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
4e25c2d09b [WINESYNC] reg/tests: Add registry view syntax tests for the 'import' operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 49cde0995827b24aa9c1ef1b6a0372797f4166e0 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
9f70f13ee7 [WINESYNC] reg: Support use of registry views in the 'import' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0c71a9879d894e4b82de2909c9c44e36c0bbb35e by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
bed77337e8 [WINESYNC] reg/tests: Test use of registry views when importing keys and values.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f2ce614d85091500c071f9b7234f17d5d6418727 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
7beb1390e2 [WINESYNC] reg/tests: Split 'import' syntax tests into a separate function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e3d14e66f71193faeb532c28b5b5565d5ea9b12f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
c69933739b [WINESYNC] reg: Support use of registry views in the 'query' operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8eef4a873513cca9ffea61fb225fa8a9c8ac784d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
5caeeb0399 [WINESYNC] reg/tests: Check all error codes in delete_tree() before returning.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 48c73868720606ab62ae089ee3b9c978736bd530 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
2592a360a0 [WINESYNC] reg/tests: Test use of registry views when querying registry values.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 45955658e18b65d3af701885e2cfa58bd0c95ceb by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
df1bb03b05 [WINESYNC] reg/tests: Don't verify key deletion after calling delete_tree().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3186a0046336e82a2e8133f8a5958e6250c6fe61 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
2d9dfc03d8 [WINESYNC] reg/tests: Verify key opening and key deletion in delete_tree().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5115e51adb103f023600269ddc1833386fcc1e79 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
4e13fbcfcc [WINESYNC] reg/tests: Test use of registry views with the 'query' operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 76b30097525f755f572d835b0187d9496941d985 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
e89696846f [WINESYNC] reg/tests: Split 'query' syntax tests into a separate function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a899d743c585fe8004c41f12cf0a080ebe622fd1 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:38 +02:00
winesync
129ed8f5fb [WINESYNC] reg: Support use of registry views when deleting registry keys.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 31f070f7d3e312942d72e774a4a7dbd21b655a31 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
fde082ff99 [WINESYNC] reg: Support use of registry views when deleting registry values.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8d42cb9c1ca72e02b8961d6703aaa2e3ddfda5e2 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
db92c856fd [WINESYNC] reg/tests: Test deletion of keys and values using registry views.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 556121b1cafc2182edaeb7354caf46375205bef7 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
92e39357b8 [WINESYNC] reg/tests: Remove duplicate test from test_registry_view_wow64().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8ad9c21b056d9f3119c363e0f7e56198985d5b08 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
44c2f0d9d6 [WINESYNC] reg/tests: Modify delete_tree() to support the use of registry views.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d790c593490bfb363cf34ab2d00dddbaf04ddd15 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
aabda6f608 [WINESYNC] reg/tests: Move 'delete' syntax tests into a separate function.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7c9f372480511cba8abd90ed04480911d96036de by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
ad80ceabc3 [WINESYNC] reg: Support the use of registry views during the 'add' operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 304b80a9b5a6ed128dd8a89e22f05b99142310cd by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
334c2e278c [WINESYNC] reg/tests: Test key and value creation in 32-bit and 64-bit registry views.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 24d0d6f524d6c51cc5d8c909bf6cd942d6ae443d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
77b2d21e9d [WINESYNC] reg/tests: Modify add_key() to support key creation in registry views.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0d60749c218ae76645006e6273fc2f6a5ea87a58 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
64c8452688 [WINESYNC] reg/tests: Update delete_value() declaration to deconstify 'const HKEY'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ff0445a5de192b2984bb558ac54e7f4d54e96129 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
df92c0464b [WINESYNC] reg/tests: Modify verify_key_nonexist() to support registry views.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9780dfc01a460264b6088fe23eada214c21441bd by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
cd3b6fe7a9 [WINESYNC] reg/tests: Modify verify_key() to support opening of registry views.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fdceb5ed7e5ce058cf9a64564e116f1bbe42d5ea by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
ea4fae5116 [WINESYNC] reg/tests: Update reg_open() and reg_open_() definitions.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0eb85504b4b9bdeef8a402d39024e20ad99789a0 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:37 +02:00
winesync
0ea0084c73 [WINESYNC] reg/tests: Modify delete_key() to support use of RegDeleteKeyEx().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f06869199571466c989b0e75a8edfb55ad6e541a by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
9ad9ae45ac [WINESYNC] reg/tests: Test how values are overwritten when copying.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8104629672db54fcc13f05f980149d2cc4170e24 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
7d85b1aef4 [WINESYNC] reg: Prompt the user to confirm whether they want to overwrite existing values when copying a key.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48000
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aeeda123b1185e6d6f6c975354fe567c4573502e by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
07427368d3 [WINESYNC] reg/tests: Test whether the 'copy' command copies user-defined key classes.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 664f8b638d421540e73b4e046a9aa5e66f8cc4ff by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
20aa38c6e7 [WINESYNC] reg: Fail if the source and destination keys are the same when copying.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0abc002a3e232be3445241e435ef17ac89d6c947 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:36 +02:00
winesync
ded0675d66 [WINESYNC] reg: Support recursion in the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8d9a228e99e1252a0d82c88e6a64635548c478a6 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
da2d23fb94 [WINESYNC] reg: Partially implement the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b1ccb87d9debb1a07e35263a76b6e34a7dd6ee49 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
34aed2639a [WINESYNC] reg: Group resource IDs by source location.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8f997a8b9b75320449711d3b05241b5f1f580ac3 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
2964cf3b37 [WINESYNC] reg: Remove two unused string resources.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e4f3d51fdde4b762d2317ce7b2aa140ac030989b by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
67493a4006 [WINESYNC] reg: Fail if one or more arguments follow a help switch.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6c466296a7629487930d4d6e4fa7d7ae66a7bf61 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:36 +02:00
winesync
181292dc07 [WINESYNC] reg: Add initial support for the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ac32dd8abcdd93f5428ba93c8aff7f0bb5a7c2f2 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:36 +02:00
winesync
f6fb1eb081 [WINESYNC] reg: Fix a typo in a function definition.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 537cd26f7cf799bf51875d1bc4970ec79a1184a3 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
552256c17b [WINESYNC] reg/tests: Add key and value order tests for the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ca57a86074e6109fcc2254e3d58ff225f4335236 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:36 +02:00
winesync
927db6bec5 [WINESYNC] reg/tests: Add more data tests for the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id baf0254bbb617c3b21c5b068e645615418a5be19 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
6ae4684dca [WINESYNC] reg/tests: Add complex data and hex type tests for the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3115276367e61f98436f8ba2feee9da491f7d69f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
105971e68e [WINESYNC] reg/tests: Add missing return code checks.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 48cd2588be54f7ab659ae3733456c826101f4c27 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
d40c4ec10d [WINESYNC] reg/tests: Add data tests for the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bb609c6acbf53b822825e3077fe0996a85d5026d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
f27a0866a4 [WINESYNC] reg/tests: Add further syntax tests for the 'copy' command.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c0619c092962d1c14725ac6cdc84b8e80ecb09bc by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
f9a0d83961 [WINESYNC] reg: Update an error message.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fa4268dcbcfe0b1bcbe3adafb7e3dd542eb6d928 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:35 +02:00
winesync
e7137d6832 [WINESYNC] reg: Update the STRING_VALUEALL_FAILED resource string.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5bee1882c009d399d4e9082bcf75a4ea9b51bfe0 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:35 +02:00
winesync
6fa073aacd [WINESYNC] reg: Fail if access is denied when deleting registry data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab64b0e33972b31b648ee92922b1df78cb6b5a70 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
64312c4fd4 [WINESYNC] reg: Prevent buffer over-read when querying REG_NONE values with no data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 60c8dfdd0bbaff4a2369f884ec1a553a06735676 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
4f9404e600 [WINESYNC] reg: Avoid allocating zero bytes of memory when handling REG_BINARY data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1dd785d1490f64c33e89003453f7c82292d185d5 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
d8277eee6f [WINESYNC] reg: Allow the 'reg_data' pointer to be NULL.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e2dfb0aff42153f2c1a25e8c9b37ad10409aca36 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
a5469189ad [WINESYNC] reg: Only prompt the user to overwrite registry data if the given key already exists and [/f] is not supplied.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cf1e6d3f3fcb726062b957a973bb0a78b7e00eab by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
61d4db3fde [WINESYNC] reg: Fail if access is denied when adding registry data.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d433d1f122a85b7902b48bae1930eef503a239a5 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:35 +02:00
winesync
39593a1e16 [WINESYNC] reg: Add or modify the (Default) registry value if [/v] is not specified.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a0dc4d7ce37fa8cc515cd4c908245d12fc07cfae by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
1bfb496303 [WINESYNC] reg: Replace the 'reg_count' variable name with context-specific names.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2c73949a46c2dda10b544cef44c0f6c3623cc74e by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
5132711167 [WINESYNC] reg/tests: Update error messages.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 08786274e25461dc1af3684f0e46c896201b28cb by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
44774b38b2 [WINESYNC] reg/tests: Add two REG_DWORD tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 357601a01b894ecdd0e26f5493914192d7ccae6f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
a260cccef6 [WINESYNC] reg/tests: Fix a typo in a REG_DWORD test.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a8e961ecacb845b3fc613401431ae9ca37bf9d4b by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
fe627c0e6a [WINESYNC] reg/tests: Split the REG_DWORD_BIG_ENDIAN tests from the REG_DWORD tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 94b582b1a68cd07676618144537465bdf21d1847 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
6802956e33 [WINESYNC] reg/tests: Use string literals instead of a char buffer for REG_MULTI_SZ tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1110421da93ebd6cc2648008fed874a49b8bbf28 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
5e7302ebfd [WINESYNC] reg/tests: Add and amend tests adding a (Default) value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1aae492dcbb2a0a7725a9cff40edd6a355f7fc79 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
123e459be5 [WINESYNC] reg: Use correct error message if RegCreateKeyExW() fails.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dedcd7c100461cf8be46387ebd65b60488c13ecf by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:34 +02:00
winesync
40d62f3c5b [WINESYNC] reg/tests: Verify that only the (Default) value is overwritten when neither /v nor /ve is specified.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8203c5db0248d38f06af55411ac4f4c89976fad2 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
1aea6bdfcf [WINESYNC] reg/tests: Rework syntax tests for the 'copy' operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1ce21dbb5f2eed468c3748a2de1f25744e10e04c by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
d9ac771683 [WINESYNC] reg: Don't enumerate a registry key for subkeys if we know the key does not have subkeys.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 33cfc644a055a9bc88253ae8d8c824ad603e7a02 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
3dbd42081e [WINESYNC] reg: Print a new line when recursing and the current key has no registry values.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 35ccb87a767394ea3054c8890ad7b245e431290d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:34 +02:00
winesync
14b77379a7 [WINESYNC] reg: Only print the name of the registry key if it contains values or we are recursing.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ec0a799ea8884479d7b56b81fb9fdd106f1a751b by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
a3bf868efb [WINESYNC] reg: Do not print a line break after querying a registry key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f32816268ed5715c5bce20daf9bb20aa194a7127 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
f0c76942b7 [WINESYNC] reg: Consistently use 'hkey' for HKEY variables.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c809f9462455ffb0e03a9ae4057f0cd47c85ee5d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
a0060cdcee [WINESYNC] reg: Print the full key path without a trailing backslash.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e685718c3b701b67e1920a8e4f2ddce31d3ca800 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:33 +02:00
winesync
f42b63fd64 [WINESYNC] reg: Fail if a system key has a trailing backslash but no subkey path.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 797520db8f7eb708845891da6f08d3030393d6bc by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
f55096783d [WINESYNC] reg: Drop key output from the "Invalid system key" error message.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6d2ab37a44c6d0bd58504cbc3ff20d2828afc841 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:33 +02:00
winesync
4771673c8f [WINESYNC] reg/tests: Add tests for querying a key only containing subkeys.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8b0602023add5c530e4f257ebf07ebae8e4ffdba by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
d552b44ff8 [WINESYNC] reg/tests: Use 'hkey' in 'query' tests for consistency with other reg.exe tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c573fce35b80d60b38b720a82fee53941c7490ea by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
2535ff3f1b [WINESYNC] reg/tests: Only try querying an invalid key once.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9752dfeea82c48e2230bacbf9db9564d5562de02 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
00ef8711f9 [WINESYNC] reg/tests: Test key creation and initialization of the Default registry value.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e9412a8ae020fe614d96d20f20355d53593048cc by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
ba10b11f88 [WINESYNC] reg/tests: Only pass a newly created HKEY if it is used in later tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 559086af62254a1f82c25f4fd4c145d93c60b973 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
3969dcc3de [WINESYNC] reg/tests: Refactor 'add' tests into registry types, keys and syntax checks.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 45b66285c38462bb57e8ab8a577f8df2dba15363 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
16cc1ad771 [WINESYNC] reg/tests: Test output of keys with a trailing backslash.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f6566bf7493dea2511238ad59aae873168b16963 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:33 +02:00
winesync
e77afe91c9 [WINESYNC] reg/tests: Compare output of some 'query' recursion tests.
Recursively querying a registry key for a given value name produces an extra
line specifying the number of matches found.

This line is locale-specific, so we only exclude it from the comparison
on a test-by-test basis.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f4b4398d797382f238f6a21da259fed0d0e2a286 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
5132d26c4c [WINESYNC] reg/tests: Compare 'query'test output with expected output.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5983247c3a5a7b5b64498a2cdff0eadf5edc47b5 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
a12c844899 [WINESYNC] reg/tests: Give 'query' tests some structure.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5bc2af7b1cf2e4e56311dad77acd8f67b3b7a13f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
b12d798037 [WINESYNC] reg/tests: Reorder failing 'query' tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3d772fe408970f6a1aad02321f21706408dd92e9 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
b6bc8e1371 [WINESYNC] reg: Allow /reg:32 and /reg:64 switches to be passed via the command line.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44755
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2b900e1c38d9bed0901ea036488e896e6df0cbe9 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:32 +02:00
winesync
9cf114d789 [WINESYNC] reg: Print additional help messages when syntax is invalid.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 010cb1b4057550b2eb6c371db5ba5a8d11ef337e by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
a1330dea51 [WINESYNC] reg/tests: Add tests for trailing backslashes after the system key.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a47829e13d639831ab9f36ba4592b840259e6f80 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
b6ad4f3d27 [WINESYNC] reg: Remove unneeded ternary operator in RegDeleteValueW().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fa24d458f5d9663fbefb1eb7406961b1c6ec3def by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
d472925c90 [WINESYNC] reg: Avoid non-portable Unicode character.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 495d9b5fb3ab5bab885f9fe80cd6952cc4bbca6c by Alexandre Julliard <julliard@winehq.org>
2022-06-19 13:06:32 +02:00
winesync
a1c74056d1 [WINESYNC] reg: Only call get_long_key() when operations require it.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 07fdd5036ca40fd4f0475583b6e410192576d804 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
091880d29b [WINESYNC] reg: Abort 'query' operation when parsing command-line arguments that are not switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2c7d74594f2bd421f6d904f334171a198a13c66e by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
fa6d473e3d [WINESYNC] reg: Abort 'delete' operation when parsing command-line arguments that are not switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 51e83dec2959ce332264223832abc1a5f09dbf34 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
0a5bdf825b [WINESYNC] reg: Abort 'add' operation when parsing command-line arguments that are not switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b2ead1ffcc8d28b488b561e8c5a9e3cc964699a3 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:32 +02:00
winesync
6c0f70db4d [WINESYNC] reg: Better indicate when a registry value is not found.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b80da20656feda99f9c6e749f5cd6d6f3c242cd3 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
9a8e4a271a [WINESYNC] reg: Prepend 'reg:' to two message strings.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fbecd56db8889f9d349c2f807348cdddf397eab1 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
235d5af3af [WINESYNC] reg: Add a new message to indicate when a registry key fails to import.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9b7a5cfb0e709e4434575daf960f803338bdf6bd by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
e11511da86 [WINESYNC] reg: Add a message to better indicate when a specified registry key is not found.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fa2ed01352f8f027625d464915cd953e10766d73 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
9b424b0080 [WINESYNC] reg: Improve initial syntax checks during the 'export' operation.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4df5c1641e7091f42c2313b275d999f2b9d25eff by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
ec55298764 [WINESYNC] reg: Use wide-char string literals in export.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1b746c1e1c4da4a07a1293fe9e60429867c86697 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
aae71dcb75 [WINESYNC] reg: Use wide-char string literals in import.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1fadcf240997f77b4bf31f708893051c94e299b2 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
5eb878fe9c [WINESYNC] reg: Use wide-char string literals.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0c73f95b336ba2ae4b49fa7f652c622ce47038c5 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:31 +02:00
winesync
b1bb43c991 [WINESYNC] reg: Use RegCreateKeyExW() instead of RegCreateKeyW().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aaf503e1de3f476639113b7ab7988c8628529e03 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
cb66fe28ba [WINESYNC] reg: Fail if duplicate command-line switches are passed to 'reg add'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 08976b3ee0db827bc5add829de1f148da89a6362 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
65957cc65b [WINESYNC] reg: Parse 'reg add' command-line arguments in add.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9138f5893c2eb7cafabdd8ed49b99a633eeda462 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
409d7663c1 [WINESYNC] reg: Parse 'reg delete' command-line arguments in delete.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 434c345e41222ae6eebe734e655a32bfd51871ae by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
89f0bf94a3 [WINESYNC] reg: Update a comment.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cb749592e728119bdd5a30a1080a90cf1a53546a by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
6b9db85aaf [WINESYNC] reg: Use RegOpenKeyExW() instead of RegOpenKeyW().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eee0c1f8f97d2d77118abb692e277dd440eed693 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:31 +02:00
winesync
8dc46f32b0 [WINESYNC] reg: Fail if duplicate command-line switches are passed to 'reg query'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2c84ec7ee04ab03883907691f115e01a7165b6e9 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
354e15827d [WINESYNC] reg: Parse 'reg query' command-line arguments in query.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8e7738be92888c3aae19ab799d232d3f5112254c by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
1b3f59f879 [WINESYNC] reg: Add extended help for supported operations.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e319a463a20b060c059de36058624639e04c12a0 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:30 +02:00
winesync
949e2a8ccc [WINESYNC] reg/tests: Test whether a .reg file extension is required when exporting.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cd03238dd0174382c503d7b6771e803d876a2fbf by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
6d2c3a08bb [WINESYNC] reg/tests: Test whether overwriting a registry key modifies existing keys and values.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 89251073c7b7a919ca7c3450d53744921ac2979c by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
26226dc572 [WINESYNC] reg/tests: Add tests for duplicate command-line switches.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a87a380a75723e0aa0e257c7efcc3024b56fb49d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
68d5548fd5 [WINESYNC] reg: Use malloc(), realloc() and free() from stdlib.h instead of wine/heap.h.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id be718697a2e1b30944c019218ef635f6737503d5 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:30 +02:00
winesync
9b91b79551 [WINESYNC] reg: 'export' sorts before 'import'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 42420f4d6c13cc4818e10c9b0cd9ee64c3715db3 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
fb4f651902 [WINESYNC] reg: Use 'argvW' array naming in export.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d37375e47033f92375ec4a431b5c3c2f28dd5829 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustment needed
2022-06-19 13:06:30 +02:00
winesync
b4d8b76a2f [WINESYNC] reg: Move 'import' syntax checks to reg_import().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4cbf47054fc7d95bcbab368fa53fc71908472309 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
f16c791548 [WINESYNC] reg: Simplify basic syntax checks.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8801118e384b7388a0fa5c43b5540bfd7f257ab6 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustments needed
2022-06-19 13:06:30 +02:00
winesync
01c1091e51 [WINESYNC] reg: Merge common header #includes into reg.h.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7803c53cfe6635a5d3e0d9f58e743235746ec9d2 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
fa84e69673 [WINESYNC] reg: Use is_switch() where possible.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab94653e8bb093b88406f7c509c7157ac7033f28 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:30 +02:00
winesync
bcb87edb6a [WINESYNC] reg: Split 'add' functions from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e7d92d5e97f89a409db0dd091419b4f1bfe7ed4 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
6fc87692b3 [WINESYNC] reg: Split 'delete' functions from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 81a3eecc3c2e7ddced2f25cabc6de47101fd4fb1 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
761c3c9835 [WINESYNC] reg: Split 'query' functions from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b80de8721690947bcd2e86b658b261f201002039 by Hugh McMaster <hugh.mcmaster@outlook.com>

manual adjustments needed
2022-06-19 13:06:29 +02:00
winesync
1007673889 [WINESYNC] reg: Stop parsing REG_SZ values containing NUL character sequences.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 272d35afc6905dfdf1ffcf0ef2963e3bded1303d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
252e8fd1c7 [WINESYNC] reg/tests: Try exporting registry values with escaped null characters.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 53fd4df85f004597161a26d86333755e7cbff0ff by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
60a4a6313b [WINESYNC] reg/tests: Try importing registry files with escaped null characters.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1c2b96699973e198e72a01a969af0876387f08e1 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
dbff9b0183 [WINESYNC] reg/tests: Try deleting strings containing escaped null characters.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aa98e3f6da78135ecffaa50bb78ad906dfd4570d by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
2d45084d7f [WINESYNC] reg/tests: Always specify the expected exit code in error messages.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 73f69d66b342af4c8339c23739ebeb1ff359e78b by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
bfe2251b54 [WINESYNC] reg/tests: Update value names in 'add' overwrite test.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 37ad10d92ab71e69475bdf69ff3609fae5d701b7 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
1e0e137f14 [WINESYNC] reg/tests: Add some tests for strings containing the characters backslash zero.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c5b7f04eea2d88ce8b2192168d0cb9dba340551f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
8789d86699 [WINESYNC] reg/tests: Group REG_SZ default value tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f5c24e2c341f872c8ed45c347b2fb357f9cedd7e by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
0790755208 [WINESYNC] reg/tests: Pass __FILE__ from the caller so the correct filename is shown in error logs.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e3a738b1562de68bd92c4be6bc948ea31f6a2d79 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:29 +02:00
winesync
0b6ea9f2d7 [WINESYNC] reg/tests: Comprehensively check for elevated privileges before starting Windows 3.1 import tests.
The existing check fails to adequately determine the program's elevation
status on systems where the test key already exists. This can cause all
Windows 3.1 import tests to fail on systems with a standard user account.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 17023a8100a62852bbad342e5e7c705cafae9a1f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
2161165dca [WINESYNC] reg/tests: Fix copy/paste typo in reg.exe availability check.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b369af9ac5861f0ec49933ef657a53feeafefc21 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
a09c8c41ee [WINESYNC] reg/tests: Rename reg.c to add.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3c2db20f66806074b047b0b3c76aa86ad79e3175 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
295a04df51 [WINESYNC] reg/tests: Split 'copy' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cc4cc7086faf087590d22b9b58b6c45386e181c8 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
15a1b9ab16 [WINESYNC] reg/tests: Split 'export' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 60701b02981980dbd821b59f46c102b6f80a79cb by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
22af0f3d73 [WINESYNC] reg/tests: Split Windows 3.1 'import' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fc5816a61e1f203b5c004d9fd25b43043954f386 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
b3c6571866 [WINESYNC] reg/tests: Split whitespace 'import' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 56d9d0f791046aeab85466e2ebadac63ce457f86 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
c67c2bb20a [WINESYNC] reg/tests: Split first sequence of Unicode 'import' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2e33ab5559419655584716669505e7943613d3bb by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
6498aac70c [WINESYNC] reg/tests: Split first sequence of 'import' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 58863f53316d2d88654d3a18c9481441dfabcb1a by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
7fcb8aca93 [WINESYNC] reg/tests: Split 'query' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 81a8938fa31de3d5a7a4c741582b4e5d9a2d1818 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
bcfd09deb7 [WINESYNC] reg/tests: Split 'delete' tests from reg.c.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d3f9eaeb54cd272cb34f2863c74b47e414c87bee by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
1b41b722d0 [WINESYNC] reg/tests: Add tests for forward and back slashes in key and value names.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3fd57fd995c1af3770fd72effcec874529f17b6c by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
d4dc3ccab1 [WINESYNC] reg/tests: Add additional tests with embedded NUL characters.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6c62ffeca7f381199bef1969452fcef46b979f0f by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:28 +02:00
winesync
f3c6b93bb6 [WINESYNC] reg/tests: Replace RegCloseKey() with the helper function close_key().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 93fbe09ed098f6356485c6390a533e04f6ff3959 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
3b511b56d7 [WINESYNC] reg/tests: Verify registry export after each empty key test.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5cacd496a14b8f83c8e0209bb00bf2ea4ce90e01 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
70f06b31a9 [WINESYNC] reg/tests: Always overwrite export test file during 'export' sequence.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b51b969a011c3efbddbbf29a312e49d0b5877faf by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
5b42e659ce [WINESYNC] reg/tests: Check for key non-existence with verify_key_nonexist().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 597a12420be2bee4e69b9400a075ae4393863573 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
4dbcf50583 [WINESYNC] reg/tests: Move /v* syntax tests to the 'add' and 'delete' test sequences.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e6e227f21de08c7ddfe3e48b3ceb2fef01b6c0a6 by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
855cf07c70 [WINESYNC] reg/tests: Ensure test key is fully removed before each sequence begins.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 405853adb53695c0fd3f7d38ac733dd6900a48dd by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
e163213a0f [WINESYNC] reg/tests: Check for elevated privileges before cleaning up the Windows 3.1 test key and running unit tests.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id add814af3eb7368961fe5b37a66c616e4bd97e4b by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
ee54c25871 [WINESYNC] reg/tests: Add initial syntax tests for 'reg copy'.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6cf0e7fe85ba2f9348cec4d4d555c5dac42033de by Hugh McMaster <hugh.mcmaster@outlook.com>
2022-06-19 13:06:27 +02:00
winesync
7b9269fc8e [WINESYNC] reg: FormatMessage() now reports ERROR_NO_WORK_DONE error for empty string.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f81d15beb690c5e08c5995b90aec8015218bee55 by Alexandre Julliard <julliard@winehq.org>
2022-06-19 13:06:27 +02:00
Eric Kohl
4a66cbb224 [DISKPART] Add help text for the FORMAT command 2022-06-19 08:28:53 +02:00
Eric Kohl
3ca37d6eaf [DISKPART] Support quoted options in commands 2022-06-18 13:27:56 +02:00
Eric Kohl
4a305266e6 [DISKPART] Add help text for the CREATE PARTITION EXTENDED command 2022-06-18 10:15:04 +02:00
Eric Kohl
cba4ffbb5d [DISKPART] Add help text for the CREATE PARTITION LOGICAL command 2022-06-18 01:05:27 +02:00
Eric Kohl
2be7af18fe [DISKPART] Implement the clean command 2022-06-17 01:37:26 +02:00
Eric Kohl
74870c1ae1 [DISKPART] Add help text for the CREATE PARTITION PRIMARY command 2022-06-16 15:20:46 +02:00
Eric Kohl
966d674de1 [DISKPART] Add help text for the REM command 2022-06-16 11:55:39 +02:00
Eric Kohl
82a2c5903e [DISKPART] Add help text for the DETAIL VOLUME command 2022-06-16 10:50:40 +02:00
Eric Kohl
9b10dcba15 [DISKPART] Add help text for the DETAIL PARTITION command 2022-06-16 00:33:10 +02:00
Oleg Dubinskiy
1a41e62073 [CLB] Enable the dll
Required by MS Regedit. It works as well with our clb.dll.
Now we lack only ulib.dll.
CORE-17385
2022-06-14 22:48:06 +02:00
Eric Kohl
66f6c1ab88 [DISKPART] Add help text for the HELP command 2022-06-14 19:43:38 +02:00
Eric Kohl
6f1c7edaa5 [DISKPART] Add help text for the LIST VOLUME command 2022-06-13 21:18:35 +02:00
George Bișoc
8e0da736b7 [NTOS:SE] Fix MSVC build 2022-06-13 20:12:32 +02:00
George Bișoc
93381263a1 [NTOS:SE] Remove redundant ReturnLength NULL check
In NtQueryInformationToken function, remove the useless and redundant NULL check for two primary reasons. First, DefaultQueryInfoBufferCheck already does the necessary probing validation checks and second, ReturnLength must NEVER be NULL!
If the caller does not respect the calling rules of NtQueryInformationToken, the caller is expected to be miserably punished.
2022-06-13 19:28:12 +02:00
George Bișoc
2d1805504e [NTDLL_APITEST] NtQueryInformationToken: write tests for TokenSandBoxInert 2022-06-13 18:17:10 +02:00
George Bișoc
5e1f292062 [NTOS:SE] NtQueryInformationToken: implement token sandbox inert querying 2022-06-13 18:17:10 +02:00
Eric Kohl
124fe7504e [DISKPART] Add help text for the LIST PARTITION command 2022-06-12 23:26:53 +02:00
Eric Kohl
7c90ea83ef [DISKPART] Add help text for the LIST DISK command 2022-06-12 16:15:18 +02:00
George Bișoc
d0d86ab588 [NTOSKRNL] Force a probe against ReturnLength on query & Misc ICIF stuff
NtQueryInformationToken is by far the only system call in NT where ReturnLength simply cannot be optional. On Windows this parameter is always probed and an argument to NULL directly leads to an access violation exception.
This is due to the fact of how tokens work, as its information contents (token user, owner, primary group, et al) are dynamic and can vary throughout over time in memory.

What happens on current ReactOS master however is that ReturnLength is only probed if the parameter is not NULL. On a NULL case scenario the probing checks succeed and NtQueryInformationToken fails later. For this, just get rid of CompleteProbing
parameter and opt in for a bit mask flag based approach, with ICIF_FORCE_RETURN_LENGTH_PROBE being set on DefaultQueryInfoBufferCheck which NtQueryInformationToken calls it to do sanity checks.

In addition to that...

- Document the ICIF probe helpers
- Annotate the ICIF prope helpers with SAL
- With the riddance of CompleteProbing and adoption of flags based approach, add ICIF_PROBE_READ_WRITE and ICIF_PROBE_READ flags alongside with ICIF_FORCE_RETURN_LENGTH_PROBE
2022-06-12 11:05:05 +02:00
Eric Kohl
ad9b930354 [DISKPART] Add help text for the SELECT VOLUME command 2022-06-12 09:32:40 +02:00
Eric Kohl
7bea98592f [DISKPART] Add help text for the SELECT PARTITION command 2022-06-11 22:34:07 +02:00
Eric Kohl
7dec75ff67 [DISKPART] Implement the SETID command 2022-06-11 14:31:55 +02:00
Eric Kohl
f06066dc6e [DISKPART] Add help text for the SELECT DISK command 2022-06-11 13:13:27 +02:00
Timo Kreuzer
318d696f0e [CRT] Implement xmmintrin.h
This includes inline functions for GCC/Clang.
Note: the previous GCC definition of __m128 was broken and didn't work.
2022-06-10 23:21:41 +02:00
Timo Kreuzer
9c8a2bbc81 [CRT] Implement mmintrin.h
This includes inline functions for GCC/Clang.
2022-06-10 23:21:41 +02:00
Timo Kreuzer
c34c5e29f0 [CRT] Move __INTRIN_INLINE to mingw32.h to be available everywhere
Also use __attribute__((artificial)) for clang, too.
2022-06-10 23:21:41 +02:00
Eric Kohl
84512b7abd [DISKPART] Add help text for the SETID command 2022-06-10 22:02:07 +02:00
George Bișoc
bac1bce605 [NTDLL_APITEST] Write tests for NtQueryInformationToken and NtSetInformationToken 2022-06-09 19:20:31 +02:00
Mark Jansen
81e0f74a7a [WIN32K] Conditionally enable IMM32
MFC42 applications only expect an IME window when on a DBCS system,
so they will capture this IME window as their 'main' window on non-DBCS systems.
CORE-18212
2022-06-08 19:19:59 +02:00
Hervé Poussineau
63f042a5cd [SDK:REACTOS] Fix packing of GEN_ADDR structure, used in some ACPI tables 2022-06-08 07:58:27 +02:00
Hervé Poussineau
2915d16543 [WIN32SS:USER] Do not write error message at end of enumeration in UserEnumDisplayDevices() 2022-06-08 07:58:12 +02:00
Hervé Poussineau
cd8305494c [WIN32SS:ENG] Fix handling of Acceleration.Level parameter (was not read anymore) 2022-06-05 14:49:47 +02:00
Eric Kohl
dd2c7ea3ce [DISKPART] Add help text for the UNIQUEID DISK command 2022-06-07 23:08:05 +02:00
Eric Kohl
da0bff2a50 [DISKPART] Implement the UNIQUEID command 2022-06-07 19:42:09 +02:00
Eric Kohl
c8f6440a78 [DISKPART] Implement the ACTIVE and INACTIVE commands 2022-06-06 11:23:11 +02:00
Dmitry Borisov
734cd5e842 [PCI][HALX86] Support PCI debugging devices
Also optimize the PCI bus scanning

CORE-17360
2022-06-06 01:47:21 +03:00
Eric Kohl
216d69c59e [DISKPART] Add help text for the DETAIL DISK command 2022-06-05 22:22:16 +02:00
Eric Kohl
be88af54e7 [DISKPART] Implements part of the FILESYSTEMS command 2022-06-05 18:23:08 +02:00
Eric Kohl
d3d5eae19e [DISKPART] Add the SET command as a SETID alias 2022-06-05 17:36:32 +02:00
Eric Kohl
c70f5033ec [DISKPART] Implement the OVERRIDE option for the DELETE PARTITION command 2022-06-05 10:30:55 +02:00
Eric Kohl
58eb4e5bde [DISKPART] Add success and failure messages for the DELETE PARTITION command 2022-06-05 08:47:46 +02:00
Tuur Martens
d31642c712 [NTOS:MM] Fix memory leak in NtAllocateVirtualMemory
When an allocated VAD's insertion fails, the VAD is not freed. This commit attempts to fix this behaviour.
2022-06-04 22:44:27 +02:00
Mark Jansen
b60408c9f1 [CI] Increase operations-per-run for the stale script 2022-06-04 20:35:01 +02:00
Eric Kohl
6c797bf86a [DISKPART] Report success or failure for CREATE PARTITION commands 2022-06-04 20:27:11 +02:00
Eric Kohl
e636b14d7e [DISKPART] Add help texts for the ACTIVE and INACTIVE commands 2022-06-04 13:36:17 +02:00
Eric Kohl
f3ff7ddd09 [DISKPART] German translation part 1 2022-06-04 11:44:57 +02:00
Hermès Bélusca-Maïto
79dbb73b6f [DISKPART] Fix build...
- Fix the LANGUAGE declaration in de-DE.rc (originally was copy-pasted
  from en-US, and thus caused the build break).

- Include de-DE.rc in alphabetical order in diskpart.rc
2022-06-02 14:03:11 +02:00
Eric Kohl
a3a8fdc84b [DISKPART] Add german translation 2022-06-01 23:25:54 +02:00
Eric Kohl
ca51f00049 [DISKPART] Get rid of PrintMessageString() 2022-06-01 00:46:45 +02:00
Oleg Dubinskiy
31139c253f [WIN32SS][NTDDRAW][NTGDI] Implement some DxEng* callbacks (#3638)
Implement the following DxEng* functions:
- DxEngAltLockSurface
- DxEngDeleteSurface
- DxEngReferenceHdev
- DxEngSelectBitmap
- DxEngSetBitmapOwner
- DxEngUnreferenceHdev

Update their prototypes and call the appropriate win32k functions
inside them, since they are already implemented. Also get rid of
now unused IntGdi(Un)ReferencePdev, whose were called only by dxeng,
and whose are not used anymore. In Windows, DxEng(Un)ReferenceHdev calls
PDEVOBJ_vReferencePDEV and PDEVOBJ_vDeferencePDEV directly (those
correspond to our PDEVOBJ_vReference and PDEVOBJ_vRelease accordingly).

Required by MS DirectDraw stack (ddraw.dll & dxg.sys). CORE-17561
2022-06-01 00:58:35 +03:00
Mark Jansen
491dae1708 [ROSAPPS] Remove 'theme/dump' reference code 2022-05-31 23:24:16 +03:00
Mark Jansen
9e1199713e [ROSAPPS] Remove 'stats' utility 2022-05-31 23:24:01 +03:00
Jose Carlos Jesus
d432436fed [TRANSLATION] Improve Portuguese (pt-PT) translation (#4522)
- [REGEDIT] [INTL] [DEVMGR] Improve pt-PT translation
- [W32TIME] Add pt-PT translation
- [BOOTDATA] Add pt-PT to hivesys.inf
2022-05-31 02:04:41 +03:00
Stanislav Motylkov
26b88af642 [WIN32SS] Add missing code parts for monitor handling
- [VIDEOPRT] Add stub for IOCTL_VIDEO_ENUM_MONITOR_PDO.

- [WIN32SS:ENG] Add missing checks and comments.

- [WIN32SS:NTUSER] Add missing monitor handling and comments.

Addendum to 31827c43. CORE-18197 CORE-11715
2022-05-30 15:28:44 +03:00
Stanislav Motylkov
31827c43b6 [WIN32SS] EnumDisplayDevices: Fill DeviceID field properly
- [VIDEOPRT] Return the real PhysicalDeviceObject in Win32k callbacks.

- [WIN32SS:ENG] Pass PhysDeviceObject into the GraphicsDevice structure
  and rename the destination field accordingly.

- [WIN32SS:NTUSER] Request hardware identifiers from device PDO and
  fill DISPLAY_DEVICE's DeviceID field with the first identifier.

Now it's correctly passed to the usermode, and Desktop Propertes applet
can open the video adapter device properties.

Thanks to Hervé Poussineau for the help.

CORE-18197 CORE-11715
2022-05-30 15:28:21 +03:00
Hermès Bélusca-Maïto
ee613a18eb [DISKPART] Fix build. Simplify PrintMessageString(). 2022-05-30 02:41:31 +02:00
Eric Kohl
c287c08b27 [DISKPART] Convert command help to messages and fix some texts 2022-05-30 01:09:08 +02:00
Stanislav Motylkov
488643583d [USETUP] Fix several typos in Russian (ru-RU) translation
CORE-18203
2022-05-29 23:46:19 +03:00
George Bișoc
9a2c62b544 [NTOS:SE] Reorganize the security manager component
The current state of Security manager's code is kind of a mess. Mainly, there's code scattered around places where they shouldn't belong and token implementation (token.c) is already of a bloat in itself as it is. The file has over 6k lines and it's subject to grow exponentially with improvements, features, whatever that is.

With that being said, the token implementation code in the kernel will be split accordingly and rest of the code moved to appropriate places. The new layout will look as follows (excluding the already existing files):

- client.c (Client security implementation code)
- objtype.c (Object type list implementation code -- more code related to object types will be put here when I'm going to implement object type access checks in the future)
- subject.c (Subject security context support)

The token implementation in the kernel will be split in 4 distinct files as shown:

- token.c (Base token support routines)
- tokenlif.c (Life management of a token object -- that is Duplication, Creation and Filtering)
- tokencls.c (Token Query/Set Information Classes support)
- tokenadj.c (Token privileges/groups adjusting support)

In addition to that, tidy up the internal header and reorganize it as well.
2022-05-29 20:22:19 +02:00
Mark Jansen
96eacfc352 [GITHUB] Add workflow to close stale PR's 2022-05-29 20:10:31 +02:00
Eric Kohl
54efd75889 [DISKPART] Improve DETAIL commands 2022-05-29 17:32:34 +02:00
Tuur Martens
cc99b9d96e [NTOS:MM] Fix MiInsertSharedUserPageVad preventing boot on x64
Fix MiInsertSharedUserPageVad to not charge the system process pool quota.
Even though PsChargeProcessNonPagedPoolQuota itself checks if the process specified is the system process, this doesn't work here as we're too early into boot for the kernel to know what the system process is.
2022-05-29 13:28:27 +02:00
Eric Kohl
96d137a559 [DISKPART] Silence a debug message 2022-05-29 13:07:53 +02:00
Eric Kohl
5a1c00c117 [DISKPART] Improve the LIST VOLUME command 2022-05-29 12:41:42 +02:00
Eric Kohl
863400813a [DISKPART] Implement CREATE PARTITION LOGICAL 2022-05-29 10:05:51 +02:00
Eric Kohl
52bbf6078e [DISKPART] Implement CREATE PARTITION EXTENDED and warn about unimplemented options 2022-05-28 13:17:45 +02:00
Eric Kohl
723947eab1 [DISKPART] Implement CREATE PARTITION PRIMARY and DELETE PARTITION 2022-05-28 11:33:29 +02:00
Eric Kohl
166b88f95c [DISKPART] Fix crashes in the interpreter 2022-05-28 09:54:46 +02:00
Stanislav Motylkov
17e0e4428c [PC98VID] Fix video driver settings
- Store settings in non hardware-profile registry key.
- Rename driver file to vgapnp.sys to keep in sync with VBE.
- This makes PC-98 video driver working again.

Addendum to 073a1ea3 and f03750de. CORE-18201 CORE-17977
2022-05-27 18:56:13 +03:00
Stanislav Motylkov
5471363801 [XBOXVMP] Fix video driver settings
- Store settings in non hardware-profile registry key.
- This makes Xbox video driver working again.

Addendum to f03750de. CORE-16216
2022-05-27 18:54:20 +03:00
Victor Perevertkin
a5a6101ca0 [CMAKE] Fix buildbot builders 2022-05-27 01:48:52 +03:00
Victor Perevertkin
447ef2aa4a [CMAKE] Do not use USE_CLANG_CL variable in CMake scripts 2022-05-27 01:37:37 +03:00
Victor Perevertkin
f155b9377f [CMAKE] Elimitate the use of GCC and CLANG variables 2022-05-27 01:37:34 +03:00
Dmitry Borisov
6f4be52a1c [HALX86] Print the correct size of the BAR in HalpDebugPciDumpBus()
Reference: https://wiki.osdev.org/PCI#Address_and_size_of_the_BAR

To determine the amount of address space needed by a PCI device,
you must save the original value of the BAR, write a value
of all 1's to the register, then read it back.

Note: 64-bit BARs are not supported yet.
2022-05-26 16:40:17 +03:00
Mark Jansen
11e0ed3c2b [ASM x64] Fix UNIMPLEMENTED macro for MSVC 2022-05-25 23:16:04 +02:00
Mark Jansen
8ea46b53e3 [KERNEL32] Fix reading SafeDllSearchMode 2022-05-25 22:43:47 +02:00
Stanislav Motylkov
8b55d712a7 [GITHUB] Add MSVC ARM64 builder
This builds only some applications for now.

CORE-17518
2022-05-25 21:10:17 +03:00
Justin Miller
4363e74ddc [REACTOS] Finally get some ARM64 applications building (#4517)
- Add some missing ARM64 exports to ntdll, kernel32 and user32
- Create mmtypes header file based on WoA debug symbols
- Get the remaining headers in order, so we can build ARM64 apps
- Adjust subsystem version for binaries so they can run on WoA host
- Get calc, notepad and more base apps to build for ARM64 platform

CORE-17518

Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-25 17:06:32 +03:00
William Kent
3464df8c28 [CMAKE] Search the PATH for the compilers and cache the results
We are deliberately using a macro here instead of REQUIRED parameter
because it is available only in CMake 3.18+, so it won't work with
CMake version that is being shipped with RosBE.

On my dev box the RosBE tools are only in the PATH when needed.
Since my IDE inherits the PATH from the system and not from my shell,
I needed to be able to run configure.sh with the tools in my PATH
and then be able to successfully reconfigure when building
from a "regular" command prompt.
2022-05-25 16:34:16 +03:00
William Kent
6c38b251cf [DBGHELP] Fix rsym runtime crash on ARM64 host
CORE-17518
2022-05-25 16:34:16 +03:00
William Kent
21bd607758 [MKISOFS] Add ARM64 processor support
Also changed a "shouldn't-ever-happen" deliberate syntax error into a proper #error.

CORE-17518
2022-05-25 16:34:11 +03:00
George Bișoc
b922b6d7fc [NTOS:KE] Write a basic kernel mode test for FPU Save/Restore mechanism 2022-05-24 18:39:46 +02:00
George Bișoc
064a35dc67 [NTOS:KE] Fully implement FPU Save/Restore mechanism
This commit fully implements the inner logic of KeSaveFloatingPointState and KeRestoreFloatingPointState routines. On ReactOS we're currently simply doing a FNSAVE operation whereas on Windows it is a lot more than that.

On Windows Server 2003 the logic more or less goes like this. In order to save the FPU state the NPX state of the current thread has to be checked first, that is, if NPX is loaded and currently charged for the current thread then the system will acquire the NPX registers actively present. From that point it performs either a FNSAVE or FXSAVE
if FX is actually supported. Otherwise the control word and MXCsr registers are obtained.

FXSAVE/FNSAVE operation is done solely if the FX save area is held up in a pool allocation. Pool allocation occurs if it's been found out that the NPX IRQL of the thread is not the same as the current thread which from where it determines if the interrupt level is APC then allocate some pool memory and hold the save area there, otherwise
the save area in question is grabbed from the current processor control region. If NPX is not loaded for the current thread then the FPU state is obtained from the NPX frame.

In our case we'll be doing something way simpler. Only do a FXSAVE/FNSAVE directly of the FPU state registers, in this way we are simplifying the code and the actual logic of Save/Restore mechanism.
2022-05-24 18:39:45 +02:00
George Bișoc
c020966091 [NTOS:KE] Implement the internal FPU state context structure
This is needed to store FPU state information when saving or restoring the floating point state of a system due to a call to KeSaveFloatingPointState or KeRestoreFloatingPointState.
2022-05-24 18:39:45 +02:00
George Bișoc
d88cd0eefc [NTOS:KE] Move related FPU instrunctions to internal intrinsic file 2022-05-24 18:39:45 +02:00
George Bișoc
657bc083dc [NTOSKRNL] Add FPU pool tags 2022-05-24 18:39:45 +02:00
George Bișoc
66c1bb7eab [MC] Add INVALID_FLOATING_POINT_STATE bugcheck code
This kind of code will be used for FPU Save/Restore related code.
2022-05-24 18:39:30 +02:00
Wilson Simanjuntak
1f2d450599 [TRANSLATION] Improve Indonesian (id-ID) translation [part 1] (#4500)
[CALC] [DRWTSN32] [DXDIAG] Add Indonesian translation
[REACTOS] [USETUP] [EXPLORER] Improve Indonesian translation

Signed-off-by: Wilson Simanjuntak <wilsontulus5@gmail.com>
Reviewed-by: Mas Ahmad Muhammad <m.charly81@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-24 19:14:41 +03:00
Thamatip Chitpong
1aa95f3897 [EXPLORER] Implement CDesktopThread::Destroy (#4371)
Now Explorer exits properly without using ExitProcess hack.

Signed-off-by: Thamatip Chitpong <tangaming123456@outlook.com>
Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-24 14:58:24 +03:00
Marcus Boillat
4900dd3d87 [RAPPS] Improve localized display of installation date (#4498)
Parse InstallDate registry key in "YYYYMMDD" format. CORE-17422

Signed-off-by: Marcus Boillat <marcus.boillat@gmail.com>
Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-24 12:20:52 +03:00
Victor Perevertkin
505ac6565a [NTOS:PNP] Misc IoInvalidateDeviceState fixes
- Add a check for correct PDO before doing anything
- Process the request only for started devices
- Send the request synchronously during the start sequence

This makes Windows' i8042prt.sys work on ReactOS.
Addendum to cf0bc1c132
2022-05-24 05:04:11 +03:00
Stanislav Motylkov
17154c94c1 [DESKMON] Implement GetMonitorDevInstID function
- Now our deskmon.cpl extension works on Windows XP and 2003
  and does open the monitor device properties correctly.
- Also "Properties" button should be disabled
  when no Device Instance ID found for the monitor.
2022-05-23 23:54:41 +03:00
Stanislav Motylkov
fcba0968be [DESK] Add debug prints to pCDevSettings_GetDeviceInstanceId
Addendum to 3900cf88.
2022-05-23 23:50:47 +03:00
Hermès Bélusca-Maïto
985468d08a [NTOS:SE] Replace a bunch of RtlCopyLuid() calls into direct assignations (#4523)
Nowadays' compilers support such direct structure assignations,
and our existing codebase already uses that in other places.
2022-05-23 19:30:37 +02:00
Hermès Bélusca-Maïto
487d8601f9 [NTOS:SE] SepPerformTokenFiltering(): Fix corruption of DynamicPart (#4523)
The problem is that EndMem is changed to point to the DynamicPart of
the token, but the code after that expects it to still point into the
VariablePart instead.

Problem fixed by moving the insertion of RestrictedSids much sooner
(where the original ones are also being copied).
2022-05-23 19:30:36 +02:00
Hermès Bélusca-Maïto
9676188543 [NTOS:SE] NtAdjustGroupsToken(): Avoid double-free on ObReferenceObjectByHandle failure path (#4523) 2022-05-23 19:30:36 +02:00
Hermès Bélusca-Maïto
3370652dfc [NTOS:SE] Fix locking in SepDuplicateToken() and SepPerformTokenFiltering() (#4523)
Shared locking must be used on the source token as it is accessed for
reading only. This fixes in particular the kmtest SeTokenFiltering that
would hang otherwise on a (wrong) exclusive locking.

- SepPerformTokenFiltering(): Always shared-lock the source token.
  Its callers (NtFilterToken and SeFilterToken) just need to sanitize and
  put the parameters in correct form before calling this helper function.

- Sync comments in NtFilterToken() with SeFilterToken().
2022-05-23 19:30:35 +02:00
Hermès Bélusca-Maïto
b33911b93d [NTOS:SE] SepPerformTokenFiltering(): Remove useless SEH handling (#4523)
This function is either called inter-kernel (in which case, all
parameters must be valid, and if not, we have to bugcheck), or, it
is called with **captured** parameters (from NtFilterToken) and those
latter ones are now expected to be valid and reside in kernel-mode.
Finally, data copied between token structures reside in kernel-mode
only and again are expected to be valid (if not, we bugcheck).
2022-05-23 19:30:34 +02:00
Hermès Bélusca-Maïto
389a2da7ff [NTOS:SE] SepCaptureAcl(): Add missing validation of the captured ACL (#4523)
- The ACL is however not validated when the function is called within
  kernel mode and no capture is actually being done.

- Simplify aspects of the function (returning early when possible).
2022-05-23 19:30:34 +02:00
Hermès Bélusca-Maïto
a0bcf90f35 [NTOS:SE] SeValidSecurityDescriptor(): Add missing validation aspects (#4523)
- Add extra bounds checks.
- Add missing RtlValidAcl() calls for verifying the DACL and SACL.
2022-05-23 19:30:33 +02:00
Hermès Bélusca-Maïto
d21895e6ef [WIN32K:NTUSER] Only call IntFreeSecurityBuffer() when needed, don't free NULL buffers.
Addendum to 878c2f44.
2022-05-23 19:30:13 +02:00
Stanislav Motylkov
3900cf88b3 [DESK] Implement pCDevSettings_GetDeviceInstanceId properly
- CM_Locate_DevNodeW expects a Device Instance ID as second argument,
  so it cannot be used for converting a Hardware ID.
- Use SetupAPI functions here instead, as documented in:
  https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-enumdisplaydevicesw
- Now our desk.cpl passes correct identifier to CPL extensions,
  such as deskadp and deskmon, so clicking on "Properties" in the
  advanced display properties now works in Windows XP.
- Also fix copypasta in DisplayAdvancedSettings that affected applet
  built with MSVC - deskadp extension was loaded twice.
- Also fix magic flag value for EDD_GET_DEVICE_INTERFACE_NAME.
2022-05-23 19:04:47 +03:00
Stanislav Motylkov
6dc17389cb [DESK] Synchronize translations
- Fix differences in punctuation
- pt-PT had something out of place that other translations didn't had at all
2022-05-23 02:44:03 +03:00
Hervé Poussineau
d2a87f1b7f [WIN32K] Improve finding the best matching display mode
Search the display mode having the smallest difference with the requested one.
We can then remove the hardcoded values of 60 Hz and 32 bpp by default.

CORE-18189
2022-05-22 23:42:03 +02:00
Hervé Poussineau
63e59e10f3 Revert "[WIN32SS] Only refresh graphics mode list when iModeNum = 0"
This reverts commit c243133b2c.

Without the revert, VirtualBox auto-resize doesn't work on first attempt,
but only on next ones.
However, according to documentation, we must only initialize device and
cache information when iModeNum = 0.

CORE-18189
2022-05-22 23:42:00 +02:00
Hervé Poussineau
588285881e [WIN32SS] Change LDEVOBJ_bProbeAndCaptureDevmode to load missing settings from registry
- use EngpGetDisplayDriverParameters to get display settings from registry
- update searched display settings with the provided ones (+ add missing SEH2)
- then, search exact mode

User can now change only one display setting, without specifying other ones.
2022-05-22 17:32:44 +02:00
Hervé Poussineau
9acd895f18 [WIN32SS] Copy loading of registry settings from mdevobj.c to new function
This function will be used in next commit, and duplicated implementation
in mdevobj.c will be dropped.
2022-05-22 17:32:40 +02:00
Hervé Poussineau
900beca021 [WIN32SS] In LDEVOBJ_bGetClosestMode, search 60 Hz if everything failed
This function needs probably to be rewritten.
2022-05-22 17:32:08 +02:00
Hervé Poussineau
22dac3447f Revert "[WIN32SS] Handle panning in LDEVOBJ_bProbeAndCaptureDevmode"
This reverts commit 37c2bb3985.

CORE-18189
2022-05-22 17:31:44 +02:00
Hervé Poussineau
c243133b2c [WIN32SS] Only refresh graphics mode list when iModeNum = 0
We don't expect graphics mode list to change while enumerating it.
2022-05-22 17:31:40 +02:00
Eric Kohl
434cf85d96 [DISKPART] Do not print command descriptions twice 2022-05-21 16:59:45 +02:00
Eric Kohl
417687e92e [DISKPART] Improvements to the dump, help and delete commands
- Print help only if a help string exists.
- Use the command table for the dump sub commands.
- Add sub commands for the delete command.
2022-05-21 10:43:38 +02:00
Luke Luo
de972e2bc2 [TRANSLATION] Improve Simplified Chinese (zh-CN) translation (#4513)
- Changed some wording according to the translation requirements.
- Fixed some mistakes.
- Changed my name.

Reviewed-by: He Yang <1160386205@qq.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-20 15:38:24 +03:00
Marcus Boillat
05183677d9 [FRAGINATOR] Fix some uninitialized variables and make it work again (#4497)
Set BitmapSize to zero so DeviceIOControl doesn't fail.

ROSAPPS-332
2022-05-20 14:59:01 +03:00
Tuur Martens
4f8bbd141e [NTOS:MM] Fix memory leak in MiMapViewOfDataSection
If inserting the allocated VAD fails, MiMapViewOfDataSection will make no attempt to free the allocated VAD. Nor will it call MiDereferenceControlArea(ControlArea); like other failure return paths. This commit fixes this behavior.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2022-05-18 12:31:31 +02:00
Eric Kohl
032c50f87c [DISKPART] Clean up the help system and fix translations
@Translators: You can translate text again, but please do no translate placeholder text.
2022-05-16 01:46:32 +02:00
Hermès Bélusca-Maïto
15be457b6d [NOTEPAD] Simplify code for UpdateWindowCaption(). Addendum to 1d690f04.
One StringCbPrintf() call is sufficient, that can cover both
clearModifyAlert == TRUE or FALSE cases.
Also, only SendMessage(EM_GETMODIFY) when clearModifyAlert == FALSE
(during text edition).
2022-05-15 19:22:57 +02:00
Stanislav Motylkov
6612682b87 [DISKPART] Fix MSVC build. Addendum to 566e898. 2022-05-15 15:10:05 +03:00
Eric Kohl
566e8989c3 [DISKPART] Improve the command table to support subcommands and start work on the create command
- Extend the command table to support subcommands.
- Get rid of the existing subcommand code.
- Use the new subcommand suport for the help system.
- Start work on the create command.

@Translators: Please do not translate any changes yet, because I will improve help system in one of the next steps.
2022-05-15 12:27:53 +02:00
Katayama Hirofumi MZ
1d690f0411 [NOTEPAD] Less flickering title bar (#4516)
When typing text on NotePad, then NotePad title bar flickers.
- Save previous modification flag.
- If no change in modification flag, do not set the title bar text.
2022-05-15 14:38:43 +09:00
Katayama Hirofumi MZ
99d9fc698f [KBDJA][NTUSER] Improve scancode_to_vk data (#4515)
- Fix scancode_to_vk variable.
- Add special handling to win32k!ProcessKeyEvent function for Japanese.
CORE-11700
2022-05-15 12:53:12 +09:00
Hervé Poussineau
81aa81e38f [WIN32SS] Implement display acceleration level 5 (ie no acceleration)
This is a easy as forcing usage of panning driver.
2022-05-14 21:29:12 +02:00
Hervé Poussineau
4e0f2fc01c [WIN32SS] Implement panning driver
This can be configured in registry with DefaultSettings.XPanning and
DefaultSettings.YPanning, which describe the real screen resolution.

DefaultSettings.XResolution and DefaultSettings.YResolution describe
the resolution of the virtual screen.
2022-05-14 21:29:12 +02:00
Hervé Poussineau
83d2c8ce33 [WIN32SS] mouse: call panning driver when moving pointer
Yes, if a driver supports both hardware pointers and panning, it will be called twice on each move.
2022-05-14 21:29:12 +02:00
Hervé Poussineau
57c07ba117 [WIN32SS] mouse: use pointer flags in PDEVOBJ
When changing pointer cursor:
- use PDEV_HARDWARE_POINTER flag if using hardware pointer
- use PDEV_SOFTWARE_POINTER flag if using software pointer
- keep pfnMovePointer as an accelerator to driver function (if available) and never change it
- fix bug (2 pointers) when switching between hardware and software pointer

When moving pointer:
- check PDEV_HARDWARE_POINTER flag to know if we need to call the driver
- check PDEV_SOFTWARE_POINTER flag to know if we need to call EngMovePointer
2022-05-14 21:29:12 +02:00
Hervé Poussineau
37c2bb3985 [WIN32SS] Handle panning in LDEVOBJ_bProbeAndCaptureDevmode
- search a graphic mode corresponding to real screen resolution (not virtual panning one)
- when capturing the selected mode, copy from input the virtual panning resolution
- when searching the best mode, also try without panning
2022-05-14 21:29:12 +02:00
Hervé Poussineau
185f2dac85 [WIN32SS] Copy function table earlier, and use it in all PDEVOBJ operations 2022-05-14 21:29:12 +02:00
Tuur Martens
884356a06e [NTOS:MM] Charge and free quotas for VAD allocations
Charge quotas for VAD allocations and free the quotas again when the VADs are freed.

CORE-18028
2022-05-14 15:09:50 +02:00
Stanislav Motylkov
5ee633f7d7 [BUSLOGIC] Fix reference link to VMware driver source page
- Clarify driver version in 3rd Party Files.
- Fix some minor formatting problems.
- Also add missing OBJ_KERNEL_HANDLE to match Zw*() uses. (#4499)

CORE-10207 CORE-18180

Co-authored-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
2022-05-13 17:24:02 +03:00
Katayama Hirofumi MZ
6fec06b8e5 [KBDJA] Fix key names (#4507)
They will be used at user32!GetKeyNameText function. CORE-11700
2022-05-12 20:39:56 +09:00
Katayama Hirofumi MZ
5c4b8e474f [KDBJA] Delete duplicate key entries (#4508)
Delete the duplicated key data. CORE-11700
2022-05-12 17:55:59 +09:00
Katayama Hirofumi MZ
2038087d9e [KBDJA] Delete temporary hacks (#4506)
Improve readability of Japanese keyboard.
- SC_13 (0xDE) --> VK_OEM_7
- SC_27 (0xC0) --> VK_OEM_3
- SC_40 (0xBB) --> VK_OEM_PLUS
- SC_41 (0xBA) --> VK_OEM_1
CORE-11700
2022-05-12 14:05:16 +09:00
Katayama Hirofumi MZ
1c3474be48 [KBDJA] Enable VK_CONVERT/VK_NONCONVERT keys (#4505)
Enable VK_CONVERT/VK_NONCONVERT keys for Japanese keyboard.
- ScanCode 121 (0x79) --> VK_CONVERT.
- ScanCode 123 (0x7B) --> VK_NONCONVERT.
CORE-11700
2022-05-12 12:48:29 +09:00
Katayama Hirofumi MZ
fcc4384554 [USER32][KBDJA] Implement CliImmSetHotKey (#4504)
- Fix Japanese keyboard about [Shift]+[0] and [半/全] (VK_PROCESSKEY).
- Add user32!CliSaveImeHotKey helper function.
- Implement user32!CliImmSetHotKey function. This function is forwarded from imm32!ImmSetHotKey.
- Fix user32!TranslateMessage by using imm32!ImmTranslateMessage.
CORE-11700, CORE-18183, CORE-18182
2022-05-11 21:42:32 +09:00
Katayama Hirofumi MZ
7396ba84ce [USER32] Implement UnloadKeyboardLayout (#4503)
- Add IntSetFeKeyboardFlags, CliImmSetHotKeyWorker, CliSetDefaultImeHotKeys, CliGetPreloadKeyboardLayouts, CliGetImeHotKeysFromRegistry, CliImmInitializeHotKeys, CliSetSingleHotKey, and CliReadRegistryValue helper functions.
CORE-11700
2022-05-11 10:03:02 +09:00
Marcus Boillat
fa52f2fae0 [NTOS:KE] Fix CPU extended family and model detection
Based on documentation from Geoff Chappell:
https://www.geoffchappell.com/studies/windows/km/cpu/cpuid/00000001h/eax.htm

CORE-17974
2022-05-09 21:50:24 +03:00
Marcus Boillat
00b3e4bc68 [NTOS:KE] Use bitfield structure for x86 CPU signature in EAX register
This makes code a lot more readable. CORE-17974
2022-05-09 21:50:24 +03:00
Stanislav Motylkov
cc82bc14e2 [NTOS:KE] Move KiGet/SetProcessorType function below KiGetCpuVendor
CORE-17974
2022-05-09 21:50:19 +03:00
Raymond Czerny
d74ceb6559 [SHELL32] Fix visual glitch appeared after fixing CORE-18137 (#4488)
- Check if the parent window of RunDLL is the desktop,
  only in this case add the system control applet to the taskbar.
- Try loading small 16x16 icon for the taskbar button.

CORE-18175
2022-05-09 21:36:23 +03:00
George Bișoc
081ffbeb4f [IMM32] Silence two debug prints
These two debug prints are spammy as fuck and it makes shit harder to debug ReactOS, apart that these prints barely serve any purpose.
2022-05-08 21:49:14 +02:00
George Bișoc
07227562c0 [WINLOGON] Let Winlogon assign security to desktop when a user logs in now 2022-05-08 20:16:18 +02:00
George Bișoc
aa815e1cfa [WIN32K:NTUSER] Assign a security descriptor when parsing the desktop object
The problem ReactOS currently faces is this -- whenever the desktop is being parsed we aren't assigning a security descriptor to it. As a matter of fact when Winlogon tries to assign new security information to the application desktop when a user logs in, Winlogon fails because no prior descriptor has been created for it even though we already do this when initializing security buffers in Winlogon.

With that said, we must assign a descriptor when parsing the desktop as well. This fixes a hack in Winlogon where security assigning of application desktop during a log in is disabled (which we can now enable such code path back).
2022-05-08 20:16:15 +02:00
Serge Gautherie
ed125de9f3 [SACDRV] Add 2 OBJ_KERNEL_HANDLE
Match Zw*() uses.

Plus:
- GetRegistryValueBuffer(): Add missing ZwClose(Handle), Fix a copypasta.
- SetRegistryValue(): 1 s/NtClose/ZwClose/.

CORE-10207
2022-05-08 19:42:49 +02:00
George Bișoc
9f8fbe14f5 [NTOS:OB] Specify the query security descriptor tag when freeing the allocation
We are allocating blocks of pool memory for a security descriptor with its own specific tag, TAG_SEC_QUERY, so just use it when freeing when releasing the descriptor as well (aka freeing the said pool).
2022-05-08 19:16:34 +02:00
Hermès Bélusca-Maïto
94c25baf85 [HAL][HALARM] The HAL should only use KPCR.
And why the ARM HAL uses KPCR::InterruptRoutine, a field only defined
in *powerpc*/ketypes.h, is beyond me, but OK...

See Timo vs. Alex discussion, explaining that KIPCR is a ReactOS-only
thing: https://reactos.org/archives/public/ros-dev/2008-August/010549.html
2022-05-08 17:21:44 +02:00
Hermès Bélusca-Maïto
c026b5950e [FREELDR][MINIHAL] Move KefAcquireSpinLockAtDpcLevel stub back to HAL, #ifdef'ed in _MINIHAL_ where it's only needed. 2022-05-08 17:21:43 +02:00
Katayama Hirofumi MZ
242e0b4303 [NTUSER][USER32] Implement IME status (#4472)
- Add IntCheckImeShowStatus, IntSendMessageToUI, IntSendOpenStatusNotify, IntNotifyImeShowStatus, and xxxBroadcastImeShowStatusChange helper functions.
- Renaming: s/X_ROUTINE_IMESHOWSTATUSCHANGE/TWOPARAM_ROUTINE_IMESHOWSTATUSCHANGE/
- Implement NtUserCallNoParam.NOPARAM_ROUTINE_GETIMESHOWSTATUS.
- Implement NtUserCallHwndParamLock.TWOPARAM_ROUTINE_IMESHOWSTATUSCHANGE.
- Fix hung in User32GetTopLevelWindow and rename it as IntGetTopLevelWindow.
CORE-11700
2022-05-08 20:16:17 +09:00
Hermès Bélusca-Maïto
a849125947 [NDK][XDK] Improve some HAL-related definitions.
- Add more accurate definitions for the values of HAL_DISPATCH_VERSION
  and HAL_PRIVATE_DISPATCH_VERSION.
  See https://www.geoffchappell.com/studies/windows/km/ntoskrnl/inc/ntos/hal/hal_dispatch.htm
  and https://www.geoffchappell.com/studies/windows/km/ntoskrnl/inc/ntos/hal/hal_private_dispatch.htm

- Make the conditionals for HalDispatchTable definition MS-WDK-compatible,
  and do the same for HalPrivateDispatchTable.

- Remove MinGW-only non-MS-WDK-compatible PHAL_DISPATCH_TABLE and
  PHAL_PRIVATE_DISPATCH_TABLE definitions.

- Remove hackish #define _NTSYSTEM_ in the wdm.h header.
2022-05-08 04:15:52 +02:00
Hermès Bélusca-Maïto
39b8d45592 [MINIHAL] Compile with _NTSYSTEM_ since it's also part of the bootloader.
Fixes compilation because the Hal(Private)DispatchTable's, defined in
the bootloader's NTOS stub, are not external imports, as they would be
for a standard HAL.
2022-05-08 04:15:51 +02:00
Hermès Bélusca-Maïto
ec1def3f31 [FREELDR] Remove unnecessary includes and deprecated defines. 2022-05-08 04:15:43 +02:00
Serge Gautherie
46db6573ab [DRIVERS] Add some missing OBJ_KERNEL_HANDLE (#4493)
Match Zw*() uses. CORE-10207
2022-05-07 22:12:19 +03:00
Hermès Bélusca-Maïto
b414e1e4d7 [NTOS] Don't define _IN_KERNEL_ globally for the kernel, but just where it's needed: when including regstr.h. 2022-05-07 18:38:35 +02:00
Hermès Bélusca-Maïto
551d28e09f [HALARM] Update defines in hal.h 2022-05-07 18:23:29 +02:00
Hermès Bélusca-Maïto
9ea2b803c8 [NDK][HAL][NTOS] Add missing PRCB_MINOR_VERSION / PRCB_MAJOR_VERSION and use them. 2022-05-07 18:14:38 +02:00
Hermès Bélusca-Maïto
cfbb734799 [NTOS] Remove ROS-specific __NTOSKRNL__
See https://reactos.org/archives/public/ros-kernel/2004-June/003878.html
> In the source files one set of headers is included if
__NTDLL__ is defines and onother set if __NTOSKRNL__ is defines (dirty
workaround for our messy headers).
2022-05-07 17:53:51 +02:00
Stanislav Motylkov
11d3e3252d [NVNET] Add more controller descriptions
Addendum to b79fbe23. Based on NvNetRecognizeHardware function in nic.c
2022-05-07 18:00:15 +03:00
Stanislav Motylkov
b5e7797604 [AC97] Fix driver provider name
- Also sort out non-localizeable lines
- Fix German translation encoding and add missing one
- Add Russian translation

Addendum to 9c79a798, 68e19a95 and 9ca32a2b.
2022-05-07 18:00:13 +03:00
Eric Kohl
c70d755059 [NETAPI32] NetSessionEnum: UncClientName and username are optional
Do not fail if UncClientName and username are null.
2022-05-07 16:54:04 +02:00
Serge Gautherie
abe8f0ab1d [PCIX] Add 2 OBJ_KERNEL_HANDLE
Match Zw*() uses.

CORE-10207
2022-05-07 16:23:42 +02:00
Hermès Bélusca-Maïto
4bf32102ab [SHELL32_APITEST] ShellExecCmdLine: Do **NOT** use TerminateProcess to close the opened windows.
This design, introduced in 418edcd2b, is fundamentally flawed as it
can also close windows unrelated to the running test (e.g. windows
of programs that the user can start, while the test is running).

But since we cannot do much better, mitigate instead the other main
problem of this design: Just use PostMessageW(WM_CLOSE), as it used
to be, instead of TerminateProcess().

Indeed, using TerminateProcess() otherwise could kill unrelated
processes the test hasn't created. In particular it could kill the
csrss.exe system process if, during the testing procedure, a hard-error
popup shows up.
And this is precisely the case when this test runs with limited memory,
and a hard-error
  "Insufficient system resources exist to complete the requested service."
arises.
2022-05-06 21:32:08 +02:00
Hermès Bélusca-Maïto
307ce1a503 [SHELL32_APITEST] ShellExecuteEx: Introduce a CleanupNewlyCreatedWindows() helper similar to the one of the ShellExecCmdLine test. 2022-05-06 21:32:01 +02:00
George Bișoc
55c117c4c9 [NTOS:SE] Deny access to the caller if access is not allowed by the object
There are two fundamental problems when it comes to access checks in ReactOS. First, the internal function SepAccessCheck which is the heart and brain of the whole access checks logic of the kernel warrants access to the calling thread of a process to an object even though access could not be given.

This can potentially leave security issues as we literally leave objects to be touched indiscriminately by anyone regardless of their ACEs in the DACL of a security descriptor. Second, the current access check code doesn't take into account the fact that an access token can have restricted SIDs. In such scenario we must perform additional access checks by iterating over the restricted SIDs of the primary token by comparing the SID equality and see if the group can be granted certain rights based on the ACE policy that represents the same SID.

Part of SepAccessCheck's code logic will be split for a separate private kernel routine, SepAnalyzeAcesFromDacl. The reasons for this are primarily two -- such code is subject to grow eventually as we'll support different type ACEs and handle them accordingly -- and we avoid further code duplicates. On Windows Server 2003 there are 5 different type of ACEs that are supported for access checks:

- ACCESS_DENIED_ACE_TYPE (supported by ReactOS)
- ACCESS_ALLOWED_ACE_TYPE (supported by ReactOS)
- ACCESS_DENIED_OBJECT_ACE_TYPE
- ACCESS_ALLOWED_OBJECT_ACE_TYPE
- ACCESS_ALLOWED_COMPOUND_ACE_TYPE

This gives the opportunity for us to have a semi serious kernel where security of objects are are taken into account, rather than giving access to everyone.

CORE-9174
CORE-9175
CORE-9184
CORE-14520
2022-05-06 10:09:53 +02:00
George Bișoc
f48191b4b5 [NTOS:SE] Enable support for principal and restricted SIDs
SepSidInTokenEx function already provides the necessary mechanism to handle scenario where a token has restricted SIDs or a principal SID is given to the call. There's no reason to have these redundant ASSERTs anymore.

In addition to that make sure if the SID is not a restricted and if that SID is the first element on the array and it's enabled, this is the primary user.
2022-05-06 10:09:53 +02:00
George Bișoc
bac67a65f2 [NTOS:SE] Implement SepGetSidFromAce
This function will be used to retrieve a security identifier from a valid access control entry in the kernel. Mostly and exclusively used within access checks related code and such.
2022-05-06 10:09:53 +02:00
George Bișoc
c93bf84747 [NTOS:SE] Add SepGetSidFromAce prototype & Niscellaneous Stuff 2022-05-06 10:09:52 +02:00
George Bișoc
bcf0aebb13 [XDK] Move security object related structures to appropriate place
ACCESS_ALLOWED_OBJECT_ACE and ACCESS_DENIED_OBJECT_ACE structures must be in the XDK section of SDK as these will be used in the future in the security subsystem of the kernel.
2022-05-06 10:09:52 +02:00
George Bișoc
9101a5dc6d [NTOSKRNL] Add security access check rights pool tag 2022-05-06 10:09:52 +02:00
George Bișoc
f559f63063 [SERVICES] Assign a World identity authority for Everyone SID, not Null authority
The current code allocates memory and initializes the Everyone "World" security identifier but with a Null authority identifier. This is utterly wrong on so many levels, more so partly because a Null authority identifier is 0 so after the Everyone SID is initialized, it is actually initialized as S-1-0-0 instead of S-1-1-0.
2022-05-06 10:09:52 +02:00
George Bișoc
f340524ea4 [SERVICES] Grant ReactOS Setup component SYSTEM access
ReactOS Setup is an integral component that is part of the operating system responsible for the installation of ROS during 2nd installation stage. The situation with current master branch is like this -- the Services component always tries to create the process
on behalf of the logged in user with its own security context. That user doesn't have the privileges and access rights like SYSTEM thus the Services component tries to create the process but it fails to do so because of lacking of required access right, TOKEN_DUPLICATE, in order for the calling thread to impersonate as self.
2022-05-06 10:09:51 +02:00
George Bișoc
cd1070dfc4 [UMPNPMGR] Create a security descriptor for PnP installation device event 2022-05-06 10:09:51 +02:00
George Bișoc
fd25e2dc64 [POWRPROF] Create a security descriptor for power management semaphore 2022-05-06 10:09:51 +02:00
George Bișoc
56a2c0fec4 [RPCRT4] Set up a security descriptor for RPC named pipes
rpcrt4_create_pipe_security function will be held in charge to set up security descriptors specific for each named pipe upon creation in rpcrt4_conn_create_pipe. The descriptor is then freed after the pipe is no longer needed.
2022-05-06 10:09:51 +02:00
George Bișoc
eccae203e0 [DHCPCSVC] Set up a security descriptor for DHCP named pipe 2022-05-06 10:09:50 +02:00
George Bișoc
d862fa6fc8 [ADVAPI32] Implement security descriptor management in CreateProcessAsUserCommon internal function
Currently CreateProcessAsUserCommon doesn't set a default descriptor for the newly duplicated token object for the new process nor it sets any security information for both the process and thread. This is wrong, because when the process is created on behalf of the user's security context,
it still uses the previous security information of the creator that initially gave birth to the process. CreateDefaultProcessSecurityCommon function will serve as a placeholder until CreatePrivateObjectSecurity is implemented.
2022-05-06 10:09:50 +02:00
George Bișoc
e90e918039 [ADVAPI32] Soft rewrite of CreateProcessAsUserCommon
Refactor the function in such a way that it can jump to a single exit but most importantly, implement a "rinse and repeat" mechanism where we assign a primary token to process by disabling impersonation first and retry with impersonation later.

More info can be found in the documention within the code.
2022-05-06 10:09:50 +02:00
George Bișoc
bf40c7a310 [KERNEL32] Let KERNEL32 assign security to NLS section names
Currently Kernel32 doesn't make any server call to Basesrv in order to create NLS section names, instead it's Kernel32 itself that handles the job of NLS section names. With that said, let Kernel32 assign a security descriptor to NLS section names. See the FIXME comment on code for further dtails
2022-05-06 10:09:49 +02:00
George Bișoc
5696e4ba4d [KERNEL32][BASESRV] Implement NLS section security
Implement code that deals with the security side of NLS, more specifically, create two security descriptors for NLS directory and NLS section names and let the server use such code.
2022-05-06 10:09:49 +02:00
George Bișoc
2092dc06bb [WINLOGON][HACK] Allow network services access to default window station
HHHHHHHHHHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACCCCCCCCCCCCCCCCCCCCCCCKKKKKKKKKKKKKKKKKK!!!

There are two problems concerning with network services. First, a window station should be created for every network service process that gets started although this doesn't happen. Instead, network services like RPCSS and DNS service host process (svchost.exe) attempt to access the default window station (Winsta0).
This is because the access token of these two network service processes have an authentication ID that is uniquely generated. This is incorrect, because NetworkService is a special account with its own designed authentication ID for it. As a matter of fact, no window station is created for a network service and as such
both RPCSS and DNS svchost.exe attempt to access Winsta0 which they cannot.

The second problem, albeit not quite relevant to the first one but still worth mentioning nevertheless, is that network services have an access token that is primary which it should be an impersonation token. These problems all come from LSASS as LSA infrastructure is responsible for creating access tokens with security
context for objects.

For the moment being, add a hack on Winlogon that gives allow access to the default window station to network services. When LSASS and involved components are fixed, this hack must be removed.
2022-05-06 10:09:49 +02:00
George Bișoc
f96c39f6b0 [WINLOGON] Refactor the security management part
Refactor the security related code of Winlogon and move it to its own dedicated place, security.c. This includes code for preparation of security descriptors for window station and desktop objects when their created, helper functions which give allow access to such objects for the logged in user and whatnot.

==== DO NOTE ====
Currently new desktop security assignment fails because for whatever reason the system thinks the application desktop has no prior security even though a descriptor has been created for it before. See the FIXME comment on code for information.
2022-05-06 10:09:49 +02:00
George Bișoc
65a72fb527 [USER32] Capture the security descriptor from the caller when creating a window station
When creating a window station with CreateWindowStationW, the function ignores the security descriptor provided by the caller and instead it uses whatever descriptor the system can find.
2022-05-06 10:09:48 +02:00
George Bișoc
878c2f4444 [WIN32K:NTUSER] Implement security infrastructure for NTUSER component
Implement a base security infrastructure with code that sets up a security descriptor for the service that we're going to connect through it. Such service is based upon a desktop and a window station.

=== DOCUMENTATION REMARKS ===
The authenticated user, represented by an access token that describes its security context, is the main holder and has ultimate power against the default created desktop and window station objects in USER. The authenticated user in question
is the actual logged in user, this is the case when the server is impersonating a client. Administrators on the other hand have some share of power against default desktop but their power in question is extremely limited against the default
window station as admins can only just enumerate the available and valid handle stations within a desktop.
2022-05-06 10:09:48 +02:00
George Bișoc
bee9b2fcc6 [LSASRV] Set up a security descriptor for the token object
LSASS implements a default ACL inside the token structure field but it doesn't actually set a protective security descriptor for the token object itself. This happens so that the kernel gets whatever default ACLs it finds for the object which is incorrect.

SYSTEM has full and supreme control over tokens, administrators can only read the token as such. The logged in user of their own token has full access. Credits and courtesy goes to Thomas Faber for the patch.
2022-05-06 10:09:36 +02:00
Doug Lyons
de6c514c3e [WIN32SS] Fix CF_DIB format not being saved to clipboard on Print Screen key (#3265)
Use pool to allocate (potentially huge) clipboard data buffers.
CORE-17318
2022-05-05 17:54:15 +02:00
Doug Lyons
cc0e2a3672 [SHELL32] Fix Shift-Delete to Permanently Delete Files and Folders (#4004)
CORE-17802
2022-05-05 17:30:06 +02:00
William Kent
212cbb6fff [CABMAN] Make cabman exit with non-zero exit code if argument parsing fails (#4022)
Co-authored-by: Serge Gautherie <32623169+SergeGautherie@users.noreply.github.com>
2022-05-05 17:21:54 +02:00
William Kent
0ebad9f3c5 [TXT2NLS] Use delete[] to deallocate new[] output (#4022)
Per AppleClang 13.0 warning.
2022-05-05 17:21:54 +02:00
Thomas Csovcsity
860d3544af [SHELL32] Folders: Adjust column sequence in details view (#4279)
Adjust column sequence in folder view to match WinXP and Win2k3 order.
CORE-11846
2022-05-05 17:05:18 +02:00
Serge Gautherie
beefb07d18 [BROWSEUI] Remove useless variable and unreachable code (#4483)
Addendum to 0c47416 (r72003).
CORE-12804

Co-authored-by: Victor Martinez Calvo <vicmarcal@gmail.com>
2022-05-05 16:45:56 +02:00
Raymond Czerny
e0b9d6d9cd [SHELL32] CPrinterFolder: Validate string pointers properly. (#4486)
CORE-18174

Check string pointers before determining the length of strings.
2022-05-05 16:24:38 +02:00
Katayama Hirofumi MZ
056bb94edc [NTUSER] NtUserBuildHwndList should return NTSTATUS (#4487)
A follow-up to #4485 (c2a51c7). CORE-18173
2022-05-05 22:53:15 +09:00
Katayama Hirofumi MZ
c2a51c7249 [NTUSER][USER32] Make NtUserBuildHwndList exclusive (#4485)
- Modify prototype of NtUserBuildHwndList function.
- Wrap the code by UserEnterExclusive(); and UserLeave();.
CORE-18173
2022-05-05 08:49:00 +09:00
Katayama Hirofumi MZ
bbc9a877cc [NTUSER] Add Win: comments to window.c
CORE-18173
2022-05-04 15:40:46 +09:00
Serge Gautherie
03422451b3 [REACTOS] Add '\n' to debug logs
on TRACE, WARN, FIXME and ERR calls.

Plus a few nit picks.
2022-05-04 03:28:38 +03:00
Vincent Franchomme
079131faca [DOC] Update 3rd Party Files (#4417) 2022-05-03 17:30:11 +02:00
Vincent Franchomme
6e0cf03d92 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.8.0 (#4417)
v1.8 (2022-03-12):

- Added minimal support for fs-verity
- ~~Added test suite~~ Not in ReactOS
- Fixed incorrect disk usage statistics
- Fixed potential crashes when renaming stream to file or file to stream
- Fixed potential crashes when querying hard links on file
- Fixed potential hang when opening oplocked file
- Fixed minor issues also uncovered by test suite
2022-05-03 17:30:11 +02:00
Vincent Franchomme
f5556fdc10 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.9 (#4417)
v1.7.9 (2021-10-02):

- Fixed deadlock when mounting on Windows 11
- Added support for BitLocker-encrypted volumes
- Improved filename checks when renaming or creating hard links
- Miscellaneous bug fixes
2022-05-03 17:30:11 +02:00
Vincent Franchomme
08d1009892 [PSDK][BOOTMGR] Import NTSTATUS definitions of BitLocker (#4417) 2022-05-03 17:30:11 +02:00
Vincent Franchomme
3cfd8ab775 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.8 (#4417)
v1.7.8.1 (2021-06-13):

- Fixed bug preventing new directories from appearing in listings
- Fixed Release version of driver still not working on XP

v1.7.8 (2021-06-09):

- ~~Upgraded zstd to version 1.5.0~~ Not in ReactOS as it introduces deprecated code
- Fixed regression stopping driver from working under XP
- Fixed compilation on clang
- Fixed corruption issue when Linux mount option inode_cache had been used
- Fixed recursion issue involving virtual directory \$Root
2022-05-03 17:30:11 +02:00
Vincent Franchomme
98654b54b4 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.7 (#4417)
v1.7.7 (2021-04-12):

- Fixed deadlock on high load
- Fixed free space issue when installing Genshin Impact
- Fixed issue when copying files with wildcards in command prompt
- Increased speed of directory lookups
2022-05-03 17:30:11 +02:00
Vincent Franchomme
c982533ea9 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.6 (#4417)
v1.7.6 (2021-01-14):

- Fixed race condition when booting with Quibble
- No longer need to restart Windows after initial installation
- Forced maximum file name to 255 UTF-8 characters, to match Linux driver
- Fixed issue where directories could be created with trailing backslash
- Fixed potential deadlock when Windows calls NtCreateSection during flush
- Miscellaneous bug fixes
2022-05-03 17:30:11 +02:00
Vincent Franchomme
b826992ab2 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.5 (#4417)
v1.7.5 (2020-10-31):

- Fixed text display issue in shell extension
- Added support for mingw 8
- Fixed LXSS permissions not working in new versions of Windows
- Fixed issue where truncating an inline file wouldn't change its size
- Fixed crash with Quibble where driver would try to use AVX2 before Windows had enabled it
2022-05-03 17:30:11 +02:00
Vincent Franchomme
0604273535 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.4 (#4417)
v1.7.4 (2020-08-23):

- Fixed issue when running compressed EXEs
- Changed build system to cmake
- Upgraded zstd to version 1.4.5
- Added support for FSCTL_GET_RETRIEVAL_POINTERS
- Miscellaneous bug fixes
2022-05-03 17:30:11 +02:00
Vincent Franchomme
174dfab667 [BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.3 (#4417)
v1.7.3 (2020-05-24):

- Fixed crash when sending file change notifications
- Improved symlink handling with LXSS
- Added support for undocumented flag SL_IGNORE_READONLY_ATTRIBUTE
- Fixed corruption caused by edge case, where address allocated and freed in same flush
- Improved handling of free space tree
- Improved handling of very full volumes
- Fixed spurious warnings raised by GCC 10 static analyser
- Replaced multiplications and divisions with bit shift operations where appropriate
- Fixed combobox stylings in shell extension
2022-05-03 17:30:11 +02:00
Hermès Bélusca-Maïto
7ba5f703d2 [BROWSEUI_APITEST] Addendum to 7e22dc05. 2022-05-03 17:29:39 +02:00
Serge Gautherie
7e22dc05ca [BROWSEUI][BROWSEUI_APITEST] SHExplorerParseCmdLine(): Sync and improve (#3231)
ROSTESTS-302

- SHCreateFromDesktop(): Sync declaration and spec.
- SHExplorerParseCmdLine(): Sync declaration, header and spec.
- SHExplorerParseCmdLine: Enforce 'UINT_PTR' return type.
Addendum to e39876d and 0f8439a.

- SHExplorerParseCmdLine: Replace '*EXPLORER_INFO'
- SHExplorerParseCmdLine: Fix x64 support; Fix some results.
2022-05-03 16:32:14 +02:00
Olaf Schmerse
25019525f8 [NEWDEV] Stop update driver wizard from changing device class (#4480)
CORE-18166

The update driver wizard should not change the device class by default,
especially when there is already a class set. This is the case when the
wizard gets called from the device manager.
2022-05-03 16:13:37 +02:00
Sahil Shahane
3e6b2972a9 [DISKPART] Fixed Volume Number & Label Issue (#4471)
CORE-18138

- Made Volume label to output only 11 characters at max.
- Made Volume numbering left-padded.
2022-05-03 16:06:02 +02:00
Raymond Czerny
1461ca403f [SHELL32] Show system control applet in taskbar (#4437)
Display the control panel applet in the taskbar to allow better navigation between programs.
CORE-18137

This is proceeded by manipulating the window of the current instance of 'rundll32.exe':
- Set title text
- Set icon
- Show window (minimal)
- Engaging the corresponding button in the Taskbar.
2022-05-03 16:02:58 +02:00
Victor Martinez Calvo
b57be0a746 [GDI32] Fix GetObjectW() GDI_OBJECT_TYPE_BRUSH handling. (#4394)
This fixes the last GetObjectW apitest case:
ok_long(GetObjectA(hBrush, 0, &TestStruct), 0);

- When "cbSize" is "0", GetObjectW shouldn't return "sizeof(LOGBRUSH)" but 0.
- Rely in BRUSH::cjGetObject behavior which returns 0 when cjSize is 0.

Co-authored-by: Víctor Martínez Calvo <victormartinez@alub.io>
2022-05-03 16:00:21 +02:00
Russell Johnson
3e2df36561 [SHELL32] Add multiple status bar parts to the file browser (#4401)
The file browser now has a status bar like Windows Server 2003 does.
This includes the sizes of the files, as well as the location.
In certain folders (Network, Desktop, etc.) the status bar is hidden.

Currently it does not handle this in the same way as Windows Shell does,
however it's a good first step to make it work properly.

CORE-17603

Signed-off-by: Russell Johnson <russell.johnson@superdark.net>
Reviewed-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>	
Reviewed-by: Giannis Adamopoulos <gadamopoulos@reactos.org>	
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-03 16:52:23 +03:00
Katayama Hirofumi MZ
2ef605d428 [NTUSER] Fix UserDestroyInputContet (again and again) (#4482)
Add call of UserMarkObjectDestroy.
Fix hung-up. CORE-11700
2022-05-03 10:17:30 +09:00
Katayama Hirofumi MZ
4a748a3a97 [NTUSER] Fix UserDestroyInputContext (again) (#4476)
Fix the HIMC handle leak. CORE-11700
2022-05-03 03:43:26 +09:00
Hervé Poussineau
14d50cc6c0 [WIN32SS] Improve selection of 'closest graphic mode'
If color depth is not provided (in registry), try to find a 32 bit one.
If not found, fall back to first available graphic mode.

CORE-18027
2022-05-01 16:36:48 +02:00
Hervé Poussineau
d8b3402fe6 [WIN32SS] In PDEVOBJ_vRefreshModeList, do not change current stored mode
When changing current devmode, we must not only change ppdev->pdmwDev
pointer, but also update lots of other structures. This work is done by
PDEVOBJ_lChangeDisplaySettings.

CORE-18169
2022-04-30 23:33:42 +02:00
Hervé Poussineau
d1cd80c861 [WIN32SS] Set DISPLAY_DEVICE_PRIMARY_DEVICE flag
This flag was not set anymore since 2d2824f1b9
Note that this is still wrong for multi-monitor.

CORE-18169
2022-04-30 22:02:28 +02:00
Hervé Poussineau
1d66a0aa19 [DESK] Remove call to SetupDiRestartDevices()
This effectively reverts a6005299c6, and
parts of c3da00c42c.

This call is not required, as umpnpmgr already does what is needed.
However, keep the call to EnumDisplayDevices(), so win32k knows that a
new graphic card has been installed.

CORE-18168
2022-04-30 14:05:05 +02:00
Stanislav Motylkov
dea51f7830 [SETUPAPI] Clarify what functions are exported starting with NT 5.2
CORE-18168
2022-04-30 13:36:25 +03:00
Julen Urizar Compains
748d5c694e [CRT] Fix MinGW-arm intrin minor bug in _byteswap_ushort (#4475)
A little bug were in the CRT, found with RosBE and cegcc compiler:

../sdk/include/crt/mingw32/intrin_arm.h:44:32: error: '<<' in boolean context, did you mean '<' ? [-Werror=int-in-bool-context]

Thanks to @HBelusca for suggesting the fix. CORE-17604
2022-04-30 01:24:49 +03:00
Doug Lyons
dbc7eeb47e [ROSTESTS] Fix crash in winhttp:winhttp test (#4303)
Fix regression crash in wine_dbgstr_wn. ROSTESTS-377

This brings most of Wine's current wine_dbgstr_wn code into ReactOS.
It's not possible to completely sync this with latest Wine because
there is Wine-specific code regarding "debug_info" and their TEB
in remaining code. Confirmed by @ThFabba.
2022-04-29 21:50:54 +03:00
Serge Gautherie
57d7f6f6b3 [FREELDR:NTLDR] Add '\n' to debug logs (#4474) 2022-04-29 18:20:36 +03:00
Jose Carlos Jesus
4f72e9c9b0 [GDI32_APITEST] Add CursorIcon tests to GetObject test (#3955)
Thanks to @Doug-Lyons for testing.

CORE-17752
2022-04-29 16:45:02 +03:00
Jose Carlos Jesus
3b496432a8 [NEWDEV] Fix Update Driver wizard dialog position (#4274)
The Update Driver wizard dialog was not completely visible.
A part of the window was off the screen.

As in Windows XP the dialog box is positioned slightly below
and to the right of the parent window (Z-order).
2022-04-29 15:00:52 +03:00
Jose Carlos Jesus
f111d4a703 [TRANSLATION] Improve Portuguese (pt-PT) translation (#4445)
* [RAPPS][EXPLORER] Improve pt-PT translation
* [BROWSEUI][COMCTL32][SHELL32] Improve pt-PT translation
* [INPUT][INTL][POWERCFG] Improve pt-PT translation
* [MAIN] Adjust object position to fit all text
* [SYSSETUP][USERENV] Update pt-PT translation
* [INF] Update pt-PT translation
2022-04-28 18:14:33 +03:00
Katayama Hirofumi MZ
55065d3b51 [NTOS:PNP] Fix GCC build (ignoring return value) (#4473)
[NTOS:PNP] Fix GCC build (ignoring return value)

Properly handle RtlDuplicateUnicodeString return status. Addendum to de316477. Thanks to @HBelusca and @Doug-Lyons.
2022-04-28 22:16:37 +09:00
Eric Kohl
de316477b9 [NTOS:PNP] IopInitializeDevice: Create a device, allocate a device node and attach it to the root node 2022-04-27 21:52:21 +02:00
Stanislav Motylkov
03c8832a77 [BOOT:RTL] Fix GCC configuration problem for ARM platform
Addendum to 24cb57fd. CORE-17604
2022-04-27 21:52:05 +03:00
Serge Gautherie
7486dbe833 [EXPLORER] syspager.cpp: Add '\n' to debug logs (#4470) 2022-04-27 15:40:13 +03:00
Victor Perevertkin
cf0bc1c132 [NTOS:PNP] Halfplement IoInvalidateDeviceState
Implement the correct start-stop sequence for resource rebalancing
without the actual rebalancing. Also move IoInvalidateDeviceState
processing into the enumeration thread as it should be.

CORE-17519
2022-04-27 02:42:20 +03:00
Victor Perevertkin
8f40fc7ede [CMAKE] Build GCC and Clang builds with -fno-common 2022-04-26 04:22:27 +03:00
Victor Perevertkin
93dcc8436c [WBEMPROX] Global variable compatibility update for gcc 10.
Imported Wine commit da21c305164c3e585e29e20242afc5a31f91989f

Signed-off-by: Michael Cronenworth <mike@cchtml.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 03:38:38 +03:00
Victor Perevertkin
c6aac2bbfd [TWAIN_32] Global variable compatibility update for gcc 10.
Imported Wine commit 4a91eb362666b3af549c48b95e093051756628e0

Signed-off-by: Michael Cronenworth <mike@cchtml.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 03:38:38 +03:00
Victor Perevertkin
f4a01431ca [MSHTML] Global variable compatibility update for gcc 10.
Imported Wine commit e402fdf364fc76838ba4e11a11fef3c552110639

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 03:38:38 +03:00
Victor Perevertkin
351fa5120a [CRYPT32] Global variable compatibility update for gcc 10.
Imported Wine commit 5740b735cdb44fb89a41f3090dcc3dabf360ab41

Signed-off-by: Michael Cronenworth <mike@cchtml.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 03:38:38 +03:00
Victor Perevertkin
98aabbcf9f [SECUR32] Do not declare global variables in a header 2022-04-26 03:38:38 +03:00
Victor Perevertkin
d2c667c616 [WINED3D] Do not declare global variables in a header 2022-04-26 03:38:37 +03:00
Victor Perevertkin
4295b007ae [HALX86] Do not define unnamed enums 2022-04-26 03:38:37 +03:00
Victor Perevertkin
522e9f6dd3 [DBGHELP_APITEST][SDK_APITEST] Fix initializing global variables 2022-04-26 03:38:37 +03:00
Victor Perevertkin
590e36479c [WS2_32_APITEST] Convert global variables to static ones 2022-04-26 03:38:37 +03:00
Victor Perevertkin
5632aa5d82 [LIBTIRPC] Do not declare global variables in a header 2022-04-26 03:38:36 +03:00
Victor Perevertkin
6e5d80df69 [COMPILER_APITEST] Convert global variables to static ones 2022-04-26 03:38:36 +03:00
Victor Perevertkin
4571c96534 [COMPILER_APITEST] Remove unused variable from MS SEH tests 2022-04-26 03:38:36 +03:00
Victor Perevertkin
97f075a2ab [USER32_APITEST] Convert global variables to static ones 2022-04-26 03:38:29 +03:00
Eric Kohl
b9c4b6aa65 [BATT] Add the composite battery installer 2022-04-25 23:33:51 +02:00
Hervé Poussineau
cb504d7b0c [WIN32SS] Fix crash if releasing a PDEVOBJ before switching to graphic mode
- do not try to remove ppdev from gppdevList if gppdevList is NULL
- do not check (and maybe change) gpmdev, as it should be done only in MDEVOBJ_vDestroy
2022-04-25 22:18:41 +02:00
Katayama Hirofumi MZ
0b0e73d66e [NTUSER] Add locking at IntSendFocusMessage (#4468)
Fix access violation on IntFocusSetInputContext.
- Add locking on pWndPrev.
CORE-18163
2022-04-25 11:36:00 +09:00
Eric Kohl
74efe979a8 [UMPNPMGR] PNP_CreateDevInst: Create a device node for the device to be installed 2022-04-24 12:56:42 +02:00
Eric Kohl
969f950bf3 [NTOS:PNP] Add a stub for NtPlugPlayControl:PlugPlayControlInitializeDevice 2022-04-24 10:02:17 +02:00
Julen Urizar Compains
072dcafc1c [MSVCRT] Enable _wfindfirst64 and _wfindnext64 in msvcrt.spec (#4464)
CORE-17666
2022-04-23 19:19:09 +02:00
Hermès Bélusca-Maïto
ff293a1877 [CSRSRV] Acquire the necessary SE_INC_BASE_PRIORITY_PRIVILEGE at shutdown (#4461)
When increasing the base priority at shutdown, acquire the necessary
SE_INC_BASE_PRIORITY_PRIVILEGE in CsrSetToShutdownPriority(),
called by CsrShutdownProcesses(), which is necessary due to the increase
of process base priority (i.e. increase of scheduling) being done.

Dedicated to George Bișoc :)

The Shutdown privilege is however unnecessary (or unwanted) since this
has been already dealt with by the shutdown caller. Also, it will be
needed only by the caller of NtShutdownSystem() -- that we don't call
at all here.
2022-04-23 19:15:22 +02:00
Hermès Bélusca-Maïto
0d08c6429d [GITHUB] Fix MSVC 2015 (v14.0) build, until a clear consensus is reached for PR #3872 (#4454)
CORE-18146

Use the matrix.os + include/exclude technique, as suggested
by Serge Gautherie :)
2022-04-23 19:14:06 +02:00
Hermès Bélusca-Maïto
1170a5a493 [GITHUB] Use the correct worker to get MSBuild VS2019 working. (#4454)
CORE-18146
2022-04-23 19:14:05 +02:00
Eric Kohl
a7a222b52d [UMPNPMGR] PNP_CreateDevInst: Convert a phantom device to a normal device 2022-04-23 16:59:47 +02:00
Eric Kohl
33a0c66f30 [UMPNPMGR] PNP_CreateDevInst: Do not create a normal device if it is already present 2022-04-23 15:35:45 +02:00
Katayama Hirofumi MZ
b0b925d2b0 [IMM32] Add ValidateHandle function (#4467)
Set the last error on failure of handle validation.
CORE-11700
2022-04-23 08:16:53 +09:00
Katayama Hirofumi MZ
e9df3176f7 [IMM32_APITEST] himc: Show class on CreateWindow failure (#4466)
Display the window class name on failure of CreateWindow function call.
CORE-11700
2022-04-23 07:18:38 +09:00
Katayama Hirofumi MZ
8f719cb97e [NTUSER][IMM32] Create the default IME window! (retry) (#4463)
The default IME window has to be created for each top-level window in specific condition. It is needed for implementing Japanese input.
- Add IntFocusSetInputContext helper function.
- Call IntFocusSetInputContext after sending WM_KILLFOCUS message.
- Add IntWantImeWindow, co_IntCreateDefaultImeWindow, and IntDestroyOwnedWindows helper functions.
- Create the default IME window (spwndDefaultIme) for the specified window at IntCreateWindow.
- Fix Imm32InternalLockIMC function.
CORE-11700
2022-04-23 07:11:48 +09:00
Hervé Poussineau
2f2795ab4c [DESK] Correctly store display frequency, so we can rollback in case of error 2022-04-20 18:23:53 +02:00
Katayama Hirofumi MZ
4bcf23d1de [NTUSER] Destroy the default IME window (#4462)
- Add IntFindNonImeRelatedWndOfSameThread, IntImeCanDestroyDefIMEforChild, and IntImeCanDestroyDefIME helper functions.
- Do assignment unlock spwndDefaultIme at co_UserFreeWindow.
- Destroy the default IME window of the specified window if necessary at co_UserDestroyWindow.
CORE-11700
2022-04-20 16:10:06 +09:00
Hermès Bélusca-Maïto
944b942eb2 [CSRSRV] Use the PROCESS_PRIORITY_NORMAL_FOREGROUND constant instead of hardcoding its value (== 9). 2022-04-20 03:53:45 +02:00
Stanislav Motylkov
27453fb759 [UMPNPMGR] Fix hang when installing devices. Addendum to 0296fce00. 2022-04-20 02:38:41 +03:00
Eric Kohl
0296fce00e [UMPNPMGR] GenerateDeviceID must fail, if pszDeviceID contains backslashes 2022-04-19 23:14:23 +02:00
Katayama Hirofumi MZ
291a94cd6f [NTUSER] Implement NtUserSetImeOwnerWindow (#4460)
- Add IntImeSetFutureOwner, IntGetLastTopMostWindowNoIME, IntImeSetTopMost, and IntImeCheckTopmost helper functions.
- Implement NtUserSetImeOwnerWindow function.
CORE-11700
2022-04-19 19:03:12 +09:00
George Bișoc
11d9c88c35 [NTOS:SE] Add token debug code
Implement initial token debug code. For now debug information that is being tracked are: process image file name, process and thread client IDs and token creation method. More specific debug code can be added later only if needed.

As for the token creation method, this follows the same principle as on Windows where the creation method is defined by a value denoting the first letter of the said method of creation. That is, 0xC is for token creation, 0xD is for token duplication and 0xF is for token filtering. The debug field names are taken from Windows PDB symbols for WinDBG debug extension support purposes. The names must not be changed!
2022-04-19 11:04:59 +02:00
Katayama Hirofumi MZ
5df5ef2bdf [NTUSER] Do assignment lock at NtUserSetThreadLayoutHandles (#4459)
- Use UserAssignmentLock in NtUserSetThreadLayoutHandles.
- Add Win: comments to many functions.
- Rename glcid as glcidSystem.
CORE-11700
2022-04-19 08:41:13 +09:00
Katayama Hirofumi MZ
c35488ec70 [NTUSER][USER32] Implement ImeWnd_OnImeNotify (#4457)
- Add code to ImeWnd_OnImeNotify function.
- Insert ASSERT(pimeui->spwnd != NULL); to some functions.
- Renaming: s/THREADSTATE_UNKNOWN17/THREADSTATE_CHECKCONIME/.
- Improve ImeWnd_OnImeSetContext function.
CORE-11700
2022-04-19 07:48:16 +09:00
Eric Kohl
f3ac86713d [UMPNPMGR] PNP_CreateDevInst: A phantom device can only be created if the device did not exist before 2022-04-19 00:09:54 +02:00
Hervé Poussineau
2c391b1eab [WIN32SS] Fix buffer overflow in MDEVOBJ when having more than 10 display devices 2022-04-18 20:01:37 +02:00
Eric Kohl
8897a890c9 [UMPNPMGR] PNP_CreateDevInst: Support the creation of phantom devices 2022-04-18 19:53:18 +02:00
Hervé Poussineau
aa80cfb46e [WIN32SS] Fix some memory leaks (introduced in 21ddeb76d9) 2022-04-18 16:23:52 +02:00
Eric Kohl
f63e8f8a03 [UMPNPMGR] Move device id generation into a separate function and limit device instance number 2022-04-18 14:14:11 +02:00
Eric Kohl
426687becf [UMPNPMGR] PNP_CreateDevInst: Do not create a new device while generating a device id 2022-04-18 12:59:41 +02:00
Eric Kohl
11886ebec2 [UMPNPMGR] PNP_GetRelatedDeviceInstance must return the root device as the parent of non-existing devices 2022-04-18 09:48:03 +02:00
Hermès Bélusca-Maïto
94d144f8a5 [BOOTDATA] Fix some services groups + MUP driver group.
Restore MUP again back to its "Network" group. CORE-12107
This reverts commit 21fc538c (r75355), that reverted part of
commit e145ed06 (r72450).

In addition: noticed by Serge Gautherie (see CORE-12107):
- AudioSrv belongs to "AudioGroup" (and not "Audio" that doesn't exist).
- lanmanworkstation belongs to "NetworkProvider" (without a space).
2022-04-18 02:40:34 +02:00
Hermès Bélusca-Maïto
2c032f3fc9 [BOOTDATA][FS] Small adjustments of filesystem drivers registry parameters.
- Fix the ErrorControl values to 1 (SERVICE_ERROR_NORMAL).
- Fix RamDisk driver type (it's SERVICE_KERNEL_DRIVER, not FS).
- btrfs.inf : This is a filesystem driver, so fix its ServiceType.

- Move 3rd-party FS data (btrfs, ext2, nfs(d)) from the system
  hivesys.inf and into their dedicated **.reg.inf files.
2022-04-18 02:40:33 +02:00
Hermès Bélusca-Maïto
75e2fb4566 [KERNEL32] Improve annotation of BaseProcess/ThreadStartup(); remove useless cast; fix PPROCESS_START_ROUTINE return type. 2022-04-18 02:40:32 +02:00
Katayama Hirofumi MZ
7e13883723 [NTUSER] Do assignment lock pti->spDefaultImc (#4456)
According to JIRA user simonelombardo, there was crash in exiting a thread.
- Add UserAssignmentLock, and UserAssignmentUnlock helper functions.
- Lock and unlock pti->spDefaultImc by using those helper functions.
CORE-18044
2022-04-18 08:23:18 +09:00
Eric Kohl
851c5e0c3a [SETUPAPI] SetupDiCreateDeviceInfoW: Fix flags conversion for CM_Create_DevInst_ExW 2022-04-17 23:32:01 +02:00
Eric Kohl
dde7e6e254 [SETUPAPI] CM_Locate_DevNode_ExW: The root device does not need to be validated 2022-04-17 22:50:26 +02:00
Hermès Bélusca-Maïto
ea3e4bb4cb [CMAKE:MSVC] Refine ASM16 ml.exe path selection. Addendum to commit 60733590. 2022-04-17 19:31:48 +02:00
Hermès Bélusca-Maïto
8ed7d4b341 [SDK:CMLIB][FREELDR:NTLDR] Revert commit 168fea0ee and provide a better fix. Addendum to 93d8a1b7b.
Correct fix was to fix the HCELL_INDEX <-> HKEY conversions, much like
is being done with UlongToHandle / HandleToUlong.

The on-disk/in-memory hive file structures are platform-independent:
their layout must not depend on whether code is compiled in 32 or 64
bits.
2022-04-17 16:46:47 +02:00
Hervé Poussineau
0ce5985109 [WIN32SS] Do not call DrvEnableDriver/DrvDisableDriver for LDEV_IMAGE types 2022-04-17 16:20:04 +02:00
Stanislav Motylkov
168fea0eee [CMLIB] Fix 64-bit build. Addendum to 93d8a1b7b.
Thanks to Hervé Poussineau for help.
2022-04-17 16:16:41 +03:00
Eric Kohl
a355e8ad27 [SETUPAPI] SetupDiCreateDeviceInfoW creates phantom devices 2022-04-17 14:29:14 +02:00
Eric Kohl
7cc5163bfa [UMPNPMGR] Add checks to PNP_GetRelatedDeviceInstance
PNP_GetRelatedDeviceInstance must fail if we try to retrieve the parent or a sibling of the root device.
2022-04-17 13:52:59 +02:00
Hervé Poussineau
1744b01ad9 [WIN32SS] Rewrite LDEVOBJ reference counting
- introduce LDEVOBJ_vDisableDriver (reversal of LDEVOBJ_bEnableDriver)
- introduce LDEVOBJ_bUnloadImage (reversal of LDEVOBJ_pLoadDriver)
- introduce LDEVOBJ_vDereference, to remove a reference to a LDEVOBJ

Also:
- correctly handle success to unload the image, by removing it from pldev list
- correctly handle failure to unload the image, by re-enabling the driver
- simplify EngUnloadImage, as a wrapper around LDEVOBJ_vDereference
- move LDEVOBJ_ulGetDriverModes lower to prevent forward declaration of
  LDEVOBJ_vDereference

Unfortunately, disable driver unloading as long as ntoskrnl can't reload
a driver it just unloaded...
2022-04-17 08:48:33 +02:00
Hervé Poussineau
3a1a2aa16f [WIN32SS] Fix use of unitialized variable 2022-04-17 08:46:09 +02:00
Hermès Bélusca-Maïto
736331973e [FREELDR:NTLDR] Rewrite RegInitCurrentControlSet() using CmpFindControlSet().
Also remove useless "success" traces at the end of some registry functions.
(Only show when they enter and when they fail.)
2022-04-17 04:57:43 +02:00
Hermès Bélusca-Maïto
94874baf19 [FREELDR:NTLDR] Use NTOS kernel's CMBOOT functions to enumerate and build the boot-time driver list.
They are correct and are more performant.

- Rewrite WinLdrAddDriverToList() on the model of CmpAddDriverToList()
  with support for CmpIsDriverInList().

- Disable RegEnumKey() as it is now unused.
2022-04-17 04:57:42 +02:00
Hermès Bélusca-Maïto
02e659d248 [BOOTDATA] Remove hackish entries that really caused the CDFS to be loaded twice in the LiveCD.
They date back from commit a880f2ee (r9611), and were the root cause for
the bug that was tentatively fixed by commit 81a9ce44e (PR #755).

On Windows, boot file system drivers have either the SERVICE_DEMAND_START
or the SERVICE_DISABLED start type, and only the filesystem to access the
boot media is manually loaded by the OS loader (other FSes that are needed
later are loaded by the FSRecognizer).

Also there is no need to disable NTFS anymore.
2022-04-17 04:57:41 +02:00
Hermès Bélusca-Maïto
93d8a1b7b1 [FREELDR:NTLDR] Adapt the registry code to access from outside the underlying HHIVE and HCELL_INDEX (needed for cmboot). 2022-04-17 04:57:40 +02:00
Katayama Hirofumi MZ
567b0700fe [NTUSER] Add 'Win:' comments to some functions (#4453) 2022-04-17 06:53:37 +09:00
Hermès Bélusca-Maïto
6ff0232368 [NTOS:CM] Adapt cmboot.c for usage in NT/ReactOS bootloader.
- Add a new cmboot.h header to isolate the boot-support definitions
  shared with the NT/ReactOS bootloader.

- Move CmpFreeDriverList() to cmboot.c so that we can use it for
  cleanup paths in the NT/ReactOS bootloader.

- CmpFindControlSet(): Directly build the control set name in UNICODE,
  instead of doing an ANSI->UNICODE conversion.

- Directly assign the CurrentControlSet\Services constant string,
  instead of going the route of init-empty-string + append-string.
  This is possible since that string is not modified later.

- Remove ASSERT(FALSE), replacing them with correct failure handling.

- Add cleanup paths in CmpAddDriverToList().

- Simplify and fix CmpFreeDriverList(): it's the full DriverNode
  that needs to be freed; not the LIST_ENTRY pointer.

- Add other validity checks:
  * Registry value types and data sizes;
  * For multi-strings, verify that they are NULL-terminated.
  * For (multi-)strings, check whether they are NULL-terminated before
    optionally removing their trailing NULL character from the count.
    Check also whether they are of zero-length and take appropriate
    action where necessary.

- Add CmpIsDriverInList() for future usage in CMBOOT compiled in
  bootloader mode.

- Add SAL annotations and Doxygen documentation.

- Add debug traces.

- Formatting / code style fixes.

** TODO: Fix SafeBoot support **
2022-04-16 18:37:45 +02:00
Hermès Bélusca-Maïto
6a03fb7099 [SDK:CMLIB] Use Hive->Allocate / Hive->Free where possible. 2022-04-16 18:33:24 +02:00
Dmitry Borisov
b79fbe2333 [NVNET] Add driver for nForce-based NICs
The driver supports all nVidia chipset models from 2001 until 2010, starting from nForce.
All NICs are compatible with x86 and amd64 devices only.

Tested by Daniel Reimer on OG Xbox and by me on MCP board.

CORE-15872 CORE-16216
2022-04-16 11:54:24 +03:00
Dmitry Borisov
269f3a2b24 [HALXBOX] Do not claim interrupt resources for the KD COM port
The actual COM port lacks SERIRQ, IRQ 4 is hardwired to the NIC

CORE-15872 CORE-16216
2022-04-16 11:54:24 +03:00
Dmitry Borisov
96b40c9566 [DDK][PSDK] Add missing NDIS definitions for wake-up support
CORE-15872
2022-04-16 11:54:24 +03:00
Katayama Hirofumi MZ
34600f3ddf [USER32] Add 'Win:' info to misc/imm.c (#4452)
- Add many Win: comments to misc/imm.c.
- Rename GetImmFileName as User32GetImmFileName.
- Rename bImmInitializing as gbImmInitializing.
- Rename gnImmUnknownFlag1 as gfConIme.
- Formating UpdatePerUserImmEnabling code.
CORE-11700
2022-04-16 14:34:06 +09:00
James Tabor
001e300d92 [Win32SS] Fix Build 2
Fix Build 2
2022-04-15 19:30:59 -05:00
James Tabor
b1d27cd0fb [Win32SS] Fix Build
Fix Build
2022-04-15 19:27:50 -05:00
James Tabor
250e5ef38f [ENG] Update Structure
Update GRAPHICS_DEVICE monitor count and video monitor device pointer.
Update dwAccelerationLeve comments.
Updated for printer support.
2022-04-15 19:19:54 -05:00
Hervé Poussineau
9400063aae [WIN32SS] Enable multidisplay driver when required
For now, it is only a stub which returns an error.
2022-04-15 23:09:16 +02:00
Hervé Poussineau
f3f4cc0f25 [WIN32SS] Implement EngQueryDeviceAttribute 2022-04-15 23:09:16 +02:00
Hervé Poussineau
c89ac107ce [WIN32SS] Handle Graphics acceleration level (registry key Acceleration.Level)
- store the acceleration level in PDEVOBJ
- when searching a pdev, search a pdev with required acceleration level
- disable some functions when not at full acceleration level
  (levels 3 and 5 are not implemented)
2022-04-15 23:09:16 +02:00
Hervé Poussineau
494de7c2df [WIN32SS] Remove now unused code
Initialization of device mode list will be done later, just before switching to graphics mode.

If no graphic display is available, we will now fail when starting first GUI application in
co_IntGraphicsCheck(). Add a bugcheck here to prevent frozen screen.
2022-04-15 23:09:16 +02:00
Hervé Poussineau
2d2824f1b9 [WIN32SS] Implement PDEVOBJ_lChangeDisplaySettings to create initial MDEV
This function can create a MDEV for the whole display (maybe containing multiple
PDEVs), or update settings of a specific PDEV.

- call PDEVOBJ_lChangeDisplaySettings when switching to graphics mode.
- modify EngpGetPDEV to search requested PDEV only in current MDEV
2022-04-15 23:09:16 +02:00
Hervé Poussineau
9db63ad595 [WIN32SS] Add functions related to MDEV (creation, destruction...) 2022-04-15 23:09:16 +02:00
Hervé Poussineau
a0cfdcd409 [WIN32SS] Introduce the MDEVOBJ structure
This will be used (later) to store the list of all enabled display devices.

Add a global variable gpmdev (should really be stored in DISPLAYINFO structure)
Replace global variable gppdevPrimary by pmdev->ppdevGlobal.
2022-04-15 23:09:16 +02:00
Hervé Poussineau
0f617ddfbb [WIN32SS] Rewrite EngpCreatePDEV as PDEVOBJ_Create
- change first argument to be a PGRAPHICS_DEVICE instead of a device name
- add ldevtype (for now, only LDEV_DEVICE_DISPLAY is allowed)
- always pass a devmode if ldevtype is LDEV_DEVICE_DISPLAY
- insert the ppdev into gppdevList on success
- change callers to adapt them to new rules
2022-04-15 23:09:16 +02:00
Hervé Poussineau
c5fb89dced [WIN32SS] Add PDEVOBJ_vEnableDisplay and PDEVOBJ_bDisplayDisplay
Use them where appropriate.
2022-04-15 23:09:16 +02:00
Hervé Poussineau
34085be22d [WIN32SS] Rename PDEVOBJ_vSwitchPdev to PDEVOBJ_bDynamicModeChange
Even if it currently always succeeds, let it return a boolean for later.
2022-04-15 23:09:16 +02:00
Hervé Poussineau
241e579dfa [WIN32SS] Improve PDEVOBJ_bEnablePDEV/PDEVOBJ_vRelease/PDEVOBJ_pSurface
- use debug channels
- handle a NULL ppdev->pGraphicsDevice
- unreference graphic driver when needed
2022-04-15 23:09:16 +02:00
Hervé Poussineau
ded971c425 [WIN32SS] Remove useless parameter dwFlags in EngpFindGraphicsDevice() 2022-04-15 23:09:16 +02:00
Hervé Poussineau
75f4be53df [WIN32SS] Preparation to load internal drivers (ie entry point in win32k)
- Change LDEVOBJ_bEnableDriver to directly take the entry point
  (pGdiDriverInfo not required anymore)
- Add LDEVOBJ_pLoadInternal to load and start an internal driver
2022-04-15 23:09:16 +02:00
Hervé Poussineau
333f3382f6 [WIN32SS] Remove useless prototype (function never existed) 2022-04-15 23:09:16 +02:00
Hervé Poussineau
3cb1dd8ab2 [WIN32SS] Rewrite PDEVOBJ_pdmMatchDevMode to LDEVOBJ_bProbeAndCaptureDevmode
- make it return a new allocated PDEVMODEW instead of a pointer into
  existing PGRAPHICS_DEVICE (usefull when available display modes can
  dynamically change: VirtualBox, RDP, ...)
- update all callers
2022-04-15 23:09:16 +02:00
Hervé Poussineau
21ddeb76d9 [WIN32SS] Extract devmode list query to new function LDEVOBJ_bBuildDevmodeList
LDEVOBJ_bBuildDevmodeList() only queries the available display modes, without
choosing the one to use on the graphic device, and without immediately
creating a PDEV.

Replace first part of EngpPopulateDeviceModeList() function by a call
to this new function LDEVOBJ_bBuildDevmodeList().
Keep second part of EngpPopulateDeviceModeList() function, which
chooses the default display mode.
2022-04-15 23:09:16 +02:00
Hervé Poussineau
7d93362f5a [WIN32SS] Implement LDEVOBJ_ulGetDriverModes
- implement LDEVOBJ_ulGetDriverModes (which get modes from a not yet loaded driver),
  and use it in EngpPopulateDeviceModeList
- remove now useless LDEVOBJ_pdmiGetModes (replaced by LDEVOBJ_ulGetDriverModes)
2022-04-15 23:09:16 +02:00
Hervé Poussineau
3b234cce25 [WIN32SS] Rename EngLoadDriverEx to LDEVOBJ_pLoadDriver 2022-04-15 23:09:16 +02:00
Katayama Hirofumi MZ
3820744a18 [NTUSER][IMM32_APITEST] Associate HIMC to WND (#4451)
- Set the default input context to WND at IntCreateWindow function.
- Add more tests to the himc testcase of imm32_apitest.
CORE-11700
2022-04-15 13:16:50 +09:00
Katayama Hirofumi MZ
f848343bff [IMM32] Improve ImmLockClientImc (#4450)
CORE-11700
2022-04-14 14:10:19 +09:00
Katayama Hirofumi MZ
e5f637f93f [IMM32] Add Win: comments more (#4449)
CORE-11700
2022-04-14 11:23:16 +09:00
Serge Gautherie
0c5fc49f82 [CMAKE] msvc.cmake: Enable C4090 warning as error
C4090: different 'modifier' qualifiers

Follow-up to 42d2d5e (0.4.14-dev-847) and 41bc57d (0.4.15-dev-2952),
which silenced affected modules.
CORE-7538
2022-04-12 02:08:45 +03:00
Thamatip Chitpong
59dcec1faf [TASKMGR] Processes page: Add "Properties" and "Open File Location" context menu items (#4323)
Signed-off-by: Thamatip Chitpong <tangaming123456@outlook.com>
Reviewed-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
2022-04-11 19:28:28 +03:00
Serge Gautherie
4121b0e805 [MIDIMAP] MIDIMAP_modMessage(): Fix a MSVC amd64 C4133 warning
MSVC amd64
'...\dll\win32\winmm\midimap\midimap.c(474): warning C4133: 'function': incompatible types - from 'LPDWORD' to 'DWORD_PTR *''

Import missed parts of
29b00e1a8c

Addendum to b40e7f0 (r47900).
CORE-7538
2022-04-11 19:20:13 +03:00
Katayama Hirofumi MZ
05bbbd7d8b [NTUSER] Dereference spDefaultImc at UserCreateInputContext (#4446)
Dereference pti->spDefaultImc by UserDereferenceObject if pti->spDefaultImc is NULL at UserCreateInputContext function. CORE-11700
2022-04-11 10:53:36 +09:00
Katayama Hirofumi MZ
88c1d8c737 [NTUSER] Set error on NtUserCreateInputContext (#4444)
Set the error code correctly on NtUserCreateInputContext.
CORE-11700
2022-04-10 19:26:19 +09:00
Katayama Hirofumi MZ
0f1e19a7b6 [NTUSER] Simplify IntDestroyInputContext (#4443)
CORE-11700
2022-04-10 17:20:21 +09:00
Katayama Hirofumi MZ
eb902e5bee [NTUSER] Improve NtUserDestroyInputContext etc. (#4442)
CORE-11700
2022-04-10 12:27:38 +09:00
Katayama Hirofumi MZ
de38e3be61 [NTUSER][INCLUDE] Add IMC offset info (#4439)
Add C_ASSERT assertions on the offsets of the members of IMC structure. CORE-11700
2022-04-10 07:27:30 +09:00
Hermès Bélusca-Maïto
04eca8e2b2 [WIN32K] Remove incorrect packing specification around _TL, _WIN32THREAD and _THREADINFO structures.
CORE-18140

This was introduced historically in commit 583de66b3 (r7460) to
workaround some compiler problems (or replace already existing
GCC-specific __attribute__((packed)) annotations); however these
structures are in-memory-only, do not describe any on-disk data
format and don't describe hardware-specific data. So they should
have the "natural" alignment of the target platform.

They also have to match the documented layouts at:
https://reactos.org/wiki/Techwiki:Win32k/THREADINFO
https://www.geoffchappell.com/studies/windows/km/win32k/structs/threadinfo/index.htm
at least for the compatible parts that ReactOS shares.
2022-04-09 23:31:44 +02:00
Hermès Bélusca-Maïto
e5d17a0219 [HALX86:ACPI] Use the correct PCH file for compilation.
This also removes the following warnings, that were present because,
as the ACPICA acpi.h header was used as PCH (instead of none, or the
hal's own main header), it was "included" before any other header
-- and in particular, before hal.h -- and as a result, colliding defines
were still defined even if the #undef tricks were used for them.

rosbuilds\sdk\include\reactos\mc\bugcodes.h(1417): warning C4005: 'ACPI_BIOS_ERROR': macro redefinition
reactos\drivers\bus\acpi\acpica\include\acoutput.h(243): note: see previous definition of 'ACPI_BIOS_ERROR'
reactos\hal\halx86\include\hal.h(41): warning C4109: unexpected identifier '_read'
reactos\hal\halx86\include\hal.h(42): warning C4109: unexpected identifier '_read'
2022-04-09 20:18:03 +02:00
Katayama Hirofumi MZ
bc8a4ac37b [IMM32] Many renamings and 'Win:' info (#4438)
- Add many Win: comments.
- s/Imm32UnloadIME/Imm32FreeIME/
- s/Imm32LoadImeInfo/Imm32LoadIME/
- s/g_hImm32Inst/ghImm32Inst/
- s/Imm32AllocAndBuildHimcList/Imm32BuildHimcList/
- s/Imm32SelectLayout/Imm32SelectInputContext/
CORE-11700
2022-04-09 10:41:39 +09:00
Hermès Bélusca-Maïto
cfe387a9b0 [BOOTDATA] Add two missing separating commas in the ServiceGroupOrder List multi-string.
Typos introduced in commit 4d1ea554c.
These had the effect of enumerating "NetworkProviderRemoteValidation"
and "Extended BasePCI Configuration" as groups, which were of course
invalid/non-existent.
The actual groups are: "NetworkProvider", "RemoteValidation",
"Extended Base", and "PCI Configuration".

Fixing this may correct the loading order of drivers that belong to
these groups (if we do have such drivers).
2022-04-09 03:15:57 +02:00
Mark Jansen
fd00338b59 [WINESYNC] Fail gracefully when unable to delete a file 2022-04-09 01:26:30 +02:00
Mark Jansen
d4e38a630f [SYSSETUP] Add new Env section to unattend.inf
This allows to add environment variables during unattended setup
2022-04-09 01:25:06 +02:00
Mark Jansen
62d7486ef6 [PSDK] Add more argument names 2022-04-09 01:22:11 +02:00
Mark Jansen
513d0a6d2d [SHELL32] Copy without FILE_ATTRIBUTE_READONLY from a CDROM
CORE-18089
2022-04-09 01:21:57 +02:00
Mark Jansen
5606fb159e [MSVCRT_WINETEST] Mute _CRT_NON_CONFORMING_SWPRINTFS 2022-04-08 22:40:26 +02:00
Piotr Hetnarowicz
0b8891a7d3 [DISKPART] Update Polish (pl-PL) translation (#4413)
Addendum to 2ba6b097, 38b38bbf, and fd8dd586.
2022-04-08 19:14:51 +03:00
Katayama Hirofumi MZ
8de7439887 [IMM32] Fix & Rename: s/Imm32LockIMCEx/Imm32InternalLockIMC/ (#4436)
- Fix & Rename: s/Imm32InitContext/Imm32CreateInputContext/ (Win: IMM32!CreateInputContext).
- Fix & Rename: s/Imm32LockIMCEx/Imm32InternalLockIMC/ (Win: IMM32!InternalImmLockIMC).
- Add CtfImmTIMCreateInputContext stub.
CORE-11700
2022-04-08 22:23:30 +09:00
Katayama Hirofumi MZ
c3fac567ca [IMM32] Renaming: s/Imm32FreeImeDpi/Imm32UnloadIME/ (#4435)
Improve debuggability. CORE-11700
2022-04-08 19:50:41 +09:00
Katayama Hirofumi MZ
3c1697146f [IMM32] Renaming: s/g_pImeDpiList/gpImeDpiList/ (#4434)
Improve debuggability. CORE-11700
2022-04-08 19:02:08 +09:00
Katayama Hirofumi MZ
895909e695 [IMM32] Renaming: s/g_csImeDpi/gcsImeDpi/ (#4433)
Improve debuggability. CORE-11700
2022-04-08 18:21:54 +09:00
Justin Miller
eebe11ae0c [HALX86] Add support for parsing ACPI MADT tables 2022-04-07 22:54:32 +03:00
Justin Miller
5c79900519 [HALX86] Add a way to print the ProcessorTable data on bootup 2022-04-07 22:54:32 +03:00
Justin Miller
a09f925c1c [HALX86] Implement HalpSetupProcessorsTable
Add a helper function for getting a pointer to the PRCB of every processor
in the system and assign it to the PROCESSOR_IDENTITY struct.
2022-04-07 22:54:31 +03:00
Justin Miller
0fc21e5a9b [HALX86] Add function prototypes needed for parsing ACPI MADT table
- Use ACPICA headers to gather the information.
- Add PROCESSOR_IDENTITY structure that will be used by all APIC HALs.
2022-04-07 22:54:13 +03:00
Justin Miller
2204695f0a [SDK] Fix some arm64 stuff that was discovered during testing
Addendum to 6dfc13e4. CORE-17518
2022-04-07 19:50:43 +03:00
Justin Miller
3cee1f718b [XDK] Start define of xdk ke.h for arm64
CORE-17518
2022-04-07 19:50:42 +03:00
Katayama Hirofumi MZ
4342b84c9a [IMM32] Add ctf.c for Cicero (#4430)
Preparing of Cicero (modern input method) support.

- Add ctf.c and add some CTF functions.
- Modify the IMM table.
- Modify imm32.spec.
- Rename: s/Imm32FreeImeStates/Imm32DestroyImeModeSaver/.
- Improve Imm32DestroyInputContext.

CORE-11700
2022-04-07 22:55:33 +09:00
Jose Carlos Jesus
7a83e0a145 [SHELL32] Remove horizontal scrollbar in File Types property page (#4412)
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2022-04-07 16:10:50 +03:00
Raymond Czerny
1b5abe8837 [SHELL32] Make Control Panel applets start in single instance (#4405) (#4405)
In MS Windows all control panel applets are started in single instance.
This prevents conflicts of concurrent accesses to the configuration data.

Before starting applets, look up the dialog window of the existing instance
by checking several atoms, such as the applet path, CPLName, and CPLFlags.
If the dialog is found, it's brought to the foreground, and a new applet
instance not started.

CORE-7921 CORE-17025

Signed-off-by: Raymond Czerny <chip@raymisoft.de>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
Reviewed-by: Mark Jansen <mark.jansen@reactos.org>
2022-04-07 15:58:13 +03:00
Hermès Bélusca-Maïto
184b8a30cb [BOOT:RTL] Fix AMD64 build. Addendum to 24cb57fde.
Turns out, that rtl/amd64/rtlmem.S doesn't currently compile fine with
ML64, and it wasn't included for compilation anyways in the original RTL.
So, just remove it from there as well.
2022-04-07 04:21:02 +02:00
Hermès Bélusca-Maïto
f10437b1e2 [FREELDR:NTLDR] Expose and use the CurrentControlSetKey handle.
This allows: (i) to shorten dramatically the lengths of the static
registry path strings being used (and thus, allow for reduced binary
file size), and (ii) to prepare future support for selecting different
control sets (and related Last-Known-Good configurations).
2022-04-07 03:19:11 +02:00
Hermès Bélusca-Maïto
57b9c6b2f2 [FREELDR:NTLDR] Improve NLS data loading.
- Use UNICODE_STRINGs wherever possible.
- Retrieve the OEMHAL font file name. TODO: Load it!

- In WinLdrLoadNLSData(), don't open/close each file twice (and showing
  we are loading them twice). Instead, open all files at once (and keep
  them that way), retrieve their sizes and do the calculations, then
  load their respective contents one by one -- giving loading feedback
  only at that point -- and finally close all of them at once.
2022-04-07 03:19:10 +02:00
Hermès Bélusca-Maïto
24cb57fdea [BOOT][SDK:RTL] Compile a reduced RTL library for FreeLdr / NT bootloader...
... as it should have always been done (and must be done for NTDLL
and NTOS kernel as well). This allows using the RTL with the correct
definitions and the reduced functionality available at boot-time.

+ Make the RTL main header compatible.

In addition, this will permit re-using existing code that already
uses the RTL (mostly string conversions).

See commits 427c90af3 (r36761) and b46e8cc18 (r36980) for some
background.
2022-04-07 03:19:09 +02:00
Hermès Bélusca-Maïto
2ac49f0824 [SDK:RTL] Minimal formatting for NLS functions + Remove inadequate assert in RtlUpcaseUnicodeToOemN(). 2022-04-07 03:19:06 +02:00
Hermès Bélusca-Maïto
7416328523 [SDK:NTOS_VISTA] Fix GCC AMD64 build. Addendum to commit 6f559e9c5. (#4426)
Instead of adding the rtl_vista library to the target, manually add
the related source files to compilation. That's not the best, but
this should definitively fix the linking problem.
2022-04-07 01:52:33 +02:00
Joachim Henze
2f7dc168f2 [WINHTTP] Fix 1 MSVC x86 warning LNK4199 (#4414) CORE-18104
Fixes
Creating library dll\win32\winhttp\winhttp.lib and object dll\win32\winhttp\winhttp.exp
LINK : warning LNK4199: /DELAYLOAD:ole32.dll ignored; no imports found from ole32.dll

which I could observe all the way from releases/0.4.7 up to releases/0.4.14
with MSVC 2010SP1 (16.0.40219.1) x86 target in dbg configuration
2022-04-07 00:36:52 +02:00
Katayama Hirofumi MZ
a40f55bf6d [IMM32] Renaming: s/Imm32InitInstance/ImmInitializeGlobals/ (#4428)
- Rename Imm32InitInstance as ImmInitializeGlobals.
- Add Win: comments.
CORE-11700
2022-04-06 15:44:27 +09:00
Katayama Hirofumi MZ
2f7775c604 [NTUSER] Add 'Win:' comments to ime.c and window.c (#4427)
- Add 'Win:' comments to clarify the Windows-side function names.
CORE-11700
2022-04-06 13:11:57 +09:00
Thomas Faber
9f5cde9cbe [WIN32K:NTUSER] Remove broken assert in NtUserCreateWindowEx. CORE-18123 2022-04-03 23:44:09 -04:00
Thomas Faber
7d1a497619 [NTOS:EX] Only set WakeTimer-related status if timer handle is valid. CORE-18133
Since STATUS_TIMER_RESUME_IGNORED is a success status, we would
otherwise go into the success case with a NULL Timer object pointer.
2022-04-03 20:13:09 -04:00
Hermès Bélusca-Maïto
6f559e9c54 [RTL][NTOS_VISTA] Move the RTL UTF8 functions to the main RTL library, to be linked in the rtl_vista target instead.
The reason is that both RtlUTF8ToUnicodeN() and RtlUnicodeToUTF8N() are
exported in both kernel and user-mode (ntdll) in Windows 7+.

Conversion from and to UTF8 are fundamental enough that they indeed
deserve to be in a separate file.
2022-04-03 20:41:11 +02:00
Stanislav Motylkov
fe452a1dad [COMCTL32][COMDLG32] Fix Serbian (Latin) sublanguage identifiers
Should really fix MSVC build. Addendum to 64c87aab.
2022-04-02 23:36:28 +03:00
Stanislav Motylkov
64c87aab73 [TRANSLATION] Fix Croatian (hr-HR) sublanguage identifiers
Should fix MSVC build. Addendum to 4644e5b7.
2022-04-02 22:54:19 +03:00
Andrej Bartulin
4644e5b75d [TRANSLATION] Update Croatian (hr-HR) translation (#4375)
- [COMCTL32] Fix Croatian (hr-HR) MessageBox mnemonics
- [SYSSETUP] Add Croatian (hr-HR) translation

2nd stage of setup translated to Croatian and hotkey fix in MessageBox
("Napijed" and "Nazad" share the same keyboard mnemonic, Alt+N).
2022-04-02 20:32:28 +03:00
Hermès Bélusca-Maïto
64290dd2c9 [BOOT] Move boot-related commands from boot/CMakeLists.txt into a boot_images.cmake sub-file. (#4407)
This allows the CMakeLists.txt file to be less cluttered by unrelated stuff.
2022-04-01 04:58:08 +02:00
Hermès Bélusca-Maïto
88618f176d [BOOTSECT] ISOBOOT: Add missing trailing 0x55AA sector signature. 2022-04-01 04:57:31 +02:00
Hermès Bélusca-Maïto
3d3a5aa02e [SDK:REACTOS][SVCHOST] Add/complete all missing definitions in the SVCHOST global header. (#4295)
Following commit 24a727a23, give a lift to the SVCHOST global header
and add & complete all the missing definitions.

- Based on https://www.geoffchappell.com/studies/windows/win32/services/svchost/process/globaldata.htm
  from public debug symbols (e.g. svchost, mswsock, w32time, wscsvc...),
  adjust some of our symbols' names.

- Make the header C++-compatible.

- Even if the start/stop RPC server functions return an error code whose
  underlying storage type is a 32-bit long, they don't return an RPC
  status error code, but an NT status. Thus, use the adequate type
  instead.

- The PSVCHOST_STOP_CALLBACK is nothing but a WAITORTIMERCALLBACK function.

- Take the opportunity to fix some of these functions' SAL annotations.

- Remark: "LP" for pointers is old-fashioned Windows, avoid this in NT code.

[MSWSOCK][SECLOGON] Do the minor adjustments. Remove unnecessary function casts.
2022-04-01 04:55:31 +02:00
Joachim Henze
493bb8de46 [CMAKE] msvc.cmake: Remove redundant '/Gy' (#4424)
* [CMAKE] msvc.cmake: Remove redundant '/Gy'

Function-level-Linking '/Gy' is already enabled unconditionally
at line 26. So no need to enable it here another time.
Makes the differences between the multiple OPTIMIZE-levels more obvious.

* [CMAKE] msvc.cmake: Fix typo in comment
2022-03-31 21:18:26 +02:00
Luke Luo
f59c58d833 [TRANSLATION] Improve Simplified & Traditional Chinese translations (#4388)
Reviewed-by: Chan Chilung <eason066@gmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-03-31 20:38:52 +03:00
Wu Haotian
0c42866e64 [TRANSLATION] Review & update Simplified Chinese (zh-CN) translation (#3933)
Reviewed all Chinese Simplified translation files and updated those
inappropriate or outdated ones.

Co-authored-by: Liu Wenyuan <15816141883@163.com>
Reviewed-by: Chan Chilung <eason066@gmail.com>
Reviewed-by: He Yang <1160386205@qq.com>
Reviewed-by: Zheng Jianping <robsean@126.com>
Reviewed-by: Luo Yufan <njlyf2011@hotmail.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-03-31 20:30:52 +03:00
Chan Chilung
2752c42f0b [TRANSLATION] Update Hong Kong Chinese (zh-HK) translation - Part 2 (#4347)
- Added zh-HK translation for following files:
  - [BASE/SERVICES/W32TIME]
  - [BASE/SYSTEM/...] (except CMD console only applications)
  - [FDEBUG]
  - [DLL/CPL/...] (except Wine related applications)
  - [DLL/SHELLEXT/...]
  - [DLL/WIN32/...] (not all applications are translated, and Wine related applications are excluded from this part)
  - [MODULES/ROSAPPS/APPLICATIONS/...] (not all applications are translated)
  - [SCREENSAVERS]
  - [NTVDM]
  - [USERSRV]
- Translation Improvement
- Fix header for zh-TW and zh-HK translation files

Reviewed-by: Luo Yufan <njlyf2011@hotmail.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-03-31 17:10:21 +03:00
Joachim Henze
fd8dd5868e [DISKPART] *.rc Reduce likelihood of translators messing with indentation (#4421)
Colons in the neighbor-lines must be aligned to each other. It is easier for translators to respect this
in their translation if all strings start at the same column in their editor.
2022-03-31 15:57:59 +02:00
Jose Carlos Jesus
9c28ea3330 [REGEDIT][ACCESS] Improve Portuguese (pt-PT) translation (#4326)
- [REGEDIT] Update pt-PT translation and adjust objects
- [ACCESS] Improve pt-PT translation
- [ACCESS] Adjust object position for better appearance
2022-03-31 15:58:13 +03:00
Katayama Hirofumi MZ
6541c423f4 [IMM32] Add more 'Win:' comments (#4423)
CORE-11700
2022-03-31 19:36:11 +09:00
Katayama Hirofumi MZ
97f4c3c3af [IMM32] Renaming: s/ImmLockOrLoadImeDpi/Imm32FindOrLoadImeDpi/ (#4422)
- Rename ImmLockOrLoadImeDpi as Imm32FindOrLoadImeDpi.
- Imm32FindOrLoadImeDpi --> Win: FindOrLoadImeDpi.
CORE-11700
2022-03-31 19:35:31 +09:00
Katayama Hirofumi MZ
89846a2977 [IMM32] Renaming: worker functions (#4420)
Renaming: s/Imm32SetCompositionStringAW/ImmSetCompositionStringAW
Renaming: s/Imm32GetImeMenuItemsAW/ImmGetImeMenuItemsAW/
Renaming: s/Imm32RequestMessageAW/ImmRequestMessageAW/
CORE-11700
2022-03-31 14:34:08 +09:00
Katayama Hirofumi MZ
166786061c [IMM32] Renaming about IME layout (#4419)
CORE-11700
2022-03-31 13:52:16 +09:00
Katayama Hirofumi MZ
6dfe032152 [IMM32] Renaming: s/g_SharedInfo/gSharedInfo/ (#4418)
CORE-11700
2022-03-31 10:00:06 +09:00
Katayama Hirofumi MZ
ed765b7c3b [IMM32] Renaming: s/pImmHeap/ghImmHeap/ (#4416)
CORE-11700
2022-03-31 09:11:13 +09:00
Oleg Dubinskiy
5d81de7d5b [REACTOS] Update email in all my copyrights (#4415)
Change it to Gmail, because Yandex disabled ua domain, which was used in my previous email.
2022-03-31 01:53:30 +02:00
Katayama Hirofumi MZ
f8902dc327 [IMM32] Renaming: s/Imm32CleanupContext/Imm32DestroyInputContext/
CORE-11700
2022-03-29 19:02:56 +09:00
Katayama Hirofumi MZ
720da3b9be [IMM32] Renaming: s/Imm32GetContextEx/ImmGetSaveContext/
CORE-11700
2022-03-29 18:05:09 +09:00
Katayama Hirofumi MZ
46518ad601 [IMM32] Renaming: s/Imm32HeapAlloc/ImmLocalAlloc/
s/Imm32HeapFree/ImmLocalFree/
CORE-11700
2022-03-29 18:02:25 +09:00
Katayama Hirofumi MZ
0d744afbc7 [IMM32] Renaming: s/g_hImm32Heap/pImmHeap/
CORE-11700
2022-03-29 17:59:23 +09:00
Katayama Hirofumi MZ
82fa82d8e1 [IMM32] Renaming: s/g_psi/gpsi/
CORE-11700
2022-03-29 17:57:28 +09:00
Eric Kohl
a4f08c7746 [DISKPART] Fix duplicate resource IDs 2022-03-28 21:04:06 +02:00
Oleg Dubinskiy
7309801e5a [NTOS:IO] IoRegisterDeviceInterface: create non-volatile keys for new device interfaces
Always create only non-volatile (sub)keys when registering a new device interface, so then they are saved after reboot.
On Windows, nearly all device interface keys are non-volatile, except the "Control" subkey, which is managed by IoSetDeviceInterfaceState instead.
In particular, it fixes MS sysaudio loading failure with MS audio drivers replacement (ks, portcls, swenum, sysaudio, wdmaud). My IoGetDeviceInterfaceAlias implementation is also required to be applied. MS sysaudio implementation(s) except that those keys are non-volatile (but we're creating them volatile instead), and trying to create a subkey(s) there (via other IoDeviceInterface* routines), to read/write some needed data. But then they fail to do that with STATUS_CHILD_MUST_BE_VOLATILE (0xc0000181), obviously because our keys are volatile.
The volatile keys can never have non-volatile subkeys.
CORE-17361
2022-03-28 08:13:05 +02:00
Hermès Bélusca-Maïto
215148267e [HALX64] Do not claim to handle display reset if you don't. Fix bootvid display initialization in x64 as a result.
The HalpBiosDisplayReset() function is currently stub-plemented.
Returning FALSE will make bootvid take the route of fully
re-initializing the VGA display all by itself.
2022-03-28 00:32:25 +02:00
Eric Kohl
38b38bbf0c [DISKPART] Implement the detail command
Display disk and partition details.
2022-03-28 00:25:34 +02:00
Eric Kohl
8476ae6ed5 [DISKPART] Improve the conversion of numeric command parameters 2022-03-28 00:04:24 +02:00
Eric Kohl
72087c1e3a [DISKPART] Move helper functions to a separate file 2022-03-27 20:09:34 +02:00
Hermès Bélusca-Maïto
d873865971 [SDK:CMLIB] Const-ify the unicode strings that are only used as input and not modified. 2022-03-27 19:38:54 +02:00
Hermès Bélusca-Maïto
a6da36ed1b [BOOTDATA] Properly capitalize 'Boot File System'. 2022-03-27 19:38:53 +02:00
Hermès Bélusca-Maïto
ce641de1e0 [NTOS:CONFIG] Add missing HvGetCell casts. Addendum to a4cad7be6. 2022-03-27 19:38:53 +02:00
Hermès Bélusca-Maïto
8ccd435eb0 [SDK:CMLIB] HvGetCell is a macro calling the hive's GetCellRoutine callback.
In principle there should be different get-cell routines, depending
on the type of the hive (given by the OperationType parameter of
HvInitialize): for flat hives, memory-mapped hives, etc.
For now in ReactOS we only support a restricted subset of these,
therefore we are still happy with a single get-cell callback...
This may change in the future.
2022-03-27 18:37:16 +02:00
Hermès Bélusca-Maïto
a4cad7be6b [SDK:CMLIB][MKHIVE][BOOT:ENVIRON][NTOS:CONFIG] Add missing HvGetCell casts. Replace some ASSERT(FALSE). 2022-03-27 18:37:16 +02:00
Eric Kohl
641fdb342e [DISKPART] Store full scsi address in the diskentry 2022-03-27 18:05:04 +02:00
Eric Kohl
5a63f3e85a [DISKPART] Implement the uniqueid command
TODO: Set disk signatures.
2022-03-27 17:54:38 +02:00
Eric Kohl
2ba6b09754 [DISKPART] Add volume support
Add the 'list volume' and 'select volume' commands
2022-03-26 15:18:08 +01:00
Hermès Bélusca-Maïto
eeb4cbcb6b [FREELDR:INF] Change immutable input string pointers to PCSTR when it's possible. 2022-03-25 18:54:22 +01:00
Hermès Bélusca-Maïto
e51c305f51 [SDK:RTL] Consistently use the Allocate/FreeStringMemory helpers when allocating/freeing string buffers. 2022-03-25 18:54:21 +01:00
Hermès Bélusca-Maïto
ab827f5225 [SDK:RTL] Don't copy-paste rtl.h into rtl_vista.h; just include it instead. 2022-03-25 18:54:20 +01:00
Hermès Bélusca-Maïto
fa404fb2b4 [SDK:RTL] Place source files in alphabetical order in CMakeLists.txt 2022-03-25 18:54:19 +01:00
Hermès Bélusca-Maïto
9d3c3a757a [SDK:REACTOS][CMLIB][BOOT] Get rid of the FreeLdr-specific __FREELDR_H define, and use the standard NT _BLDR_ instead.
This standard _BLDR_ define is already defined for both FreeLdr and
boot/environ UEFI bootloader lib, so no actual behavioural changes
should occur.
2022-03-25 18:54:18 +01:00
Joachim Henze
44a6987493 [CRT_APITEST] wctomb.c Fix '\n.' typos CORE-18103
Addendum to 0.4.15-dev-139-g 3cb0bdaa0b

Those were the only new cases introduced in the ReactOS source tree since
our last cleanup in that regard.
Ftr I think adding such finishing dots in debug prints are nonsense in general.
2022-03-25 18:42:07 +01:00
Joachim Henze
a8107ee446 [REACTOS] Fix ' \n' typos in *.rc CORE-18103
Some new were introduced recently since we did that
replacement the last time. Kill them quickly.
2022-03-23 21:10:08 +01:00
Joachim Henze
b66389c140 [SERVICES] Restore Herves name and readd g_dwServiceBits CORE-18071
Partial revert of 0.4.15-dev-4274-g d31a557237

As hbelusca explained the special character will warn only
once for each non-UTF8-file and not every time, unlike I anticipated.

The g_dwServiceBits is not important right now, but hpoussin expects it
to be a preparation step for making the stuff passed to the
function SetServiceBits() persistent
https://docs.microsoft.com/en-us/windows/win32/api/lmserver/nf-lmserver-setservicebits
for (yet unknown) features to come.
2022-03-20 20:52:53 +01:00
Joachim Henze
d31a557237 [SERVICES] Tweak the binary size a bit CORE-18071
Fixes some typos like "alread"->"already"
and kill g_dwServiceBits in rpcserver.cpp
and omit points and exclamation marks at end of prints.

On GCC8.4.0dbg RosBE2.2.1 this shrinks the file for me from 210.432 to 209.920
The file is loaded many times into memory, therefore
optimization pays off here at runtime memory consumption.

Also shorten to H. Poussineau in the header sections,
to stop git from displaying diff in that line on each review
due to that special char.
2022-03-20 20:12:56 +01:00
Mark Jansen
80c56a5f6c [WINESYNC]: msi is now in sync with wine-staging wine-7.3 2022-03-20 19:28:46 +01:00
winesync
3b5586f635 [WINESYNC] msi: Create the custom action server as an elevated process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51143
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>

wine-staging patch by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:45 +01:00
winesync
48d97683b3 [WINESYNC] msi: Do not sign extend after multiplying.
Signed-off-by: Mark Jansen <learn0more+wine@gmail.com>

wine-staging patch by Mark Jansen <learn0more+wine@gmail.com>
2022-03-20 19:28:45 +01:00
winesync
f162f02b5d [WINESYNC] msi/tests: Fix the trailing linefeed in an ok() message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 194d1b72587756512c693df7c2fce505d591c905 by Francois Gouget <fgouget@free.fr>
2022-03-20 19:28:45 +01:00
winesync
0dd82beda9 [WINESYNC] msi/tests: Correctly free usersid.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1bab386adffce4cd5589cec43b407d53230ef1cd by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:45 +01:00
winesync
1b4acd3c65 [WINESYNC] msi/tests: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 54b8c8c7eaafd19780cb4d91b763fe2f20327f50 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:45 +01:00
winesync
02f995b22e [WINESYNC] msi: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c3135c632f1df0091afd5d0d62855f3dc7abe247 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:44 +01:00
winesync
36bf554942 [WINESYNC] msi: Use correct integral type.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 337d7911bfb83b0e775a34c96b67b4e67c1fa871 by Eric Pouech <eric.pouech@gmail.com>
2022-03-20 19:28:44 +01:00
winesync
d683397fb9 [WINESYNC] msiexec: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 081bd13f1159b43b4d9167d878217669d0eff3cd by Eric Pouech <eric.pouech@gmail.com>
2022-03-20 19:28:44 +01:00
winesync
848267813e [WINESYNC] msi: Fix memory leak in get_fusion_filename (Coverity).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ad90181e1407bc4ffe81e55f07f83b23c09cccb8 by Alex Henrie <alexhenrie24@gmail.com>
2022-03-20 19:28:44 +01:00
winesync
6aefc5b976 [WINESYNC] msi/tests: Use CRT allocation functions.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 11ddaf067f80749fa1a40b28dba3aa3f88a70623 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:44 +01:00
winesync
1b18dc22d5 [WINESYNC] msi: Use CRT allocation functions.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0d5f28457e8eced81677509f5129a20f10df526c by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:43 +01:00
winesync
34c24483e5 [WINESYNC] msi/tests: Avoid "misleading indentation" warnings.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 164664a34ee7f01395e8b9028728a026268c1595 by Fabian Maurer <dark.shadow4@web.de>
2022-03-20 19:28:43 +01:00
winesync
5deb0e6042 [WINESYNC] msi: Use custom action name for MsiBreak handling.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50433
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b74b634335c8d843e6dc2ef21e5d9248ca05bae9 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:43 +01:00
Mark Jansen
218a1ae241 [WINESYNC] include: Introduce winetest_push_context() and winetest_pop_context().
include: Introduce winetest_push_context() and winetest_pop_context().

Based on vkd3d's vkd3d_test_set_context(), but adding support for a stack of
context prefixes, to more easily accomodate tests with nested loops.

af39a1b0bce0622ed8df0e64f9c794380eb30c45

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:43 +01:00
winesync
eb75eae983 [WINESYNC] makefiles: Specify the bison prefix directly in the source files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f4af3134dec425706b74428317e9ab327b6061cc by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:42 +01:00
winesync
9a05b53ce8 [WINESYNC] msi: Don't call RegCloseKey with uninitialized value.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4240e71a350b16d7ba048a839683c2023d03c831 by Eric Pouech <eric.pouech@gmail.com>
2022-03-20 19:28:42 +01:00
winesync
3d6aaff254 [WINESYNC] msi: GetBinaryType() doesn't accept DLLs.
With help from Dmitry Timoshkov.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51790
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4aa858c9badfb35bcc3cdd38abfd40dc5b06c696 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:42 +01:00
winesync
faea5bf012 [WINESYNC] msi: Wrap around to first record at end of view in MSI_ViewFetch.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 547492007e17ed7fe3c2e5ffd5f58f0d46a40048 by Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-03-20 19:28:42 +01:00
winesync
47b3e61d62 [WINESYNC] msi/tests: Add tests for MsiViewFetch wraparound behaviour.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f26a9d093dff052e1db0c68db8801219d409cb3f by Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-03-20 19:28:42 +01:00
winesync
91f589bcea [WINESYNC] makefiles: Directly generate resources also for non-registered typelibs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 04d8725080fdc1c97fcd04065acf6b30f42057a7 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:41 +01:00
winesync
6eaaa698cd [WINESYNC] msiexec: Append .msi extension to file name if file is not found.
Fixes Stellaris failing to install launcher at start.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fd5d942a733bf35b7c6b6644d2aed571c185baba by Paul Gofman <pgofman@codeweavers.com>
2022-03-20 19:28:41 +01:00
winesync
f56eca297a [WINESYNC] msi: Use the standard va_list instead of __ms_va_list.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 523553512a580a885b1783c773699dfe0928e3b6 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:41 +01:00
winesync
8c1eae241a [WINESYNC] msi: Pass size in bytes to RegQueryValueExW().
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6a6bdd2cee87bb076d57aaa013b2492d8b70506f by Zhiyi Zhang <zzhang@codeweavers.com>
2022-03-20 19:28:41 +01:00
winesync
00510cf555 [WINESYNC] include: Use the standard va_list instead of __ms_va_list when building with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2a92c58e1152e1d80395cf31d7cd3f282d094540 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:41 +01:00
winesync
d749abb725 [WINESYNC] msi: Fixup Installer\\Patches\\<...> key path (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 856e8ea298eebf0eaedd5f352476e6e986b1bd67 by Nikolay Sivov <nsivov@codeweavers.com>
2022-03-20 19:28:40 +01:00
winesync
a966ff8233 [WINESYNC] msi: Set dialog as parent in subsequent dialog.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51576
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4b88e290521ef9fde9290c9bcbae7420966a6f46 by Fabian Maurer <dark.shadow4@web.de>
2022-03-20 19:28:40 +01:00
winesync
e097431ffc [WINESYNC] msi: Don't leak the file handle on error in cabinet_close_file_info().
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a0a800ab1bd174e78b03d4592d1caca0322cd1c9 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:40 +01:00
winesync
bdddd67734 [WINESYNC] msiexec: Add system DPI awareness settings to the application manifest.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aa3f2ccd1dbf963cd1bed5e15458719a0488017d by Zhiyi Zhang <zzhang@codeweavers.com>
2022-03-20 19:28:40 +01:00
winesync
c239da3a8a [WINESYNC] msi: Remove CDECL on static functions where not needed.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b60e4064508e79ca6fdb2937ca8cfd3f58423f79 by Francois Gouget <fgouget@free.fr>
2022-03-20 19:28:40 +01:00
winesync
026a2db614 [WINESYNC] msi: Fix ASCII / ANSI mixups in comments.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 45fb4ac4e2f94486e36d6d271c08b59feee4d12e by Francois Gouget <fgouget@free.fr>
2022-03-20 19:28:39 +01:00
winesync
0a1c22503d [WINESYNC] include: Fix size of MsiEnumClientsEx[AW]'s array argument (GCC).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 14e205ff502ec7275d2c4cf59b1446ac0a294416 by Alex Henrie <alexhenrie24@gmail.com>
2022-03-20 19:28:39 +01:00
winesync
a8f4759920 [WINESYNC] msiexec: Enable visual styles.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 76e448bd7dc147443191b9f652f2f274f44e9fbe by Zhiyi Zhang <zzhang@codeweavers.com>
2022-03-20 19:28:39 +01:00
winesync
de80f2a3c1 [WINESYNC] msi: Check for a NULL return from deformat_string() when checking for failure.
An empty string is valid, and can occur if e.g. a nonexistent property is
expanded.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51091
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 814f18ab756cd69158ce893c4f7898e14d3e46dc by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:39 +01:00
winesync
8975937c00 [WINESYNC] msi/tests: Make check_reg_* helpers more verbose.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a0f54eee2a5dc985d7e16c382516c8b66e61e54f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:39 +01:00
winesync
c595505376 [WINESYNC] msi/tests: Always explicitly test REG_MULTI_SZ strings.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 80426fdc76597768b787a38644f1c53110b26f05 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:38 +01:00
winesync
9d3876e40f [WINESYNC] msi: Write "Clients" value as REG_MULTI_SZ in PublishProduct.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1951853d06144e67b8a3d9d63c835e06a7232588 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:38 +01:00
winesync
8c80eb17f5 [WINESYNC] msi/tests: Pass an empty string to check_reg_str() instead of special-casing NULL.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2052d03fdf82ea9112c6ce3719936e245834eeb7 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:38 +01:00
winesync
7cface09ce [WINESYNC] winecrt0: Add a default implementation DllRegisterServer()/DllUnregisterServer().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5d82baf9747b7b133cad3be77c0cc9e24cc09582 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:38 +01:00
winesync
4bf22783a8 [WINESYNC] msi: Use nameless unions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cc2cc1463a493651f765fe18852a16c01184ad92 by Jacek Caban <jacek@codeweavers.com>
2022-03-20 19:28:38 +01:00
winesync
a3e22d8922 [WINESYNC] msi: Fix building the fusion filename.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50809
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 46424c6196a7b544ff6173d544fc120cc9f804d9 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:37 +01:00
winesync
1c1431b92f [WINESYNC] msi: Remove read-only bit when copying the package file.
CopyFileW also copies the file attributes, and the copy will be opened with
write access later on.

Signed-off-by: Jérôme Gardou <jerome.gardou@reactos.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e830975806df9ef283c89f7153b06b145dfb2cec by Jérôme Gardou <jerome.gardou@gmail.com>
2022-03-20 19:28:37 +01:00
winesync
34b3377879 [WINESYNC] msi: Return an error if trying to run a 64-bit custom action in a 32-bit prefix.
This matches native behaviour (manually tested).

This allows the Research in Motion (Blackberry) USB and Modem driver to fail
cleanly instead of hanging, if run in a 32-bit prefix.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 408662379281aa24f41b680f1aba9abf2b40c603 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:37 +01:00
winesync
fc7157139f [WINESYNC] msi: Check for failure from do_msidbCustomActionTypeDll().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5f21acdc9e9840b50a6991b8e8dc52758adb192d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:37 +01:00
winesync
8585445613 [WINESYNC] msi: Also set "MsiRunningElevated" installer property.
This property is supposed to be set starting from Windows Installer
4.0 targeting Windows Vista. This patch fixes the installer that
checks this property in addition to VersionNT and ALLUSERS.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dac655abce0397b3c1accec64039b8cd75beb561 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:36 +01:00
winesync
0fdd4d83b3 [WINESYNC] msi/tests: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f211bd0a4e0b8e8911b6a64ff4f09bb9d4ec2f84 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:28:36 +01:00
winesync
7d95ee4fe9 [WINESYNC] msi: Use a string literal for empty strings.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 17c745a9d253b888366831ce4b9e695297f0dac2 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:28:36 +01:00
winesync
9ad17dd7b2 [WINESYNC] msi: Correct Query for loading an image.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 358d4f5a914e574c026380666964fcefb0495517 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2022-03-20 19:28:36 +01:00
winesync
b6228b299c [WINESYNC] msi/tests: Test the "VersionNT" property.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 990fc66274d68b915df62005ab93792129612fc1 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:36 +01:00
winesync
9fb472fc26 [WINESYNC] msi: Use the global is_wow64 variable in custom_start_server().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 12ae1f8528b18d0df018680747429be29fca7ea4 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:35 +01:00
winesync
f31e4044c2 [WINESYNC] msi/tests: Use wide character string literals.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 058ca3d04a4a712d86a111a1975045be02e03133 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:35 +01:00
winesync
74f53b4bcb [WINESYNC] msi: Use wide character string literals in the remaining files.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c4fc91f4bf0ffdc4a7dc2e582e5bd3fddca85222 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:35 +01:00
winesync
d012037f17 [WINESYNC] msi: Use wide character string literals in classes.c.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e7dd9b3f3694b276d50ccfb5515e7e0f70b1c555 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:35 +01:00
winesync
0f67ae4bda [WINESYNC] msi: Use wide character string literals in registry.c.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2672646eaeb1877e0d746e8554529396ec8d9eb1 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:35 +01:00
winesync
0272139cbc [WINESYNC] msi: Use wide character string literals in package.c.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 731bb72c3d00b089ee23297efdfe0496733e96a4 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:34 +01:00
winesync
a808407b15 [WINESYNC] msi: Use wide character string literals in msi.c.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8255da2249816b77b709d1e6c888760c5e59a8f8 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:34 +01:00
winesync
9066c718b0 [WINESYNC] msi: Use wide character string literals in dialog.c.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d9fbe788af65c2b2696c446d765a34ae40e3226b by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:34 +01:00
winesync
7ceaee6d19 [WINESYNC] msi: Use wide character string literals in action.c.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8e13b0b99c823bc22c7eef8b8dac04de283ca462 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:34 +01:00
winesync
ce6af3b1bc [WINESYNC] msi: Use 0 terminated WCHAR strings in the SQL tokenizer.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6705b959d0cf7635bf2ab16ab89fefb409a0a9c8 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:28:33 +01:00
winesync
cdb9abd625 [WINESYNC] msiexec: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 64709fe7e9c629f476fb0dd7b62480e868b0174c by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:28:33 +01:00
winesync
dac7d6f23c [WINESYNC] msi: Fix a leak (Coverity).
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 462edf6e2a79208d6c88ac6aeb760733d571b7c5 by Sven Baars <sbaars@codeweavers.com>
2022-03-20 19:28:33 +01:00
winesync
1cdb30ec0d [WINESYNC] msi: Install feature when new component is added.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49350
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 877540b522c46134aa1b843519fa5694adb187ce by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:33 +01:00
winesync
aa0312d7cb [WINESYNC] msi: Add disabled feature to show that it's not getting installed by patch.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99e7c801e4d5032110190acbb04d85eb069df867 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:32 +01:00
winesync
8bb4f0597d [WINESYNC] msi: Test adding new feature in patch.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cc8bc83e9ecd2aba8e322a974af268e715fbd372 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:32 +01:00
winesync
1c5160dca5 [WINESYNC] msi: Add support for appending data to _TransformView table.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3459c90cd6a49e817213b6e6764bdfafa7d4bcc7 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:32 +01:00
winesync
ed0e61b53a [WINESYNC] msi: Remove no longer needed parameter from TABLE_remove_column.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d579b17eb425ac5e28f9263ebf302ea2282996ec by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:32 +01:00
winesync
c6c4bdb242 [WINESYNC] msi: Fix use after free error in TransformView_set_row.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6a0a0d2a0b15bffa9d4a5b41e75be6765e731d69 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:32 +01:00
winesync
61167e123f [WINESYNC] msi: Remove MSICOLUMNINFO.temporary field.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b61455cb81714ff4f4108b70584816adbffbc68a by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:31 +01:00
winesync
791734c2e9 [WINESYNC] msi: Remove column_info.temporary field.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 76a2077c83048d8eead8ea0cbfafa70406c0cd88 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:31 +01:00
winesync
9cf1ecf2f3 [WINESYNC] msi: Fix adding temporary columns.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 15b47513a1926a103492e0774396119f57d2e8d5 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:31 +01:00
winesync
41e6537b69 [WINESYNC] msi: Add table existance tests for tables with temporary columns.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cb9cb83cda01fa873667e11038d9bdd01428f059 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:31 +01:00
winesync
8b9aafd97b [WINESYNC] msi: Test freeing _TransformView table.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eb5a803bdbb8f602ae1212674a121cadd24642a5 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:31 +01:00
winesync
eb6788c943 [WINESYNC] msi: Remove ref_count from MSICOLUMNINFO.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7200257d0428b1e9b4da72e8c4e39f9cf27455e6 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:30 +01:00
winesync
caa225a496 [WINESYNC] msi: Fix table ref count on create.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 405486fbe6853c78744099fa1ebe07995e07a438 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:30 +01:00
winesync
5c718f5f5c [WINESYNC] msi: Support removing temporary columns in TABLE_remove_column.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5d568279dc0b842206918ba87a955298e72973ae by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:30 +01:00
winesync
f78dfeafac [WINESYNC] msi: Add MsiDatabaseApplyTransformA MSITRANSFORM_ERROR_VIEWTRANSFORM test.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 301dde9838563d33b610c2c09dc69cb07c4c8c9d by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:30 +01:00
winesync
4048c060fc [WINESYNC] msi: Support DELETE when MSITRANSFORM_ERROR_VIEWTRANSFORM flag is used.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b1f9f4ccee6f7d42dbeaf457e81db462a1b526af by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:30 +01:00
winesync
9d793f296e [WINESYNC] msi: Support DROP when MSITRANSFORM_ERROR_VIEWTRANSFORM flag is used.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6b6e1bd2c73ac23b03db0e656f895896936df5ba by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:29 +01:00
winesync
e6af2a5a61 [WINESYNC] msi: Support INSERT INTO when MSITRANSFORM_ERROR_VIEWTRANSFORM flag is used.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9130379710297cb487dbd8891b82f505e754c39d by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:29 +01:00
winesync
28c50c1ac7 [WINESYNC] msi: Support ALTER TABLE when MSITRANSFORM_ERROR_VIEWTRANSFORM flag is used.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ae6fd7b14792b932832da6f5d5088d500723c386 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:29 +01:00
winesync
27a430bda6 [WINESYNC] msi: Support CREATE when MSITRANSFORM_ERROR_VIEWTRANSFORM flag is used.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e4077fb6d77810e40e842e7557c03ab3abe0593 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:29 +01:00
winesync
317c1f6c05 [WINESYNC] msi: Support UPDATE when MSITRANSFORM_ERROR_VIEWTRANSFORM flag is used.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6e7303a7006538d3df1a09e13f5a5f469098b35f by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:29 +01:00
winesync
1bbb87bb26 [WINESYNC] msi: Add stub support for MSITRANSFORM_ERROR_VIEWTRANSFORM flag in MsiApplyTransform.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8bc835b4517728fac8ff8a9cfa5e59b843e9a8df by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:28 +01:00
winesync
8e75cb8a26 [WINESYNC] msi: Introduce msi_record_stream_name helper.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5fc68884adec547a5343e8713e8727282b5aa25a by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:28 +01:00
winesync
ce486a09ef [WINESYNC] include: Add MSITRANSFORM_ERROR enum definition.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 57b870007dddd86c6772ce1707148ec7ad8bd8db by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:28 +01:00
winesync
5c7b97165c [WINESYNC] msi: Fix installing from administrative image with compressed source files.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49352
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 15c8e5dee6fa3b7eac1d1b3cd6d27aa744faff4d by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:28 +01:00
winesync
1c0e89646f [WINESYNC] msi: Return void from init_automation_object.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1726b7f46c03a543f5d682d951f29a4af41001e7 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:28 +01:00
winesync
c65efd0116 [WINESYNC] msi: Add support for bitmap buttons.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48974
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9cc044957791e0658ec3d0d8ad08eebfc08b522c by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:27 +01:00
winesync
f4d2571b7e [WINESYNC] msi: Report the real NT version number up to 6.3.
MSI always reports 6.3 even without a manifest, but does not report anything
higher.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48959
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 658183a803fced017e1e29f4001cec8b48748327 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:27 +01:00
winesync
ba60287fce [WINESYNC] msi: Add support for ListView dialog control.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 76606eaea034c51a73190aac92e75d8b20e82164 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:27 +01:00
winesync
484e828005 [WINESYNC] msi/tests: Fix some format-overflow warnings.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f961817710edd81b5d91bb7cb3f78975c307bfa2 by Rémi Bernon <rbernon@codeweavers.com>
2022-03-20 19:28:27 +01:00
winesync
98d8ddaaa0 [WINESYNC] msi: Change unknown platform enum entry name.
Public shlwapi.h defines same name, it seems safer to rename internal type.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5aeb9ed82efd4a02d24eac4ffdb64e7badb5f8bd by Nikolay Sivov <nsivov@codeweavers.com>
2022-03-20 19:28:27 +01:00
winesync
3d671fafe3 [WINESYNC] msi: Properly declare variables in msi/tests/utils.h as extern.
Omitting the extern storage qualifier when declaring a global variable in
a header file is mistake. If that header is included by several files it
results in multiple definitions of the same variable (unless -fcommon is
specified or assumed, the latter being the case for GCC 9.x and earlier).

This fixes building with GCC 10.

Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ea032bb7f8daddfe308f86f52c54db5f657b658a by Gerald Pfeifer <gerald@pfeifer.com>
2022-03-20 19:28:26 +01:00
winesync
5741562d55 [WINESYNC] msi: Global variable compatibility update for gcc 10.
Signed-off-by: Michael Cronenworth <mike@cchtml.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cc7f698b8245a48669d248569e7589ff824f2c70 by Michael Cronenworth <mike@cchtml.com>
2022-03-20 19:28:26 +01:00
winesync
373ffef2ef [WINESYNC] msi: Add support for custom action type 7.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44618
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 54ef6e5e3932a5ce747fca717c697b67f2bd3e24 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:26 +01:00
winesync
be64b5c843 [WINESYNC] msi/tests: Fix a crash on Windows 10.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4661c8d45b8f4b4b2adfb157bb16ce3466bc00f0 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:26 +01:00
winesync
ea5d4e807c [WINESYNC] msi/tests: Fix test_feature_override() to properly clean up its features on removal.
This was leaving behind registry entries (as well as the already accounted-for
program files), which apparently caused subsequent test failures when running
msi:action.

While Wine is not behaving exactly correctly here (i.e. and removing the feature
anyway), I suspect it is not sufficiently interesting to test whether we behave
correctly with what is essentially a buggy package.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 932ed6bf84a96efa6e0169eb7c9414824eef195c by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:26 +01:00
winesync
fb0b52255c [WINESYNC] msi/tests: Avoid test failure when running as an unprivileged user.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 90422f9bb59d4a2e34ad9cffbb4f04b896ab7235 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:25 +01:00
winesync
ad8c894b8f [WINESYNC] msi: Use %define api.pure instead of %pure-parser.
The latter is deprecated and causes warnings.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d977c55bb4b9c564f376c22b43c60c9be7dc782d by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:25 +01:00
winesync
796c6b07d2 [WINESYNC] msi: Use integers internally for MSIDBOPEN constants.
This fixes a bug where some verions of mingw and probably gcc
assume that the result of pointer subtraction will be non-NULL,
causing MSI_OpenDatabaseW to break when given the mode
MSIDBOPEN_READONLY + MSIDBOPEN_PATCHFILE.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cce9a5f124ae6d3fffcc7772cab6523f09a1e3d1 by Vincent Povirk <vincent@codeweavers.com>
2022-03-20 19:28:25 +01:00
winesync
694121b969 [WINESYNC] msi/tests: Remove workarounds for Windows 2000.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 71f755820642777261c54d3fe6a04ba202059340 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:25 +01:00
winesync
2b92436d82 [WINESYNC] msi/tests: Run the package tests from a temporary directory.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8503ad172229979e9929e8d54dac546c5b799a03 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:25 +01:00
Mark Jansen
427d8af7f1 [SDK/WINE] Add support for subtest
033196641b
2022-03-20 19:28:24 +01:00
winesync
d7c30ed194 [WINESYNC] msi/tests: Fix test failures.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1b4b37cc7e05724fac235cef278a97b358d0cba1 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:24 +01:00
winesync
3b27d975e8 [WINESYNC] msi/tests: Add missing UnpublishFeatures actions.
Reported by Sven Baars.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47992
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4f7bd33a838afca7086e993a9be7fa2d8dbdb5b6 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:24 +01:00
winesync
a57d95c134 [WINESYNC] msi: Fix the spelling of a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a0c6c8c2ecdad0bf8992b6c89276ee7bf2402883 by Francois Gouget <fgouget@free.fr>
2022-03-20 19:28:24 +01:00
winesync
a88e131f97 [WINESYNC] msi/tests: Fix the case of an ok() message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3f2cae1378cc14e98747af6c0de02cb1e6a69928 by Francois Gouget <fgouget@free.fr>
2022-03-20 19:28:24 +01:00
winesync
b248722082 [WINESYNC] msi/tests: Fix a test failure on Windows XP.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eec7f105124a58565fa35ca61c1bc8289321fedc by Sven Baars <sven.wine@gmail.com>
2022-03-20 19:28:23 +01:00
winesync
64fe3dd207 [WINESYNC] msi: Fix a leak on error path (Coverity).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fe91ae51f1553875c1858df264c0603877d50737 by Sven Baars <sven.wine@gmail.com>
2022-03-20 19:28:23 +01:00
winesync
9e09d87f83 [WINESYNC] msi/tests: Declare the custom subtest.
It may print test failures and as such should be declared by its parent.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 208ff02005e183a9f9b153644e06ace3e865df5e by Francois Gouget <fgouget@codeweavers.com>
2022-03-20 19:28:23 +01:00
winesync
16273720a9 [WINESYNC] msi: Don't error when an ODBC Data Source fails to register.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e4f1f9b7bdd46bf1f18c1e337ac6864bee3b0733 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2022-03-20 19:28:23 +01:00
winesync
06129f8479 [WINESYNC] msi: Fix component Action for shared components in CostFinalize.
Fixes regression in wow .NET4.6.2 installation.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d95bffdadbf18b91c1bb15cc7132ae3b9f505f98 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:22 +01:00
winesync
f51751dd6b [WINESYNC] msi/tests: Actually test two return values.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8738075da4e59336898457fb381488aa3be877cb by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:28:22 +01:00
winesync
7235446447 [WINESYNC] msi: Close all handles opened by a custom action thread.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47418
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e4e7e956bd93f0ffd597a041a58c82c02c811ac0 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:22 +01:00
winesync
461c9cb74a [WINESYNC] msi/tests: Accept case variations for path properties.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 48f93bc3290596b8da4455496fa88cd13ea6f3c9 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:22 +01:00
Mark Jansen
eefbf83462 [SDK] Include stdio in wine/debug.h
Wine also has this, and they rely on it in some files
2022-03-20 19:28:22 +01:00
Mark Jansen
f1132155d9 [SDK][CRT] Add _CRT_NON_CONFORMING_SWPRINTFS support
This allows us to easier port wine changes, where swprintf with a size is used a lot
2022-03-20 19:28:22 +01:00
winesync
958f1addcf [WINESYNC] msi: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7cd3c9f0734d217e1d08319e72a9df91fe2ef882 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:21 +01:00
winesync
984f969d62 [WINESYNC] msi/tests: Don't skip a 64-bit test on Wine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3b621e6d6d0db956864907bc7960cdd20428b033 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:21 +01:00
winesync
0f3c2a7956 [WINESYNC] include: Move inline assembly definitions to a new wine/asm.h header.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d5a372abbba2e174de78855bdd4a004b56cdc006 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:21 +01:00
winesync
13f70a1e5f [WINESYNC] msi: Use strncmpiW instead of memicmpW for strings without embedded nulls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 280d10b27715c86a5784bba8db7db1e52b1602fa by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:21 +01:00
winesync
f0decc7608 [WINESYNC] msi: Remove registration for no longer used WineMsiRemoteCustomAction coclass.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f73fefd24c175436f3623939973b377d0822e02e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:21 +01:00
winesync
62230ae3d8 [WINESYNC] msiexec: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8dff0e34452f4874873c91a7ec3b92a7cf1c3e16 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:20 +01:00
winesync
a32b4b85c6 [WINESYNC] makefiles: Build all tests with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d4ef782db7928e0deed5f0b43a8a1557cae0358e by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:20 +01:00
winesync
3b835aa0ab [WINESYNC] msi/tests: Avoid using snprintf().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 72f7f57a21d6e4dd63de56d4a9a265048ed930b6 by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:20 +01:00
winesync
bef1f25922 [WINESYNC] msi: Always use the 64-bit registry view to retrieve registered owner and organization.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0d17f36c13f129d5bfed290a0583b441657a6a9a by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:20 +01:00
winesync
0d7b11abec [WINESYNC] msi/tests: Check the NT key first when retrieving registered owner and organization.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dec192ce22283c4c0cb80337e0ce0904d9d9be89 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:20 +01:00
winesync
8db2fe8cb4 [WINESYNC] msi: Get rid of redundant KEY_WOW64_64KEY flags.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id be02ecda3c27f4fa3ed574b1df4e51337f9304de by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:19 +01:00
winesync
c3c3655cab [WINESYNC] msi: Fix handling of architecture in MSIREG_{Open, Delete}UninstallKey().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47009
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3d9363446fad694b6e534d84fce63bfc9dbbf4d3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:19 +01:00
winesync
435274d1ec [WINESYNC] msi: Fix architecture handling in the AppSearch action.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eb508e5a014f59fbb2c70d9909ba0870ce2b901a by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:19 +01:00
winesync
6537d52d54 [WINESYNC] msi: Remove system environment variables on uninstall.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7f95ed7cd2d440420c0c3d1a938af8b48960f352 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:19 +01:00
winesync
4d61fb5224 [WINESYNC] msi: Take architecture into account when accessing the shared dll reference count.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5b6bf621cdc0b67528e2f0312d0a89d7cdfce5a7 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:19 +01:00
winesync
92a82b2faa [WINESYNC] msi: Get rid of a redundant get_registry_view call.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5caebb2650e386904544a2c0326e2b0f1bd39bc3 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:18 +01:00
winesync
3635da2096 [WINESYNC] msi: Use KEY_WOW64_* flags in ACTION_Register/UnregisterClassInfo.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 70732e273eb52821bfd725f3b1ea1919b8c0e3b0 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:18 +01:00
winesync
a3cf801a46 [WINESYNC] msi: Use case sensitive compare in handle_msi_break.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8c4b75f252dd5f127320144a43472d4558489af4 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:28:18 +01:00
winesync
b3eae05b11 [WINESYNC] msi: Add MsiSourceListForceResolution{A,W} stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46881
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2e95d2247d8fb83d040bdfce388ed4e96172427c by Louis Lenders <xerox.xerox2000x@gmail.com>
2022-03-20 19:28:18 +01:00
winesync
d672ffc384 [WINESYNC] msi: Handle the remote case in MsiViewGetError().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46830
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 942964fdfbd0cb2af1ea6a1c681fc73d399bcce3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:18 +01:00
winesync
616d504d32 [WINESYNC] msi: Perform partial copies in MsiViewGetError().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6a3dbf11923b96c93f1869c9b9ed34d68bdb2576 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:17 +01:00
winesync
a7fd7860ad [WINESYNC] msi/tests: Separate and expand tests for MsiViewGetError().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fac04043d93b9e24f9f68954c6688310ab424954 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:17 +01:00
winesync
b720e4c0e2 [WINESYNC] msi: Return ERROR_INVALID_HANDLE when MsiOpenPackage() is called from a custom action.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b2d3567c1b4846905f01612d8f499f45ed9d24ac by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:17 +01:00
winesync
df4fa37bf9 [WINESYNC] msi: Return ERROR_INVALID_HANDLE when MsiEnableUIPreview() is called from a custom action.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4bb40d1a95e525c63f1f6f1f20f0c054d46f2fff by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:17 +01:00
winesync
6d0c1c59ca [WINESYNC] msi: Return ERROR_INVALID_HANDLE when MsiDatabaseImport() is called from a custom action.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 19420f5f7c146f0ade010b9fbfaf21f926ef10a8 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:17 +01:00
winesync
0b31064d1b [WINESYNC] msi: Return ERROR_INVALID_HANDLE when MsiDatabaseExport() is called from a custom action.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3ff7d30520e4450fd9efbf5569eb28b82fb81aeb by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:16 +01:00
winesync
115d04ba20 [WINESYNC] msi: Return ERROR_INVALID_HANDLE when MsiDatabaseApplyTransform() is called from a custom action.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ed5f4bd14f5cece4bca63918b924606a09a3300d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:16 +01:00
winesync
72c4091cef [WINESYNC] msi: Return MSIDBSTATE_ERROR when MsiGetDatabaseState() is called from a custom action.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46812
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 60b1fd7e8764ab63d79382c1805d4c007a6be332 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:16 +01:00
winesync
f7e42b9b96 [WINESYNC] msi/tests: Test calling more functions from custom actions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ae0298d46e8d4b7b689783b9c459ceafc3631780 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:16 +01:00
winesync
af2abfcb7a [WINESYNC] msi: Avoid a crash in RemoveFiles if the component directory is invalid.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46907
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c7f323107b3b956d206d8d0ee28851d60f19841c by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:15 +01:00
winesync
c611d50ecc [WINESYNC] msi: Append the custom action client PID to the endpoint name.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46833
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 27a7952a84d157caed21a663dd827728a02c443e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:15 +01:00
winesync
e89ff1f99b [WINESYNC] msi: Don't fail the BindImage action if the BindImage table is absent.
This fixes a regression introduced with
15f852015a0332313821804cc1fbad79216408c6 and observable with several
installers, including dotnet472.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46885
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a3dfd2f251f336f1cc570863edb60251227cdf5d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:15 +01:00
winesync
e342f3379d [WINESYNC] msi: Disable filesystem redirection only when really needed.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46846
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 15f852015a0332313821804cc1fbad79216408c6 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:15 +01:00
winesync
a5ae0e3add [WINESYNC] msi: Add support for exporting binary streams (Binary/Icon tables).
The Binary and Icon tables store their data in a different format from
other tables, one column of the data is stored as a "stream" instead
of a normal text field.  With this patch those tables can now be
exported properly by the MSI export functionality.

Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f1d8218169715fcb64d4c6d81be7ead9d8bbf6ed by Erich E. Hoover <erich.e.hoover@gmail.com>
2022-03-20 19:28:15 +01:00
winesync
3d9c99d37a [WINESYNC] msi: Break out field exporting into a separate routine.
msi_export_record is a lot more complicated than necessary, this patch
splits out the field export part of that functionality as
msi_export_field.  This also needs to be separate for exporting binary
stream data (next patch).

Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b08d9998635137475dae335f8b45c909274d3001 by Erich E. Hoover <erich.e.hoover@gmail.com>
2022-03-20 19:28:14 +01:00
winesync
87ce83f46a [WINESYNC] msi: Add support for exporting the _SummaryInformation table.
The _SummaryInformation table stores a lot of important information
about an MSI database.  This patch adds the ability to export that
table since, like _ForceCodepage, it is stored in a different format
than the other tables.

Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 79fd42fc1ae0747f509fce05cedf9e56c9f928bc by Erich E. Hoover <erich.e.hoover@gmail.com>
2022-03-20 19:28:14 +01:00
winesync
3ad01e9aad [WINESYNC] msi: Add support for deleting streams from an MSI database.
msidb allows developers to remove "streams" (cabinet files) from a
database with the "-k" mode flag.  To support that feature we need
MSIMODIFY_DELETE support in the underlying MSI implementation.

Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 51d5242a5fa07a76077f2318fbbff968d760389d by Erich E. Hoover <erich.e.hoover@gmail.com>
2022-03-20 19:28:14 +01:00
winesync
23993e205c [WINESYNC] msi: Skip the special SummaryInformation stream in msi_commit_streams.
Avoids adding a useless table stream when called on an existing database.

Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 02a25a9d4fb170755d8de7aa7cb5d388c206b337 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:14 +01:00
winesync
8530abce68 [WINESYNC] msi: Don't use globals to manage assembly cache state.
Based on a patch by Zebediah Figura.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46719
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c64d73c829c3bde7744362b2cd566075ab7e37df by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:14 +01:00
winesync
17a9073433 [WINESYNC] msi: Prevent uninitialized variable usage.
Observed with Lync 2010 setup in ReactOS. The embedded Silverlight
setup hits this case (no LASTUSEDSOURCE in the registry).

Signed-off-by: Mark Jansen <mark.jansen@reactos.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 145b4109205c385cf1bd1ecd8a18e47c9f27a9fd by Mark Jansen <mark.jansen@reactos.org>
2022-03-20 19:28:13 +01:00
winesync
3c78b826b3 [WINESYNC] msi: Do not leak rootkey.
Signed-off-by: Mark Jansen <mark.jansen@reactos.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c91f254a7740dacd5cb6bc3f8817cd1806bddeb4 by Mark Jansen <mark.jansen@reactos.org>
2022-03-20 19:28:13 +01:00
winesync
9a70868a53 [WINESYNC] msi: Link directly to sxs.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aaead3e433239898c0747bab32a2d2dfe63e5b3c by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:13 +01:00
winesync
f474f080a1 [WINESYNC] msi: Initialize assembly caches before disabling redirection.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46638
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a70ece68b7fa98e55e62eaed1006ceea961666ce by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:13 +01:00
winesync
0e4c16b13b [WINESYNC] msi: Remove duplicate condition in msi_dialog_destroy().
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 57dd594865b002205edb4e053102241bed72bd1a by Andrey Gusev <andrey.goosev@gmail.com>
2022-03-20 19:28:13 +01:00
winesync
5da3f84d5a [WINESYNC] msi/tests: Add more tests for MSIMODIFY_INSERT.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4179189ec6638ec74cf54eea68798218798affc1 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:13 +01:00
winesync
693fc86646 [WINESYNC] msi/tests: Add more tests for MSIMODIFY_MERGE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 535983743c6e7bccb515a823f2e9bf721740aada by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:12 +01:00
winesync
a38f680cef [WINESYNC] msi/tests: Add more tests for MSIMODIFY_REFRESH.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d2e51963a6218e1ecb3d8127004b9c8c128dd746 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:12 +01:00
winesync
d2c4626d98 [WINESYNC] msi/tests: Add more tests for MSIMODIFY_ASSIGN.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0628a7c8bf43388a3c2d14ec5d57566921ef436c by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:12 +01:00
winesync
f954f7ec69 [WINESYNC] msi: Translate records as appropriate in SELECT_modify().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e742319627e311cfc364901ed82517dba9990456 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:12 +01:00
winesync
3b4aa9822b [WINESYNC] msi/tests: Add some more tests for MsiViewModify() applied to joins.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b9faa8d170349ce48e7f572461e7c41422317e43 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:12 +01:00
winesync
5f1570f47d [WINESYNC] msi: Don't check the primary keys when handling MSIMODIFY_DELETE.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 96b6d6b58725f17f3faabeeffe82d2b8bd5f0445 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:11 +01:00
winesync
17ae3a2dd9 [WINESYNC] msi: Implement MSIMODIFY_REFRESH using msi_view_refresh_row().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 05976464556385e7a7ef5d04b2a56c4830ff33cf by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:11 +01:00
winesync
bef9fb0245 [WINESYNC] msi: Factor out msi_view_refresh_row().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 31628cee6e2ba63a1a08672d89ccd8d10836bf7e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:11 +01:00
winesync
6425c406fb [WINESYNC] msi: Implement UPDATE queries using msi_select_update().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 40a08f8362c191b51db07a483c4f41fa61158c76 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:11 +01:00
winesync
580d3e1be0 [WINESYNC] msi: Support setting streams in msi_select_update().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 044c1dd23b307a0b7f2188855d5bf6e479cefd5e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:10 +01:00
winesync
e734a9189b [WINESYNC] msi: Store the IStorage list as an array of STORAGE structures.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 33045101ca657b2b09a53e14711b3f6bcacbafe2 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:10 +01:00
winesync
01a3611583 [WINESYNC] msi: Remove an unnecessary call to SELECT_get_dimensions().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7728acd1b6994c553a046e3ff9ee1aebc20c38b6 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:10 +01:00
winesync
f6659d1de9 [WINESYNC] msi: Get rid of the get_row() view operation.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7c28a1dbddc012d497988f638b7ecb70e75b17c3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:10 +01:00
winesync
97918c366e [WINESYNC] msi: Set table values directly in msi_select_update().
In order to avoid the need to create a temporary record and copy values back
and forth.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f45a7b04a6caca4eed1d08f4e69884b119f3aa17 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:10 +01:00
winesync
0e83dd032c [WINESYNC] msi: Factor out int_to_table_storage().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99425f272f7807aea068629ef3e5fda6640b2845 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:09 +01:00
winesync
def8c91e2a [WINESYNC] msi: Use 0-indexed row numbers in the modify() view operation.
For consistency with other operations.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8aefa871ad3fcd28b8bc7e5b79f2e661dbab9435 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:09 +01:00
winesync
211c410496 [WINESYNC] msi: Use a BOOL to track string persistence.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a7f455b97fdd0ef07a15b66eea63f82522ff4f31 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:09 +01:00
winesync
fb72dff218 [WINESYNC] msi: Get rid of the remove_column() view operation.
It was added to the structure, rather unnecessarily, by ccef56f2c.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c2810f40a0af6496cfbb7d87685e2e018befd43b by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:09 +01:00
winesync
43025b17d1 [WINESYNC] msi: Get rid of the find_matching_rows() view operation.
It was introduced in 9f487ba1d as part of an optimization, but ceased to be used in a52c2bf94.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ced768f2ec163e25b7e1cf54a87f4b01369a846e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:08 +01:00
winesync
eaa4c035ac [WINESYNC] msi/tests: Use check_record() in more places.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fe23e015278e318f9642c67384887f865e5f2ed3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:08 +01:00
winesync
88f53494e9 [WINESYNC] msi/tests: Use check_record() in test_join().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5eab4a59de5f77f3d747b0f3e9eadd2c45dc7cf5 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:08 +01:00
winesync
8376f7c354 [WINESYNC] msi/tests: Use check_record() in test_select_column_names().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d7879eaa99b45d9f1263cad5f7e3699450ec1557 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:08 +01:00
winesync
b883a2b271 [WINESYNC] msi/tests: Use check_record() in test_dbmerge().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2ea8d809e9d2bc575abc3beb5b7c0de99e20f9f8 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:08 +01:00
winesync
c4131daacc [WINESYNC] msi/tests: Use check_record() in test_columnorder().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d2edcc9e24cf9919825dcd0480b3f22e25dc7115 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:07 +01:00
winesync
3417cf8659 [WINESYNC] msi/tests: Introduce a variadic check_record() helper.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e083034d665fa8873c6d87a90d959f3351de7d3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:07 +01:00
winesync
f8514c722b [WINESYNC] msi/tests: Add a trailing '\n' to an ok() call.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ad735ca1f329b9419aaaf59bda4e3c936f9d92f5 by Francois Gouget <fgouget@free.fr>
2022-03-20 19:28:07 +01:00
winesync
8c4b2b004b [WINESYNC] msi: Only perform the media check if the label of the disk entry differs from the last.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40433
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 85fea53af80d324a4cf7f80a45f43fed8d8d65e1 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:07 +01:00
winesync
609c059647 [WINESYNC] msi/tests: Use more reasonable buffer sizes for guid strings (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a853bb6d0a91e5766ff1afbfaf1fcb9b8d27fc76 by Nikolay Sivov <nsivov@codeweavers.com>
2022-03-20 19:28:07 +01:00
winesync
6e5382cc5a [WINESYNC] msi: Return an error code instead of a button id in msi_change_media().
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a47343b97369e5f64bb78a7421f2d75258da282a by Alexandre Julliard <julliard@winehq.org>
2022-03-20 19:28:06 +01:00
winesync
d5012ca368 [WINESYNC] msi: Turn several variables and constants into static constants.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6a833ce0b39ae9f57162f6ffd3ff55f19f3ba540 by Alex Henrie <alexhenrie24@gmail.com>
2022-03-20 19:28:06 +01:00
winesync
0d13a87670 [WINESYNC] msi: Set stale function pointers to NULL.
A crash occurs during install of dotnet35 on a 64-bit prefix
as when msi_destroy_assembly_caches is called, the mscoree
library is unloaded but the function pointers are not set back
to NULL.

Signed-off-by: Brendan McGrath <brendan@redmandi.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 256ca317a2871c62ca121e49f29fc37a64b4fb64 by Brendan McGrath <brendan@redmandi.com>
2022-03-20 19:28:06 +01:00
winesync
537188d764 [WINESYNC] msi: Increase MSI_INITIAL_MEDIA_TRANSFORM_DISKID to avoid conflicts.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 49e9fa376ca1ab251a0b5ccc506b255a93071bc2 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:06 +01:00
winesync
de59794f36 [WINESYNC] msi: Allow ARM64 installations.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d5a169463b30af229368a5559b20f9ae415c3048 by André Hentschel <nerv@dawncrow.de>
2022-03-20 19:28:06 +01:00
winesync
3dfa0cce09 [WINESYNC] msi: Support substorage transforms in MsiDatabaseApplyTransform.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40206
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ef86011ba40ef90eefb5e54059d907753ec8d694 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:05 +01:00
winesync
182a2d623e [WINESYNC] msi: Don't consider read-only drives when enumerating volumes.
Signed-off-by: Pierre Schweitzer <pierre@reactos.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0dd0d879a1c487dcefedd44762d4ea0fcebd98fe by Pierre Schweitzer <pierre@reactos.org>
2022-03-20 19:28:05 +01:00
winesync
8e17398c26 [WINESYNC] msi: In dialogs show titlebar buttons.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46080
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 84e6b331918d57f39e20a3063b67eb7fc0876288 by Fabian Maurer <dark.shadow4@web.de>
2022-03-20 19:28:05 +01:00
winesync
d30e40fc22 [WINESYNC] msi: Avoid duplicate product codes in FindRelatedProducts.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b33b8cab0dbef9571553a814c7bff501ae0a5b48 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:05 +01:00
winesync
14478462cc [WINESYNC] msi: Fix the remote case for MsiViewModify(MSIMODIFY_UPDATE).
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45972
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c494570d89f270c9240519c625c5c757a4e8ff23 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:05 +01:00
winesync
4b4baf5cb8 [WINESYNC] msi: Fix memory leaks.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 965ca1b4de78600366cde437c97a7208a954b18b by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:04 +01:00
winesync
0bbc2be92c [WINESYNC] msi/tests: Add tests for directory properties.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8386157caa9bfaea9a17c2d36e61f8a15138a791 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:04 +01:00
winesync
312627c75b [WINESYNC] msi: Remove unused fields from MSIFOLDER.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id de78ca24a5a2945e7431c1eb9a6e5404bbcfbf5d by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:04 +01:00
winesync
0922e524ec [WINESYNC] msi: Rename msi_reset_folders to msi_reset_source_folders.
It was always called with source parameter set to TRUE.

Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 14ddb49df278e44fd184a8fd73ff1341ce0885ec by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:04 +01:00
winesync
b608ba9798 [WINESYNC] msi: Add support for control event DirectoryListNew.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=25687
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 97a7a4ff0c8895c3ef1979eeee988c4c121d9839 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:04 +01:00
winesync
eab017d18f [WINESYNC] msi: Fix a couple of memory leaks (Valgrind).
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1cb43677632ded6aba8ba0b91937ded934c0c690 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:03 +01:00
winesync
0f342a37a3 [WINESYNC] msi: Add support for ARPNOMODIFY, APRNOREMOVE and ARPNOREPAIR.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 78af6e341fcdf1030bb5b0a4bed4b32e5caf09a3 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:03 +01:00
winesync
f0841e860f [WINESYNC] msi/tests: SQLGetInstalledDrivers fails if there are no ODBC drivers installed.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1be65cbb46bf792773a5aabc550851ed51f727cd by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:03 +01:00
winesync
bc149d9d14 [WINESYNC] msi: Allow recursive changes to the target folder path.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7bf2a1b2099b534fd4472962d2e945bc9ab9e2b8 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:03 +01:00
winesync
a49306360d [WINESYNC] msi/tests: Drop workarounds for Windows 2000.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6a3e79b00225a1186a01101cd5614141748e6a53 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:28:02 +01:00
winesync
6ff51864fb [WINESYNC] msi/tests: Add a test for repetitive MsiGetActiveDatabase calls.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 06fd9bb3178c363bdcc89586248a2ce707f94041 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:02 +01:00
winesync
dbebec3065 [WINESYNC] msi/tests: Also test full range of properties for MsiSummaryInfoSetPropertyW.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ff0129370869ed4ffb4acd69d7123f3d5ca294c3 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:02 +01:00
winesync
7c8b6fdf82 [WINESYNC] msi: Do not attempt to copy a non-string property in MsiSummaryInfoGetProperty.
This patch fixes the crashes when running the tests under Wine.
Currently the crashes are hidden by a custom action exception handler.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b857369f87c49f812b23320099dcb91dbdb6f320 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:02 +01:00
winesync
e58cc02596 [WINESYNC] msi: Move parameter checks to a common helper in MsiSummaryInfoSetProperty.
Currently MsiSummaryInfoSetProperty tests don't have a chance to execute under
Wine because the tests crash earlier, and the crashes are hidden by a custom
action exception handler. This patch simplifies the next one.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7929c31ea7b9f47f68cd434393f1212e448a9cf7 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:02 +01:00
winesync
bf1ca65888 [WINESYNC] msi: Fix a typo.
Should fix the regression introduced by baea371c3d4153bc4a718c07f46971d4d39aa9f3.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 09e4240f33425eda3ea05eb2a98adaec184b7ba4 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:02 +01:00
winesync
4ad772129d [WINESYNC] msi/tests: Add more tests for remote MsiSummaryInfoGetProperty.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 69b7e09fa76d73c51fd290b511400060ef7c20f0 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:01 +01:00
winesync
0bde253621 [WINESYNC] msi: Handle the remote case in MsiSummaryInfoGetProperty.
This patch fixes the regression introduced by bf5589311de8ac2c74e3bd73bef32337a2ce8df2.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ce2ebd72750ca85e7307372de1a73831ad9e73a8 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:01 +01:00
winesync
28c46d90e1 [WINESYNC] msi: Handle the remote case in MsiSummaryInfoGetPropertyCount.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 00b8b3c5e0e04d229cfb9f8d8294113e5b30e9b4 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:01 +01:00
winesync
636f46adb6 [WINESYNC] msi: Handle the remote case in MsiSummaryInfoSetProperty.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 190ef475fa3164d2f468d5b09c58c8150d30f129 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:01 +01:00
winesync
a8bfcb28ab [WINESYNC] msi/tests: Add some tests for remote MSI summary info APIs.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4acd7b6c45faa960aee3d753d2979315ad4d2b46 by Dmitry Timoshkov <dmitry@baikal.ru>
2022-03-20 19:28:01 +01:00
winesync
2a9ae85885 [WINESYNC] msi: Add exception handling around all custom action RPC calls.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id baea371c3d4153bc4a718c07f46971d4d39aa9f3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:00 +01:00
winesync
9af3c0ad3e [WINESYNC] msi: Skip publishing a local assembly with no corresponding file.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45735
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 12195e450fea6885eb2d3be05a8ed92dd93752c9 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:00 +01:00
winesync
3671579f96 [WINESYNC] msi/tests: Remove some workarounds in test_publish_assemblies().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9a96657910c2ce30f6f8492bdd562932d63ba430 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:00 +01:00
winesync
9792c08fe4 [WINESYNC] msi: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a9cb67bb7ffb5b25469ba6a732f8913ac8778c36 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:28:00 +01:00
winesync
49439bc1b4 [WINESYNC] msi: Don't assume that WoW64 redirection is enabled in custom_start_server().
As of 3a884c2ef the server is started on the main thread, so this is no
longer a valid assumption. In particular, we disable WoW64 redirection while
running standard actions, including the top-level INSTALL action.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45663
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 51ad009bacd297c0607bc6de4d5dae18afe6ea98 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:28:00 +01:00
winesync
d79a5e413e [WINESYNC] msi: Unlock msi_custom_action_c on the error paths.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45483
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c2add8a030b63d79f94d516d2dbee9fb09b9c09c by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:27:59 +01:00
winesync
dc4f732a06 [WINESYNC] msi/tests: Add a test for asynchronous custom actions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6387476d99f4f762628cb0d72b2d43c23f76f563 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:59 +01:00
winesync
33595a42c9 [WINESYNC] msiexec: Don't keep the custom action GUID in the main thread's stack.
Since it could potentially change on us during an asynchronous custom action.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2592690540a87498db09753a32c416cfe7f26e81 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:59 +01:00
winesync
8c067cc02c [WINESYNC] msi: Don't refcount the msi_custom_action_info struct.
This is unnecessary, and may have always been so. The struct will either be
freed after it completes synchronously, or after it has completed
asynchronously in ACTION_FinishCustomActions().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b7f06accb05edd70239dbd7b04b956bf10456dee by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:59 +01:00
winesync
b1b2cc1e8d [WINESYNC] msi: Protect communication with the custom action server with a critical section.
Avoids a potential race whereby an asynchronous custom action receives the
wrong thread handle.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 583edf7f59866cf0a58c978e692f3077e74b4938 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:59 +01:00
winesync
eca4d999d6 [WINESYNC] msi: Don't start the custom action server inside of custom_client_thread().
Asynchronous custom actions don't wait for custom_client_thread() to
terminate, so it's possible for two consecutive actions to both try to start
the server at once, causing failures when the second action e.g. receives
ERROR_PIPE_BUSY from CreateNamedPipe().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3a884c2ef7a5828a5b42bf9d2532422afeac0fd8 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:58 +01:00
winesync
55b4e50af8 [WINESYNC] msi: Avoid an ARRAY_SIZE-like macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b8027768b88eed2376ea484aa7adef20c82483f4 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:27:58 +01:00
winesync
ac9d876fe9 [WINESYNC] msi: Generate unique names for 32- and 64-bit custom action server pipes.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6925846988fb78a2dd217d2b837e59ec53234f87 by Zebediah Figura <zfigura@codeweavers.com>
2022-03-20 19:27:58 +01:00
winesync
fd8b07bdfc [WINESYNC] msi: Implement deferral for standard and custom actions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2a9e0f1fada4a414cc750f6d45595342f473e02f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:58 +01:00
winesync
426052d1aa [WINESYNC] msiexec: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id effac73e7275e40d717ccf21af84b34fe3e0844a by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:27:58 +01:00
winesync
4c8ffed7ec [WINESYNC] msi: Do not free hPackage twice or uninitialized (Coverity).
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9f1cdb4970c569460c96a143b126d1c298116d7d by Marcus Meissner <marcus@jet.franken.de>
2022-03-20 19:27:57 +01:00
winesync
980ce9db3f [WINESYNC] msi: Use msi_get_package_code in msi_publish_product_properties.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ddf762a82f2c578cd3b0d4ff0c13c8a08641a666 by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:27:57 +01:00
winesync
331be61263 [WINESYNC] msi: Fix condition evaluation when comparing literal and integer.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45445
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7837ae20cdeabab661da7bb5dae24f5ffefe17ee by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:57 +01:00
winesync
82decec5f1 [WINESYNC] msi: Reuse the custom action server process where possible.
We use a named pipe to communicate between the client (i.e. the process that
called MsiInstallProduct() and the custom action server. The naïve approach
has the client send custom action GUIDs to the server and the server send
back the results of executing the action, but this fails in the case of
nested custom actions, so instead we send back handles of threads for the
client to wait on.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 457431ab5bc1dd10c4957f145de85c4ba6d0ef72 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:57 +01:00
winesync
dfdb6d1050 [WINESYNC] msi: Avoid connecting to the RPC server more than once.
This is a no-op as is, but is necessary as of the next patch in the case of
nested custom actions.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6135b38d7d60e7bceb36a57630cad72d3e7e4b2e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:57 +01:00
winesync
1fa71cf3c5 [WINESYNC] msi: Create the custom action thread inside msiexec.exe.
This patch is effectively a no-op by itself, but makes the next patch
architecturally much simpler. We need the main thread to be non-blocking
to allow nested custom actions to work, so creating the thread inside of
msiexec allows the custom action thread to write the result of the action to
the server pipe while the main thread simply reads from it.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7908d6ee399f4ef556e194dfa5cdef746fc091b6 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:57 +01:00
winesync
0a327bfe94 [WINESYNC] msi: Avoid starting the RPC server more than once for a given package.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5c7cf0a47d9d43b11f84914f5890eae3fd694592 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:56 +01:00
winesync
55dcc258b1 [WINESYNC] include: Add a generic available ARRAY_SIZE().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 962b31c80b74cfc479da386a8c76d55d26aed752 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:27:56 +01:00
winesync
306890e8c4 [WINESYNC] msi: Remove checks for negative value.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5bd1b6f41032d1e133a8d9a96fba711ee491d634 by Andrey Gusev <andrey.goosev@gmail.com>
2022-03-20 19:27:56 +01:00
winesync
a237138534 [WINESYNC] msi: Add support for re-caching package.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5924321ad63edc1d3fabf22d7b047e4efacbce66 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:56 +01:00
winesync
b7b9c0c4cb [WINESYNC] msi: Report error when cached installer has different version.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0657d966ffb9afdcd7cf8bd0c2ac7289a8bfbe5e by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:56 +01:00
winesync
fbdb719be0 [WINESYNC] msi: Add ProductToBeRegistered property tests.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4c5d24ae20a51f4ddf3fde6a57417a442282ed67 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:55 +01:00
winesync
366dd26e41 [WINESYNC] msi: Add REINSTALLMODE=v installation mode test.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cecff8a353652606924f152c26d25ea89a25cb90 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:55 +01:00
winesync
74196b8000 [WINESYNC] msi: Re-publish product if previous installation with different package is detected.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 21836b79dd0acbd16f802f7364c070e1004e48ea by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:55 +01:00
winesync
da8483616c [WINESYNC] msi: Add support for ProductToBeRegistered property.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6dc49e4b685850a76a35b1d1d102903a0231c5cc by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:55 +01:00
winesync
d27e3499c7 [WINESYNC] msi: Mark exported wine functions CDECL.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d0451d57348c0a25290f9326ca150843cd7d4486 by Zebediah Figura <zfigura@codeweavers.com>
2022-03-20 19:27:55 +01:00
winesync
96486643cf [WINESYNC] msi/tests: Add package minor/major upgrade tests.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bdf8895d7671aa9b9a749a9fb99e82295f7b5c8f by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:54 +01:00
winesync
8667645111 [WINESYNC] msi/tests: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b716661c4a5c492fff79bed14190f33b47afebc8 by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:27:54 +01:00
winesync
42961bd8b0 [WINESYNC] msi/tests: Avoid ARRAY_SIZE-like macros.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 74b0dec3c1be0e16c7c2d487e0780a150d15e75c by Michael Stefaniuc <mstefani@winehq.org>
2022-03-20 19:27:54 +01:00
winesync
0d762dcba3 [WINESYNC] msi: Store the current script in the package.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 756bbb5bb756d1fcbeea41e10a6fdf2149fa1323 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:54 +01:00
winesync
19863c8002 [WINESYNC] msi: Resolve source when executing InstallFiles.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 536a86f21ff0f8432309225b61695138be95cb3a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:54 +01:00
winesync
88888f8f4f [WINESYNC] msi/tests: Test that some actions cause resolution of SourceDir.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 38747c32347afc4d8be18a577fe91f8325a68340 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:53 +01:00
winesync
a2e86899fd [WINESYNC] msi/tests: Test deferral of WriteRegistryValues.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ed2861c28cdfd2bb97abb7d376f9aa2d975ea97d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:53 +01:00
winesync
158d7545ab [WINESYNC] msi/tests: Simplify and clarify WriteRegistryValues and RemoveRegistryValues tests.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3c2b229431805ff771f4c20be52d1a9d7ff0ced3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:53 +01:00
winesync
ba86f76417 [WINESYNC] msi: Only delete empty registry keys in delete_key().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 91e418073f64368110a9339d17fad36ad26c1a7f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:53 +01:00
winesync
cdbd0095f0 [WINESYNC] msi/tests: Remove duplicate service tests.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f655bb7ee71a5e271fc7091013a60bb799b315df by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:27:53 +01:00
winesync
5239ed572c [WINESYNC] msi/tests: Test deferral of WriteIniValues and RemoveIniValues.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 377d32c4fb6ea72c68436eb590541ec88d0c74f9 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:52 +01:00
winesync
759a987243 [WINESYNC] msi/tests: Add a simple test for WriteIniValues.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1a78380e6fbaafb78a9d1b522a5b18b251ac4787 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:52 +01:00
winesync
39c835f2a3 [WINESYNC] msi/tests: Test deferral of WriteEnvironmentStrings and RemoveEnvironmentStrings.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aae3d6b5afaa67530ee62f922a301fce1967151a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:52 +01:00
winesync
7b0084e68a [WINESYNC] msi/tests: Simplify and combine environment variable tests.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2765b4778092a9ee25156c2b0facc34fe3861587 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:52 +01:00
winesync
342159af51 [WINESYNC] msi/tests: Test deferral of SelfRegModules and SelfUnregModules.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a08438afbd1d111e78ebb7fb0743a456f1da4d19 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:52 +01:00
winesync
761e72c7d0 [WINESYNC] msi/tests: Test self-registration of a valid DLL.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8867712944d839385837ae4db8b50fff1380c507 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:51 +01:00
winesync
cc5bb28b0c [WINESYNC] msi/tests: Test deferral of RegisterTypeLibraries and UnregisterTypeLibraries.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d3023ad3f7c87f29da762e82c7e0d47f6830df19 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:51 +01:00
winesync
45a3a9f56b [WINESYNC] msi/tests: Test registration of a valid typelib.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f5da1902aa24433375fc3c99eaadad00917daa9f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:51 +01:00
winesync
b493df633a [WINESYNC] msi/tests: Test deferral of RegisterUser.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d0ab6deb773912b427251f041e7413669fdef702 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:51 +01:00
winesync
d6a9b26126 [WINESYNC] msi/tests: Test deferral of RegisterProgIdInfo and UnregisterProgIdInfo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2fe0388d0cf205926cc9b8686b8f7ebd692261ef by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:51 +01:00
winesync
e0bf393210 [WINESYNC] msi/tests: Test deferral of RegisterProduct.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 71f3f2a6edf8db909a756d25d2acf96ef9258dbc by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:50 +01:00
winesync
742877db6d [WINESYNC] msi/tests: Simplify key access flags in test_register_product().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8d72829a874810c788bddbd46cee98366165fdb0 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:50 +01:00
winesync
c6f0b6c95e [WINESYNC] msi/tests: Test deferral of RegisterMimeInfo and UnregisterMimeInfo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f181e71400eb25a9aa4e1bf6355116269d04c0b7 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:50 +01:00
winesync
13c16770a5 [WINESYNC] msi/tests: Test deferral of RegisterFonts and UnregisterFonts.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a364e1a9c8aeba972f13f1af13cd0643b9a05a8e by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:50 +01:00
winesync
22740df97c [WINESYNC] msi/tests: Test deferral of RegisterExtensionInfo and UnregisterExtensionInfo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 884d146b3243f01f00efb527bf3f3f578344da94 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:50 +01:00
winesync
a4c6f8f2c9 [WINESYNC] msi/tests: Test deferral of RegisterClassInfo and UnregisterClassInfo.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fc6bd87375a945aa456505c9b83d2e7e08c2f891 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:50 +01:00
winesync
6a9321b897 [WINESYNC] msi/tests: Test deferral of PublishProduct.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4f2bb46fd1b7e190946b288312b2be30a68c02c1 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:49 +01:00
winesync
074bd3b468 [WINESYNC] msi/tests: Test deferral of PublishFeatures and UnpublishFeatures.
test_publish_assemblies() was leaving behind feature data that caused this
test to fail when run multiple times.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 920dde0b1e1d137720a277ee05b65c6bf2387ad6 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:49 +01:00
winesync
3a2e2e6560 [WINESYNC] msi/tests: Test deferral of PublishComponents and UnpublishComponents.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 625ef14967984ef2f35638e0012ceb7c816f346c by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:49 +01:00
winesync
29e57f7808 [WINESYNC] msi/tests: Test deferral of ProcessComponents.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5e0e25d4b4eb2ebd0a97bbbe02bf9a5d1ece7ff8 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:49 +01:00
winesync
ef7637bf77 [WINESYNC] msi/tests: Test deferral of MsiPublishAssemblies and MsiUnpublishAssemblies.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6eb74409147751a69cbf7dff34d79bd7e3a5dc7a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:49 +01:00
winesync
51f5b07762 [WINESYNC] msi/tests: Test deferral of MoveFiles.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id af737f9c2f78c448b914570005d34d61d95e7b83 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:48 +01:00
winesync
a06d5f3df5 [WINESYNC] msi/tests: Test deferral of InstallODBC and RemoveODBC.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7305e5fd8c1262e369c2807e83adfb9aaf4f2e7a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:48 +01:00
winesync
d15d81da99 [WINESYNC] msi/tests: Test installation of ODBC driver.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7f69ea3c57b9caa0fd39e6cb3c0164d7b37aa21b by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:48 +01:00
winesync
49fb19da45 [WINESYNC] msi/tests: Test deferral of InstallFiles and RemoveFiles.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99562a56170f51002c817cd353fa62325c056ab3 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:48 +01:00
winesync
07ea0dc651 [WINESYNC] msi/tests: Test deferral of DuplicateFiles and RemoveDuplicateFiles.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4d9d73e1b95ced3c66beaeab0e337c4b9eec52d5 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:48 +01:00
winesync
c5b7f9f395 [WINESYNC] msi/tests: Avoid calling MsiSetTargetPath("TARGETDIR").
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 30fe6f43612ce0a7d65ec16f751d3212cb78c1fe by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:47 +01:00
winesync
df90c9beba [WINESYNC] msi/tests: Test deferral of StartServices and StopServices.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7f0c8b3c6130bf1181e83bcdd9ab6b71583208f5 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:47 +01:00
winesync
07f42a0af1 [WINESYNC] msi/tests: Test deferral of InstallServices.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b8f982fa4b190398edce45290cd49159d586a26b by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:47 +01:00
winesync
49a44f014f [WINESYNC] msi/tests: Test deferral of DeleteServices.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5d8e16f7018b4fb0382ec991adc08e1f305bd353 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:47 +01:00
winesync
0c2c3863ef [WINESYNC] msi/tests: Test deferral of CreateShorcuts and RemoveShortcuts.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab9ab2a8f701064af3212a91ecd89ffa6a4a331b by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:47 +01:00
winesync
31eeb62486 [WINESYNC] msi/tests: Test deferral of CreateFolders and RemoveFolders.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0f7d50c02ea301ceebf0c18c1a49797ae9a93788 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:46 +01:00
winesync
6fc5d381f1 [WINESYNC] msi: Avoid using awstring in MsiGetSourcePathW().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 48aeef69fc99ff1460da934f4933f0499ff33b13 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:46 +01:00
winesync
2491afaa14 [WINESYNC] msi: Handle the remote case directly in MsiGetSourcePathA().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 43ce218a48f5b3420f48379e911e974b8bb9ef88 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:46 +01:00
winesync
2f2e68eb50 [WINESYNC] msi: Avoid using awstring in MsiGetTargetPathW().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ce3fc1af555106bcc614a1b9259172357035517f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:46 +01:00
winesync
c33915e409 [WINESYNC] msi: Handle the remote case directly in MsiGetTargetPathA().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c9fc3510218f3426b9b448b4569ff4fd275044f8 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:46 +01:00
winesync
02726bbc20 [WINESYNC] msi: Avoid leaking memory on failure paths in MsiGetPropertyA().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2e2934e455318c2753741a051876bc0a3c2399fa by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:46 +01:00
winesync
4f51867f22 [WINESYNC] msi/tests: Break out of the loop if both components are found in test_MsiEnumComponentsEx.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f5b1a6b5c507fd2766725251af00efa5eb8431ee by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:27:45 +01:00
winesync
4748b31284 [WINESYNC] msi: Avoid using awstring in MsiGetPropertyA/W().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 389ad808d2ac1a443d4a4190928e665b25214c1a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:45 +01:00
winesync
e12fb5036c [WINESYNC] msi: Handle the remote case directly in MsiGetPropertyA().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 84d972010fcf7bc94534c7bb20890ce88381f943 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:45 +01:00
winesync
0b125236c6 [WINESYNC] msi: Avoid using awstring in MsiFormatRecordW().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6b54a4bc2eadd0b5cbc2553e2969ff572ff042d1 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:45 +01:00
winesync
d5e04177e7 [WINESYNC] msi: Handle the remote case directly in MsiFormatRecordA().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 75aa132b521f426fa670c05774a50c87247e9834 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:45 +01:00
winesync
56c14436f4 [WINESYNC] msi/tests: More accurately calculate estimated size.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 40b211b6c2d61effba333cb64fb30289d3a18ee1 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:44 +01:00
winesync
b016bb6bcc [WINESYNC] msi/tests: Add the custom action DLL in create_database_wordcount().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bf0b9b97e08879637750f721fc96ca766e6ff61a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:44 +01:00
winesync
0e76906074 [WINESYNC] msi/tests: Add a header for some common functions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab522d694d5ffe08a410320988100b1a0fb2f077 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:44 +01:00
winesync
0bca61ed83 [WINESYNC] msi: Avoid leaking custom action data.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f4bcd95fa78172a3a07c5f065adf4287fe69af02 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:44 +01:00
winesync
8e940ff11f [WINESYNC] msi: Disable WoW redirection when installing a 64-bit package.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 540c48b91175b11c7b8646d0a036b20c46425080 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:44 +01:00
winesync
8baf528d3f [WINESYNC] msi: Check return value of GetBinaryType().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id deb4f970009d6fd85a61d3183877e67e1ccf66fe by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:43 +01:00
winesync
3ec0ea99c6 [WINESYNC] msi: Set the correct values for ProgramFiles64Folder and CommonFiles64Folder.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a6e9622439c4fd22578e737e60ca2af44a32f8b1 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:43 +01:00
winesync
d817f7cfa1 [WINESYNC] msi: Don't load a custom action DLL in the main process.
This has no effect anymore, and won't work if the architecture doesn't match.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e355cb62775f7fd39a03458c62334a603dcb0c78 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:43 +01:00
winesync
20260e3310 [WINESYNC] msi: Execute the custom action server with the correct bitness.
The bitness depends solely on the bitness of the DLL (tested manually).

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6049b0f8c3637b6ef55b05a57893191ab808c69f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:43 +01:00
winesync
7a16dc22c5 [WINESYNC] msi/tests: Add trailing '\n's to ok() calls.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4d1c3a022bcf28d46aa38cec458ac701b3cc615f by Francois Gouget <fgouget@free.fr>
2022-03-20 19:27:43 +01:00
winesync
db6dce432d [WINESYNC] msi: Initialize [out] strings to NULL.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 71c0738c0e2598d2af9e31e2e82b69e6a5081e51 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:42 +01:00
winesync
a8bc3902ba [WINESYNC] msi: Execute custom actions in a separate process.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 85d1fb62b321e890004bc8d0ded7a0183216c42d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:42 +01:00
winesync
c2e9daf59e [WINESYNC] msi: Make remote_GetActionInfo() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2635333922f13c0312b3cdae08f7cf870e10f49a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:42 +01:00
winesync
3919813408 [WINESYNC] msi: Make MsiEnumComponentCosts RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id efb8ed4748e75e88240cb27f3f917f6ed3446901 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:42 +01:00
winesync
9f3e4bbbec [WINESYNC] msi: Make MsiGetFeatureCost() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e500af2b678da519011588ee6973bda19999f34d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:42 +01:00
winesync
818a84dd11 [WINESYNC] msi: Handle some invalid parameters in MsiGetFeatureCost().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1b6adcb7216a6b4a0706ac7255f3ddb832656127 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:41 +01:00
winesync
03faa10759 [WINESYNC] msi: Make MsiEvaluateCondition() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0fc1b6f2f31952f9dab4a22805fe0f098548cb25 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:41 +01:00
winesync
cde5f24cd9 [WINESYNC] msi: Make MsiFormatRecord() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ef7ed29348584fc0385d42b707fd6fcc03dfddc5 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:41 +01:00
winesync
d20dc08f61 [WINESYNC] msi: Make MsiSetInstallLevel() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5ab576b8a09f715401a1de2bb384ccc9ffb37750 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:41 +01:00
winesync
fdca309017 [WINESYNC] msi: Make MsiGetLanguage() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5f45959adc55961a9787b54cd7814f18c056ebef by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:41 +01:00
winesync
1c8fdff293 [WINESYNC] msi: Make MsiSetComponentState() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 11702a31d2a31bfc5ac13e5d7995b2e71578f25f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:40 +01:00
winesync
709d0f5b57 [WINESYNC] msi: Make MsiGetComponentState() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 35b1b87dc90b5d0700ec0893bc3918e15a43b07d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:40 +01:00
winesync
5bbed50795 [WINESYNC] msi: Make MsiSetFeatureState() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 863680d5edcdb9fd62910cd7266658d2e3a0e743 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:40 +01:00
winesync
ed5fbe399d [WINESYNC] msi: Make MsiGetFeatureState() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9f428f592dc949d528c149692addf8e34f3f005b by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:40 +01:00
winesync
5219367eac [WINESYNC] msi: Make MsiSetMode() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1723536058c73b71894f60ab2c030e78948abe45 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:40 +01:00
winesync
83bbe8c85b [WINESYNC] msi: Make MsiGetMode() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9091c3dcf2e4c7775926c0a7a3f82f2e491eb849 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:39 +01:00
winesync
8c04add139 [WINESYNC] msi: Avoid returning an uninitialized variable.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 859f455cb95a37e11f1187731be530fc9b48da8a by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:39 +01:00
winesync
4253f35129 [WINESYNC] msi: Make MsiGetSourcePath() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d2b0981a2ceb8371460f009e0250ad2690ca0e93 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:39 +01:00
winesync
a5e210012b [WINESYNC] msi: Make MsiSetTargetPath() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e5fba6d23ee82229582a0cf19a455b3c5ca43776 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:39 +01:00
winesync
a529a627a9 [WINESYNC] msi: Make MsiGetTargetPath() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 49d67080c97cbe89ea6f665f692c6d32db272a0f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:39 +01:00
winesync
10abb6f6bc [WINESYNC] msi: Make MsiSequence() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 676376d1d3b87a8843e15baf6c7f7b958c2bdf83 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:38 +01:00
winesync
c65c209a0c [WINESYNC] msi: Make MsiDoAction() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c49abc8ce006441163c4a0b25d42ad1e9650d9da by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:38 +01:00
winesync
6f8e5d88d9 [WINESYNC] msi: Make MsiGetSummaryInformation() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bf5589311de8ac2c74e3bd73bef32337a2ce8df2 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:38 +01:00
winesync
9943fe3a65 [WINESYNC] msi: Make MsiDatabaseGetPrimaryKeys() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ed0a8dd3bfb5dbe6899cd1315c366d9fd833f060 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:38 +01:00
winesync
b2b149a09e [WINESYNC] msi/tests: Add tests for MsiDatabaseGetPrimaryKeys().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3a1d9bb915952fd69f16c32cbea29983d9a5a5fc by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:38 +01:00
winesync
aede536c83 [WINESYNC] msi: Make MsiViewModify() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c79fbc241e3c9a62ab50fb0826e33e85e97ae883 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:37 +01:00
winesync
ec581d9fc9 [WINESYNC] msi: Make MsiViewGetColumnInfo() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cea37419f1d16798ca24ad14712f14dac136f7d6 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:37 +01:00
winesync
ae286278fc [WINESYNC] msi: Make MsiViewClose() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9ab15d4edea1ab0c80f9d3ea15d9855aba2f4880 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:37 +01:00
winesync
795da5286b [WINESYNC] msi: Make MsiViewFetch() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 39c116fd0c0aca6517b9c1f31296bf8665cf7834 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:37 +01:00
winesync
ce495d7a38 [WINESYNC] msi: Make MsiViewExecute() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id afb5eede24c35308d2370fd3b492545aed607ce6 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:37 +01:00
winesync
00684fb410 [WINESYNC] msi: Make MsiDatabaseOpenView() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c6bd4d8c35de1ae452a5b5bec69d4779c813b37f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:37 +01:00
winesync
b4fb978270 [WINESYNC] msi: Make MsiDatabaseIsTablePersistent() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 252dd11f20a7ac2285d4f082f3ab3f3168f494dc by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:36 +01:00
winesync
7cc54a4f48 [WINESYNC] msi: Make MsiGetActiveDatabase() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a6934768d1070d91c764d5c88fe276a9d6163683 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:36 +01:00
winesync
cd631b7912 [WINESYNC] msi/tests: Improve COM test.
Test for a class that Wine actually supports, and also make sure our
apartment is uninitialized.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fdb9bdc88b27ffdaea5ad31256f250b66bdf6b78 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:36 +01:00
winesync
18123440c0 [WINESYNC] msi: Support NULL value in INSERT query.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 63ccdfeaaab56aca42d21a884789eb5048064276 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:36 +01:00
winesync
2dce4ee7d2 [WINESYNC] msi: Only mark non-registered features as absent if we haven't done anything with them.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b052fc3c893a0fa946c1dd6065047f4b5538cbe0 by Piotr Caban <piotr@codeweavers.com>
2022-03-20 19:27:36 +01:00
winesync
34c2011c9f [WINESYNC] msi: Don't cache the base URL.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99aa0eb5d8777b790f1aa3c643217571274b744f by Hans Leidekker <hans@codeweavers.com>
2022-03-20 19:27:35 +01:00
winesync
2e19edd6a0 [WINESYNC] msi: Make MsiProcessMessage() RPC-compatible.
Instead of passing a remote MSIHANDLE and creating a set of remote_Record*()
methods, we marshal the whole record as a wire struct. We do this for two
reasons: firstly, because chances are whoever is reading the record is going
to want to read the whole thing, so it's much less taxing on IPC to just pass
the whole record once; and secondly, because records can be created on the
client side or returned from the server side, and we don't want to have to
write a lot of extra code to deal with both possibilities.

The wire_record struct is designed so that we can simply pass the relevant
part of an MSIRECORD to the server.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bbf0f2da8211da73066fb36a444593ab0e8901f2 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:35 +01:00
winesync
78fc7f9ea8 [WINESYNC] msi: Store a record's associated query privately.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9d121203955da5c761cfb5c22b6428278e41f0c7 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:35 +01:00
winesync
11702b643d [WINESYNC] msi/tests: Test properties from custom actions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5808f1ddd49930ad49aeab640fced8305db476ea by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:35 +01:00
winesync
66669aedea [WINESYNC] msi: Also null-terminate WCHAR strings.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f37e61817f0393132c75b2e5d86778d1a4ceab45 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:35 +01:00
winesync
c20004294d [WINESYNC] msi/tests: Clean up property tests.
Remove many redundant tests, and print relevant values on failure.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c6b84cee179ac538c3a596fe9e7d10aaacd56321 by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:34 +01:00
winesync
3431091c60 [WINESYNC] msi: Make MsiSetProperty() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a73182ca542c00d15becd1d9e09f1c213082999d by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:34 +01:00
winesync
62ababd70d [WINESYNC] msi: Make MsiGetProperty() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2192c9a50a91d175f367534d2ed84fe24f4253aa by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:34 +01:00
winesync
b74b77aa65 [WINESYNC] msi: Convert the IWineMsiRemote* remote interfaces to RPC stubs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8bfb4e8b6209d02a18be3299717b1f38db7045fe by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:34 +01:00
winesync
f9131763ed [WINESYNC] msi: Allocate the remote handle on the server side.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b9b459810f646c48bdac981a066f0102acb9201c by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:34 +01:00
winesync
a5f9ac3b85 [WINESYNC] msi: Stop vending WineMsiRemotePackage.
Since we return it from WineMsiRemoteCustomAction::GetActionInfo().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d26336a944e0b516e56dd69fa06543404402b45f by Zebediah Figura <z.figura12@gmail.com>
2022-03-20 19:27:33 +01:00
Eric Kohl
691a739b02 [UMPNPMGR] Improve UpdateServiceStatus()
- Set dwCheckPoint
- Set dwControlAccepted depending on the service state
2022-03-20 17:21:45 +01:00
Eric Kohl
b0a73746cd [UMPNPMGR][SETUPAPI] Fix notification handles in PNP_RegisterNotification and PNP_UnregisterNotification
- Notification handles must be context handles
- Register and unregister notification targets
2022-03-20 14:59:30 +01:00
Vadim Galyant
d4a05ad7aa [FREELDR:NTLDR] Stub out x86 PAE support in preparation for PR #4272.
- Move boot options parsing early on in LoadWindowsCore().

- Add WinLdrIsPaeSupported(), move in it the PAE options parsing.
  The aim is to perform other tests to determine whether or not to
  enable PAE, and select an adequate kernel image.

Co-authored-by: Vadim Galyant <vgal@rambler.ru>

- Fix parsing of the NOEXECUTE options, taking their precedence
  into account. Most of these are also x86-specific.
2022-03-20 04:12:58 +01:00
Hermès Bélusca-Maïto
52275a92bd [WIN32SS:DISPLAY] Fix some return values (use correct types) in display drivers.
See for example, in DrvEnableSurface(), etc.

TODO: framebufacc's comments need to be "translated" into actual English...
2022-03-19 17:51:44 +01:00
Hermès Bélusca-Maïto
5e93daa9ce [WIN32SS] Use the DCFLAGS and DCTYPE flags defined in ntgdi/dc.h instead of the old ones in include/ntgdihdl.h
The names of these new flags match the documented ones at
https://reactos.org/wiki/Techwiki:Win32k/DC
https://books.google.hr/books?id=-O92IIF1Bj4C&pg=PA197&lpg=PA197
and the gdikdx debug extension.
2022-03-19 17:26:09 +01:00
Hermès Bélusca-Maïto
1c2b757a64 [WIN32SS:NTUSER] Use kernel handle in W32kOpenFile(). 2022-03-19 17:04:30 +01:00
Hermès Bélusca-Maïto
d535ecf1dc [FREELDR] Use safe-string buffer printf to initialize the returned strings in WinLdrGetNLSNames().
This will also stop the GCC 9+ warnings, see PR #4385.
2022-03-19 16:56:13 +01:00
Vadim Galyant
d01f948925 [FREELDR] Allow booting from NTFS volume. (#3775) 2022-03-19 15:44:42 +01:00
Mark Jansen
1eed7ca9a9 [RAPPS] Fix uninstalling applications
- 'WindowsInstaller' setups do not fill the UninstallString and ModifyPath with the needed info, so manually calculate those.
- Fix the case where REG_EXPAND_SZ is used instead of REG_SZ
- Take NoModify into account
2022-03-19 13:32:51 +01:00
Stanislav Motylkov
40fe3e5dd9 [NTDLL][ARM] Add missing definition for RtlFillMemoryUlong
[GITHUB] Build entire base module for ARM platform

CORE-17604
2022-03-18 22:52:05 +03:00
Adam Słaboń
d811fca7c0 [WINLOGON] Make PC Speaker "beep" similar to Windows 2003 one (#4397) 2022-03-17 22:31:06 +03:00
Thomas Faber
be33631629 [COMSUPP] Relicense as BSD. 2022-03-15 22:54:17 -04:00
Thomas Faber
680f103f3d [NETCFGX] Fix uninitialized variable use. 2022-03-13 16:20:44 -04:00
Stanislav Motylkov
d3f3a97b1e [DISKPART] Fix GCC build. Addendum to 28d565ae9a. 2022-03-13 17:58:06 +03:00
Eric Kohl
a2aaa28436 [DISKPART] Add dump command to dump a sector of a disk or partition
Select a disk and run "dump disk 0" to dump the MBR of the disk.
2022-03-13 14:26:10 +01:00
Eric Kohl
28d565ae9a [DISKPART] Add dump command to dump a sector of a disk or partition
Select a disk and run "dump disk 0" to dump the MBR of the disk.
2022-03-13 14:20:47 +01:00
Mark Jansen
af33607a27 [SHELL32] Do not reopen the drive properties dialog on cancel (#4383)
CORE-18073
2022-03-12 15:25:48 +01:00
Joachim Henze
248fe4714a [WINFILE] de-DE.rc White-space addendum in context of CORE-18077
Addendum to 0.4.15-dev-3887-g c3f4c11af1
2022-03-10 23:58:48 +01:00
Dmitry Borisov
dc6dfbf668 [NETKVM] Fix calling convention for callback and variadic functions
Addendum to 4c37757e81.
2022-03-10 13:31:10 +03:00
Katayama Hirofumi MZ
dd5a634611 [ATL] Add atlsync.h (#4382)
- Add atlsync.h and implement CCriticalSection, CEvent, CMutex and CSemaphore classes.
CORE-13950
2022-03-07 11:02:42 +09:00
Katayama Hirofumi MZ
6cb1e57a63 [SHELL32] Support CSIDL_FLAG_NO_ALIAS (#4381)
Adding the CSIDL_FLAG_NO_ALIAS flag to SHGetSpecialFolderLocation should return the physical PIDL if possible.
CORE-18079
2022-03-06 15:25:45 +09:00
Katayama Hirofumi MZ
c5f6e744e7 [SHELL32] Follow-up of 'Simplify CChangeNotifyServer'
Do DestroyAllItems() on OnDestroy().
CORE-13950
2022-03-06 12:33:10 +09:00
Katayama Hirofumi MZ
08bd879247 [SHELL32] Simplify CChangeNotifyServer
- Rename ITEM as CWatchItem.
- Change CWatchItem::hRegEntry to CWatchItem::pRegEntry.
- Simplify code around CWatchItem.

CWatchItem::hRegEntry was local to server, so we could change it to a pointer. CORE-13950
2022-03-06 11:49:28 +09:00
Thamatip Chitpong
79eb14deb5 [TASKMGR] Add version resource info (#4376) 2022-03-06 01:06:58 +03:00
Thamatip Chitpong
9ca32a2b95 [AC97] Improve driver version info (#4368) 2022-03-06 01:04:56 +03:00
Adam Słaboń
68e19a95d0 [AC97] Enable on all Intel AC'97 audio controllers (#4366) 2022-03-06 01:04:22 +03:00
Joachim Henze
c3f4c11af1 [REACTOS] de-DE.rc in all modules: DIE! EINGABETASTE! DIE! CORE-18077
harmonize the mixed usage of EINGABETASTE and ENTER
in favor of ENTER.

Allows us even to omit a linebreak in the format utility and
therefore get closer to en-US.rc
2022-03-05 21:25:30 +01:00
Joachim Henze
c791d4ee4e [USETUP] de-DE Update 2022-03-05 CORE-18075
Avoids some typos like
 gew\201nste -> gew\201nschte
 gew\204hlten -> gew\204hlte

Global replacement of
 fahr->setz
to harmonize the mixed usage of Fortfahren vs Fortsetzen

Also recently someone started using ENTER instead of EINGABETASTE
and although I was pissed off by that in the beginning, after thinking
twice: ENTER is the much better alternative to EINGABETASTE, because:
- it does not need to be translated from english
- it is shorter and therefore helps to avoid some needed abbreviations
- it allows to avoid articles and therefore aligns better with other selections
- it avoids translation errors like EINGABETASTER (and EEINGABETASTE in older branches)
So I use that consistently throughout the translation now.

Also shorten "Der PC wird automatisch neu gestartet" because that line was
so long, that it looked odd.

88 Lines touched: "Der Führer wär stolz"
2022-03-05 18:23:33 +01:00
Julio Carchi
ea7c14919e [NTUSER] Fix Toolbar re-painting when Rebar parent has been altered (#4380) CORE-12342
If a Rebar window is altered by calling either ShowWindow() or UpdateWindow()
then we were only updating the parent and omitting their children windows.

This is closer to the behavior of the very very old SVN r27394 == git f1a7f30 .
And therefore intentionally excludes parts of SVN r27403 == git e2651a0 .

The bots have no complaints about it:
KVM https://reactos.org/testman/compare.php?ids=81266,81290
VBox https://reactos.org/testman/compare.php?ids=81267,81291
2022-03-04 19:40:57 +01:00
Katayama Hirofumi MZ
6ba810c08e [IMM32] s/CLIENTIMC_UNKNOWN1/CLIENTIMC_DESTROY/
CORE-11700
2022-03-03 16:17:07 +09:00
Joachim Henze
a6b544fe37 [RUNAS] de-DE.rc Fix typo
An addendum to 0.4.15-dev-3876-g 4109072bc8
which had no JIRA-ticket.
2022-03-03 04:17:43 +01:00
Joachim Henze
e6de6098fb [MSCONFIG_NEW] Exclude from the iso, for the time being CORE-18067
Since more than 10 years we do ship two binaries for the very same purpose in our isos:
msconfig and msconfig_new.

msconfig_new was an attempt to refactor the old tool, but it got stuck rather soon
and is bloating our isos since then, and consuming build-time.
My testing shows that the older version is superior in many ways
compared to that refactoring attempt: see CORE-18067 for examples of some bugs.

Personally I think focusing on the older tool exclusively would make more sense
than trying to improve that refactoring proposal.
But since one never knows what the future might bring and I did not want to step on anyones toes,
I decided to just disable the build and iso-integration of the unfinished one meanwhile,
instead of dumping it entirely. Although my feeling is that after 10years of waiting
it's not worth waiting another 10 years with that.
2022-03-03 03:33:40 +01:00
Katayama Hirofumi MZ
f6317405f6 [IMM32] Silence "invalid HIMC" in Imm32CleanupContext
CORE-18049
2022-03-03 10:21:49 +09:00
Katayama Hirofumi MZ
1c097babff [IMM32_APITEST] Fix ImmGetImeInfoEx for Win2k3
CORE-11700
2022-03-03 10:10:46 +09:00
Katayama Hirofumi MZ
cfeb498e4f [NTUSER][IMM32] Fix ValidateHandleNoErr (#4377)
- Add DesktopPtrToUser helper function.
- Fix imm32.ValidateHandleNoErr function.
- Use DesktopHeapAlloc to allocate the IMC, instead of ExAllocatePoolWithTag.
- Use DesktopHeapFree to free the IMC, instead of ExFreePoolWithTag.
CORE-11700, CORE-18049
2022-03-03 09:43:05 +09:00
Joachim Henze
d9f156e9a8 [RASDLG] de-DE.rc Update CORE-18056
Fix the glitch
"Wenn nur eine nur einzige Leitung verbunden ist"
to
"Wenn nur eine einzige Leitung verbunden ist"
which was introduced by
SVN r67570 == git 8ad8574f4b

and a few other small glitches.
2022-02-28 12:11:05 +01:00
Eric Kohl
50a1479c53 [SECLOGON] Create the remote process 2022-02-26 19:08:15 +01:00
Eric Kohl
4109072bc8 [RUNAS] Support the /netonly option and improve the help text 2022-02-26 18:57:57 +01:00
Mark Jansen
977c129f33 [USER32] SetScrollPos should not bypass UserApiHook
CORE-18048
2022-02-23 20:32:02 +01:00
Stanislav Motylkov
015fd3a72f [NOTEPAD] Fix Croatian (hr-HR) resource file
Addendum to e0fc48d6 (#4338).
2022-02-23 18:34:48 +03:00
Mark Jansen
6304059721 [SHELL32] Add extra information when encountering an unexpected pidl
In addition, make pdump slightly less unusable
2022-02-22 19:43:05 +01:00
Mark Jansen
6a68717c58 [SHELL32] CDefaultContextMenu: Provide a fallback property sheet
CORE-17691
2022-02-22 19:40:09 +01:00
Eric Kohl
7a42954cb7 [ADVAPI32] Remove buggy declaration of SystemFunction034
Addendum to f4982e54.
2022-02-21 17:34:23 +01:00
Eric Kohl
f4982e547d [ADVAPI32][SECLOGON] Start the implementation of CreateProcessWithLogonW 2022-02-21 16:38:29 +01:00
Eric Kohl
eb0830a1d6 [RUNAS] Load user profile by default 2022-02-21 16:26:35 +01:00
Eric Kohl
d4b947aa9b [RUNAS] Pass the current directory to CreateProcessWithLogonW and handle errors 2022-02-21 11:12:50 +01:00
Hermès Bélusca-Maïto
38cbe5acc3 [FREELDR] Update documentation following timeout and UI style work. 2022-02-21 02:54:06 +01:00
Hermès Bélusca-Maïto
63833c769f [FREELDR] Update existing FREELDR.INI documentation. 2022-02-21 02:54:05 +01:00
Hermès Bélusca-Maïto
ea4cfcfa12 [BOOTDATA][SETUPLIB] Don't hardcode FreeLdr's UI defaults in the freeldr.ini files.
This includes:
- the default TimeText;
- the default colors.

They can however be changed by the user at one's convenience, by
explicitly specifying different values.
2022-02-21 02:54:04 +01:00
Hermès Bélusca-Maïto
d215039216 [FREELDR:UI] Improve setting UI colors/strings ("theme") defaults.
Now, default UI colors/strings (e.g. titles/timeout text) that are
dependent of the UI "theme" (mini vs. full TUI) are set first when
calling their corresponding Initialize() function.
Then, the user UI settings are read from the user's freeldr.ini file
and override the UI theme defaults.

These settings get effectively applied at the first drawing operation
(usually the UiFadeInBackdrop() call done by the main UiInitialize()
function).
For "directui" we don't care about the settings -- they are hardcoded.

This allows not having to specify the default settings in the
freeldr.ini files anymore.

+ Add support for "None" UiBackdropFillStyle: fill with whitespace,
  instead of the specific patterns.
2022-02-21 02:54:03 +01:00
Hermès Bélusca-Maïto
44ed4fb001 [FREELDR:UI] TuiUpdateDateTime(): Simplify building the date/time strings. 2022-02-21 02:54:02 +01:00
Hermès Bélusca-Maïto
3599c835f6 [FREELDR:UI] Improve menu timeout drawing.
Fixes CORE-13827, where the timer countdown would otherwise display
incorrectly if there were no trailing spaces after the timer string.
Now, the countdown is always appended with one space separator after
the end of the string, **or**, it is inserted at a specific place
delimited by a %d insertion point in the string.

Also, don't repaint the date & time (in full-UI mode) many times per
second -- instead of only once per second -- while displaying a menu.
2022-02-21 02:54:01 +01:00
Hermès Bélusca-Maïto
ee32f9b86e [FREELDR:UI] Isolate TuiDrawBox() top/bottom horizontal lines drawing into their own helpers. 2022-02-21 02:54:00 +01:00
Hermès Bélusca-Maïto
622a90522d [FREELDR:UI] Fix the painting ordering of menu elements. 2022-02-21 02:53:59 +01:00
Hermès Bélusca-Maïto
5239a0ca4d [FREELDR:UI] Improve how menu line separators are drawn.
When the menu is not boxed, do not draw the specific "T"-shaped box
corners for the separators.
2022-02-21 02:53:58 +01:00
Hermès Bélusca-Maïto
c322610f6e [FREELDR] Improve progress bar support, adapted from Inbv.
- Improve accuracy/progression smoothness when loading drivers.
- Allow changing text and percentage independently.
2022-02-21 02:53:54 +01:00
Eric Kohl
c14440ee57 [RUNAS] Add password input and improve help text
Now it works on windows xp and 10.
2022-02-19 19:50:46 +01:00
Oleg Dubinskiy
9ab5d3afb2 [WIN32SS][NTGDI] Remove useless assert (#4370) CORE-17561
Remove useless ASSERT(FALSE); in IntGdiCreateDisplayDC, because it actually does not check anything useful. It only asserts each time when the function is called from DxEngCreateMemoryDC by MS DirectDraw stack (ddraw.dll & dxg.sys).
UNIMPLEMENTED debug print is enough a lot to see that this function is not implemented properly.
CORE-17561
2022-02-18 22:00:57 +01:00
Hermès Bélusca-Maïto
81943afb7b [FREELDR:NTLDR] Slightly rework how KD transport DLLs are loaded.
A Kernel Debugger Transport DLL is always loaded for Windows XP+ :
either the standard KDCOM.DLL (by default), or an alternative
user-provided one via the /DEBUGPORT= option. If this alternative
does not exist or fails to be loaded, fall back to the standard
KDCOM.DLL.

If no KD dll is loaded, kernel loading would fail because of the
resulting unsatisfied KDCOM dll import (tested on Windows and ReactOS).

+ Normalize kernel, HAL and KD dll file names to lowercase (needed for
  case-sensitive installations).
2022-02-18 20:24:51 +01:00
Hermès Bélusca-Maïto
2221df213f [FREELDR] Add cleanup in PE-image-handling-related failure code paths. 2022-02-18 20:24:49 +01:00
Hermès Bélusca-Maïto
15e1489c7f [FREELDR:NTLDR] Add some error handling for LoadModule().
Based on PR #4294 by Serge Gautherie.

Co-authored-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
2022-02-18 20:24:48 +01:00
Hermès Bélusca-Maïto
1a920d9a7e [FREELDR:NTLDR] Shorten KdTransportDllName --> KdDllName. 2022-02-18 20:24:47 +01:00
Thomas Faber
b72efb6ca8 [CRT] Fix some inconsistent annotations in CRT headers.
This fixes about 5000 VS analysis warnings.
2022-02-17 22:01:37 -05:00
Thomas Faber
f5c5426924 [USBPORT] Fix incorrect use of bitfields.
EndpointMoved == TRUE could never be true, because BOOL is a signed type,
and the only two values in a signed one-bit type are 0 and -1.

Courtesy of VS analysis warning C6299:
Explicitly comparing a bit field to a Boolean type will yield unexpected results.
2022-02-17 22:01:34 -05:00
Mark Jansen
fd28a69de6 [WIN32SS] Store the scrollbar theming enabled flag in the scrollbar
This ensure we do not rely on usermode for always passing this flag in,
which is a ReactOS specific flag.
Thanks to Doug Lyons for finding the source of the problem.
CORE-17780
2022-02-16 18:43:32 +01:00
Andrej Bartulin
7bfc35c366 [README] Add Discord server join link (#4352) 2022-02-16 19:04:44 +03:00
Alex Miccolis
9b71653918 [SHELL32] Stop SHELL_execute from always executing files (#4363)
CORE-18038
Add a check (PathIsExeW) to SHELL_execute to prevent it from executing non-exe files.
2022-02-16 00:54:20 +01:00
Robert Naumann
d64ab28b5f [USER32] Use UINT as parameter for DrawText() (#4357)
Import Wine Commit 0ba1bfb0624d5e95f15499d6cfc9af1910c7c5be by Marcus
Meissner: user32: DrawText gets a 32bit flag, not a 16bit flag.

Fixes CORE-17315 - spottted by I_Kill_Bugs
2022-02-16 00:50:51 +01:00
Hermès Bélusca-Maïto
a7e3584065 [FREELDR:UI] Cleanup for the DrawMenu* functions.
- Remove duplicated code from directui.c and use the one from
  TUI instead, with the latter properly #ifdef'ed for _M_ARM.

- Add SAL annotations.
2022-02-16 00:49:48 +01:00
Hermès Bélusca-Maïto
ccddb4aaf2 [BOOTDATA] Add /HAL=halpc98.dll to all the PC98 floppy disk's freeldr INI file boot entries. 2022-02-16 00:49:47 +01:00
Obaid51
9c79a7982b [AC97] Import the AC97 driver sample
The source code is licensed under MIT license, taken from
"MSDN Code Gallery Microsoft Samples" repository
(https://github.com/microsoftarchive/msdn-code-gallery-microsoft)

The original license was MS-PL, but the driver was later relicensed
as MIT.

Adopted to ReactOS code base by Michael Stamper.

Co-authored-by: Michael Stamper <michaelstamper1@gmail.com>
2022-02-16 01:31:28 +03:00
Bryan Kirk
0944f808f8 [DDK] Hack the IDmaChannel::PhysicalAddress ABI 2022-02-16 01:31:28 +03:00
Bryan Kirk
3d9ef5c7e7 [PSDK] Add GUIDs used by AC97 sample driver 2022-02-16 01:31:28 +03:00
Bryan Kirk
07baa95a01 [DDK] Fix and add portcls definitions used by AC97 driver sample 2022-02-16 01:31:27 +03:00
Victor Perevertkin
6e97b4314f [PORTCLS] Centralize AddRef/Release implementation.
And make it thread-safe.

Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
2022-02-16 01:31:27 +03:00
Thomas Faber
7db9fb3ba6 [PORTCLS] Don't leak CPortWaveCyclic. 2022-02-15 08:43:08 -05:00
Thomas Faber
ec1eb52ebf [PORTCLS] Do not rely on operator new to zero memory.
The standard operator new does not do this, and GCC will in fact
optimize out any zeroing done in the operator.
2022-02-15 08:43:05 -05:00
Katayama Hirofumi MZ
418edcd2bf [SHELL32_APITEST] ShellExecCmdLine: Close newly-opened windows
ROSTESTS-378
2022-02-15 20:15:36 +09:00
Katayama Hirofumi MZ
2b2366ab90 [NTUSER] Improve UserFreeInputContext and UserDestroyInputContext
CORE-18044
2022-02-15 19:07:50 +09:00
Katayama Hirofumi MZ
dfd06ee8fc [MSPAINT] Implement skew (#4362)
- Add SkewDIB helper function in dib.cpp.
- Implement Stretch and Skew feature by SelectionModel::StretchSkew and ImageModel::StretchSkew.
- Move ColorKeyedMaskBlt function.
CORE-16634
2022-02-14 16:18:18 +09:00
Katayama Hirofumi MZ
2d90919047 [MSPAINT] Implement canvas rotation (#4360)
- Add Rotate90DegreeBlt function to dib.cpp.
- Implement ImageModel::RotateNTimes90Degrees and SelectionModel::RotateNTimes90Degrees.
- Improve ToolsModel::SetBackgroundTransparent.
- Extend and improve SelectionModel::InsertFromHBITMAP.
CORE-16634
2022-02-14 12:08:34 +09:00
Thomas Faber
6eccbe27ec [HAL:APIC] Ensure the interrupt gets requested immediately in ApicRequestSelfInterrupt. CORE-17663 2022-02-13 17:15:00 -05:00
Eric Kohl
5811da1ec5 [RUNAS] Initial version of the runas utility
- Work in progress
- Please do not translate it yet because the resources will change significantly
2022-02-13 21:45:10 +01:00
Hermès Bélusca-Maïto
f7e8214b55 [NTOS:INBV] Code refactoring: Move all the boot animation-specific code out of inbv.c and into the new bootanim.c file.
- inbv.c now only contains the Inbv-specific API and nothing else.

- It will make easier for people to write their own boot themes & animations,
  by just copying/adapting the bootanim.c file (and the resources).

- Add SAL annotations.

- All INBV progress bar functions (except for InbvIndicateProgress())
  should not be INIT-only functions, since they can be (not yet in ROS)
  used at later times -- namely, for feedback during hibernation.
2022-02-13 21:29:14 +01:00
Hermès Bélusca-Maïto
17bd71b570 [NTOS:INBV] Duplicate inbv.c to bootanim.c -- the Git way >_> 2022-02-13 21:19:13 +01:00
Hermès Bélusca-Maïto
8fd64d636d Restore the original inbv.c 2022-02-13 21:18:51 +01:00
Hermès Bélusca-Maïto
93c5e2b7c0 [NTOS:INBV] Duplicate inbv.c to bootanim.c -- the Git way >_>
This will preserve the history in the copied file.
2022-02-13 21:18:22 +01:00
Hermès Bélusca-Maïto
e17f7d6994 [NTOS:INBV] Add documentation to the progress-bar helpers. And fix a bug in them.
In particular, the progress percentage specified to InbvUpdateProgressBar(),
or the progress feedback made with InbvIndicateProgress() calls, is
**relative** to the progress sub-range specified with a previous call to
InbvSetProgressBarSubset() (by default, the range is 0...100%).

This functionality is used e.g. when the number of progress steps is
unknown prior, for example when loading drivers: in this case progress
is made within a given percentage range.

This bug has always been with us since 2010.
2022-02-13 21:16:52 +01:00
Eric Kohl
3f67212812 [PSDK] Add missing flags for CreateProcessWithLogon 2022-02-13 15:41:49 +01:00
Katayama Hirofumi MZ
60b89da383 [SHELL32_APITEST] Try to fix Test Win2003_x64 again 2022-02-13 17:45:08 +09:00
Katayama Hirofumi MZ
45a4e53fa4 [NTUSER][IMM32] Use Imm32CurrentPti and pool (#4356)
- Use newly-defined Imm32CurrentPti() instead of NtCurrentTeb()->Win32ThreadInfo.
- THREADSTATE_GETTHREADINFO is same as THREADSTATE_UNKNOWN18.
- Use the paged pool to allocate HIMC rather than heap.
- Fix and improve ImmDestroyContext function.
CORE-11700
2022-02-13 15:51:53 +09:00
Hermès Bélusca-Maïto
78a7d7dc32 [CMIDRIVER] Remove useless Visual Studio resource editor file. 2022-02-12 16:21:32 +01:00
Hermès Bélusca-Maïto
f73c0e08e2 [FDEBUG][CMIDRIVER] Add missing psdk dependency for user-mode code. 2022-02-12 16:21:30 +01:00
Katayama Hirofumi MZ
b5c9d532e8 [NTUSER][USER32] Implement IntImmProcessKey (#4353)
- Establish the trampoline callback USER32_CALLBACK_IMMPROCESSKEY for imm32!ImmProcessKey function, between NTUSER and IMM32.
- Add IntGetImeCompatFlags helper function.
- Implement co_IntImmProcessKey and IntImmProcessKey functions.
CORE-11700
2022-02-12 08:32:13 +09:00
Joachim Henze
27d73cd78b [NOTEPAD] Fix hr-Hr.rc compiler warning 'unrecognized escape sequence' CORE-18043
It regressed by 0.4.15-dev-3810-g e0fc48d6e2 (#4338)
No release was ever affected therefore.

The diff looks massive in tgit-diffview, strange,
but I actually replaced just a '\' with '\n' at line 168.
My local diff tool does properly display it as a one-line-change only.
2022-02-11 12:42:03 +01:00
Katayama Hirofumi MZ
bbe5fd5274 [NTUSER] Implement NtUserCheckImeHotKey (#4351)
- Modify NtUserCheckImeHotKey prototype.
- Add IntGetImeHotKeyLanguageScore, IntGetActiveKeyboardLayout, IntGetImeHotKeyByKey, and IntCheckImeHotKey helper functions.
- Implement NtUserCheckImeHotKey function.
CORE-11700
2022-02-10 22:53:28 +09:00
George Bișoc
1b06522638 [NTOS:SE] Assign the captured SID and/or privileges to NULL manually on token filtering
This reverts 8479509 commit which pretty much does nothing at all (the captured pointer is NULL within the stack of the function has no effect outside of the function). My mistake, sorry.
2022-02-10 09:51:58 +01:00
Katayama Hirofumi MZ
8cdfc245b3 [IMM32] Implement ImmWINNLSGetEnableStatus
CORE-11700
2022-02-10 15:18:44 +09:00
Katayama Hirofumi MZ
cf32c7cb5e [IMM32] Implement ImmSendMessageToActiveDefImeWndW
CORE-11700
2022-02-10 15:05:59 +09:00
George Bișoc
8479509a7b [NTOS:SE] Assign the captured privilege or SID as NULL when releasing
Whenever a captured security property such as privilege or SID is released, we must not have such captured property point at random address in memory but rather we must assign it as NULL after it's been freed from pool memory. This avoids potential double-after-free situations where we might release a buffer twice.
This is exactly the case with token filtering.
2022-02-09 10:29:56 +01:00
Katayama Hirofumi MZ
3ed22ed326 [SHELL32_APITEST] Try to fix Test Win2003_x64
rm: cannot remove 'C:\\tests/testdata/shell32_apitest_sub.exe': Permission denied
2022-02-09 12:37:06 +09:00
Katayama Hirofumi MZ
e52ce89be3 [NTUSER] Refactoring ime.c
s/WINAPI/NTAPI/
CORE-11700
2022-02-09 11:51:27 +09:00
Katayama Hirofumi MZ
5d5cc57869 [NTUSER] Implement NtUserSetImeHotKey (#4350)
- Modify NtUserGetImeHotKey and NtUserSetImeHotKey prototypes.
- Define enum SETIMEHOTKEY_ACTION in <undocuser.h>.
- Define IMEHOTKEY structure in ime.c.
- Add IntGetImeHotKeyLangId, IntAddImeHotKey, IntGetImeHotKeyById, IntGetImeHotKeyByKeyAndLang, IntDeleteImeHotKey, IntFreeImeHotKeys, and IntSetImeHotKey helper functions.
- Implement NtUserGetImeHotKey and NtUserSetImeHotKey functions.
- Cleanup the IME hotkeys at process exit.
CORE-11700
2022-02-09 11:27:44 +09:00
Andrej Bartulin
e0fc48d6e2 [NOTEPAD] Add Croatian translation (hr-HR) (#4338) 2022-02-09 10:26:22 +09:00
Hermès Bélusca-Maïto
2ae45e0985 [CONCFG:FONT] Implement support for the Windows 10 "__DefaultTTFont__" special FaceName value. (#4337)
This special value tells the console to default to whichever font
is deemed most appropriate for the current code page.

Add Doxygen documentation for FindCachedTTFont().
2022-02-08 15:59:10 +01:00
Hermès Bélusca-Maïto
0b6b0b0021 [CONCFG:FONT] Convert the TT_FONT_ENTRY structure to one similar to MS Terminal's _TT_FONT_LIST. (#4337)
See the definition of struct _TT_FONT_LIST
in https://github.com/microsoft/terminal/blob/main/dep/Console/winconp.h

Add Doxygen documentation.

[CONSOLE.CPL][CONSRV] "fonts cache" -> "font cache".
2022-02-08 15:59:08 +01:00
Hermès Bélusca-Maïto
5d3915d0fc [CONCFG:FONT][CONSRV] Use a suitable font when changing console output CP; fail if none found. (#4337)
CORE-12451, CORE-17601, CORE-17803
Replaces PR #4281.

When changing the console output code page, check whether the current
font can support it. If not, try to find a suitable font for the new
code page. If none can be found:

- if we are creating a new console, forcefully switch to codepage 437
  (OEM USA) and retry finding a font, falling back to "Terminal" if
  none could be found;

- if we were just changing the current CP, just fail and keep the old
  code page and font.

Rework the console font selection/creation functions for this new job
(see CreateConsoleFontEx() and friends). Elements of implementation
based from https://github.com/microsoft/terminal ; see code for more
information.

Silence the noisy IsValidConsoleFont2() diagnostic messages.

Add Doxygen documentation.

[CONSOLE.CPL] Only add "Terminal" to the enumerated list of faces
+ add a TODO implementation comment.
2022-02-08 15:59:07 +01:00
Hermès Bélusca-Maïto
a94436b519 [KERNEL32] SetThreadUILanguage(): Validate the parameter. Use LANGIDFROMLCID() macro. (#4301)
Both ReactOS and Win2k3 only support '0' for the parameter.
2022-02-08 15:58:04 +01:00
Hermès Bélusca-Maïto
3e44a5d71c [KERNEL32][CONSRV] Retrieve the best-suited language ID corresponding to the active console output code page. (#4301)
CORE-17601, CORE-17803
Replaces PR #4281.

Implement SrvGetConsoleLangId() (server-side) and set the new current
thread's locale after connecting to a console, or changing its output
code page.

Based on API tracing on Windows 2003, as well as on comments and code
gathered from: https://github.com/microsoft/terminal

Tests results are listed in PR #4301.
2022-02-08 15:58:02 +01:00
Hermès Bélusca-Maïto
ba516ff0f5 [KERNEL32_APITESTS] Add a test showing thread locale/LangID sync with console (#4301)
This test shows how a console program's thread's language ID changes,
or not, when changing the console output code page (or indirectly
when starting on/connecting to a new console), depending on whether
or not the console is running on a CJK/on a non-CJK system, and the
selected code page is a CJK/a non-CJK one.

By that, the test indirectly tests the (non-exposed) consoles GetLangId
+ SetThreadLocale() calls being made under the hood.
2022-02-08 15:58:00 +01:00
Hermès Bélusca-Maïto
20e23bbfcd [NTOS:EX] ExpGet/SetCurrentUserUILanguage() take pointer to const string. Add an implementation note to NtQueryDefaultUILanguage(). 2022-02-08 15:56:39 +01:00
Hermès Bélusca-Maïto
0540c20167 [NTOS:EX][SDK:REACTOS] Fix capitalization of "LangId" in the ProbeFor*** functions. 2022-02-08 15:56:34 +01:00
Katayama Hirofumi MZ
9db4437185 [NTUSER] Implement NtUserNotifyIMEStatus (#4345)
- Define "the special virtual keys for Japanese".
- Add UserSetImeConversionKeyState helper function.
- Implement NtUserNotifyIMEStatus function.
CORE-11700
2022-02-08 12:22:08 +09:00
Katayama Hirofumi MZ
61d4b5fd6c [NTUSER] Cleanup the window lists (#4346)
Cleanup the window lists that are no longer needed at the thread / process termination.
CORE-11700
2022-02-08 12:21:05 +09:00
Mark Jansen
ce306b83db [SHELL32] Rename functions to fix ambiguity 2022-02-07 20:56:46 +01:00
Mark Jansen
bc5603d9d0 [SHELL32] Show properties dialog in a new thread 2022-02-07 20:56:46 +01:00
Mark Jansen
93fac5533d [SHELL32] ShellExecute: Retry after searching for the file in the SEE_MASK_INVOKEIDLIST case
CORE-18035
2022-02-07 20:56:46 +01:00
Mark Jansen
f6f5490ab4 [SHELL32] ShellExecute: Implement SEE_MASK_INVOKEIDLIST
CORE-18035
Also simplify some error handling by using smart pointers
2022-02-07 20:56:21 +01:00
Katayama Hirofumi MZ
1bc9dda5e6 [NTUSER] Rewrite NtUserDestroyInputContext (#4342)
CORE-11700
2022-02-07 10:45:02 +09:00
Hermès Bélusca-Maïto
914f14a8b9 [FREELDR:NTLDR] Adjust some debug traces. RegOpenKey(): demote an ERR to WARN.
CORE-18040
2022-02-07 00:26:30 +01:00
Hermès Bélusca-Maïto
f6a13d452c [FREELDR:NTLDR] Implement support for the SOS option.
CORE-9023, CORE-18033

- Reset the UI to a minimal one in SOS mode.

- In SOS mode, a trace of loaded files is displayed on the screen,
  instead of the usual progress bar.

- Add a callback to the PE loader to notify when imported DLLs are
  loaded for a main image. This allows getting an accurate SOS trace.
2022-02-06 23:53:41 +01:00
Hermès Bélusca-Maïto
cfbec70e04 [FREELDR] Use strsafe functions in the PE loader. 2022-02-06 22:20:58 +01:00
Hermès Bélusca-Maïto
313e6b6cbb [FREELDR:UI] Clean-up when uninitializing the UI.
- If the started OS loader failed and we are back to the OS selection
  menu, re-initialize the UI as the loader may have messed up the display
  in the meantime.

- Tear down allocated off-screen back-buffer when uninitializing the TUI.
- Clear up the screen when initializing the direct-UI.
2022-02-06 22:20:57 +01:00
Hermès Bélusca-Maïto
e2daca3f60 [FREELDR:UI] Improve drawing of progress bars, reducing flickering.
- Remove excessive UiDrawBackdrop() calls that caused too many
  unnecessary redraws.

- ProgressBar: Clear only the portions that need to be cleared up.
  This allows to not use DrawBackdrop anymore and the flickering.
2022-02-06 17:52:46 +01:00
Hermès Bélusca-Maïto
9101247366 [FREELDR:UI] Couple of fixes for the ProgressBar functions.
- Fix box size calculations.
- MiniTUI: Distinguish Vista+ vs. NTLDR style progress bar.
2022-02-06 17:52:44 +01:00
Hermès Bélusca-Maïto
d749b45e2a [FREELDR:UI] Cleanup for the ProgressBar functions.
- Remove duplicated code from directui.c and use the one from
  TUI instead, with the latter properly #ifdef'ed for _M_ARM.

- Fix their title color.
- Add SAL annotations.
2022-02-06 17:52:43 +01:00
Hermès Bélusca-Maïto
a9994eab45 [FREELDR:UI] Couple of fixes for some TUI Draw*Text functions.
- TuiDrawCenteredText: Partly fix centering calculations (susceptible
  to give negative coordinates).

- TuiDrawText2: Don't display anything if X or Y are out of the screen.
2022-02-06 17:52:42 +01:00
Hermès Bélusca-Maïto
f6a2438c1f [FREELDR:UI] Cleanup for the DrawText* functions.
- Remove duplicated code from directui.c and use the one from
  TUI instead, with the latter properly #ifdef'ed for _M_ARM.

- Provide the minimal implementations for NoUiDrawText*().
- TuiDrawText() is just a particular case of TuiDrawText2().

- Isolate the TuiPrintf() and TuiDraw*Text*() functions as separate
  "Generic TUI utils".

- Fix "TAG_TAG" typo in TAG_TAG_TUI_PALETTE.
- Add SAL annotations.
2022-02-06 17:52:40 +01:00
Hermès Bélusca-Maïto
06fc2e72a6 [FREELDR:UI] Disable GUI code from compilation as it is currently stubbed.
Rename "ShowGui" -> "ShowUi" as this variable was actually unrelated
to *graphical* aspects of the UI.
2022-02-06 17:52:39 +01:00
Hermès Bélusca-Maïto
844c9dce6c [FREELDR:UI] Code formatting only. 2022-02-06 17:52:38 +01:00
Eric Kohl
942e79963a [SCHEDSVC] This is a shared process service too 2022-02-06 16:56:43 +01:00
Eric Kohl
b76d49bcaa [SYSSETUP] Disable debug messages on the process page 2022-02-06 16:30:53 +01:00
Katayama Hirofumi MZ
f2c3167db3 [NTUSER] Implement NtUserAssociateInputContext (#4334)
- Add IntReAllocatePoolWithTag function in window.c.
- Define WINDOWLIST structure in "window.h".
- Add IntBuildHwndList and IntFreeHwndList helper functions in window.c.
- Add IntAssociateInputContext and IntAssociateInputContextEx helper functions in ime.c.
- Implement NtUserAssociateInputContext function.
CORE-11700
2022-02-05 20:23:57 +09:00
Joachim Henze
bf16435303 [WIN32SS] Remove an ambiguous assert entirely CORE-16738
It popped up very reliably when performing git-clone of the ros sources
while having the taskmgr open in the processes-tab.
Or when building 'ninja bootcd -j1' while having the taskmgr open in the processes-tab.

It is always possible to ignore it and then continue using ros for days without
noticing any side effects.
James Tabor judged the assert to have a "questionable logic".
Giannis who once added it, was also ok with commenting it.

His words:
This assertion isn't something fatal,
the worst thing that can happen from continuing on it would be
to make the thread get awake more times than it should.

It was commented out already on 2020-04-21 via
0.4.14-dev-1519-g 87f6c82d85
2022-02-05 01:06:15 +01:00
Hermès Bélusca-Maïto
f79c02bd8a [CONSRV] Introduce a CON_SET_OUTPUT_CP() macro to simplify setting the console's output CP + associated changes. Simplify ConDrvSetConsoleCP() as well. 2022-02-04 21:35:15 +01:00
Mark Jansen
f80de47c85 [SHELL32_APITEST] ShellExecuteEx: Add test for 'properties' verb
CORE-18035
2022-02-03 21:50:34 +01:00
Mark Jansen
d40d642f03 [PSDK] Add some parameter names 2022-02-03 21:50:34 +01:00
Serge Gautherie
1944d7b71b [KERNEL32] HeapCreateTagsW(): Sync' types and add annotations
See RtlCreateTagHeap().
2022-02-03 20:21:40 +01:00
Serge Gautherie
25bff3a1e0 [NDK][NTDLL][RTL] RtlCreateTagHeap(): Fix types and annotations
According to
https://processhacker.sourceforge.io/doc/ntrtl_8h.html
2022-02-03 20:21:40 +01:00
Katayama Hirofumi MZ
0519ae0ac5 [NTUSER] Half-implement NtUserSetImeOwnerWindow (#4332)
- Add some code to NtUserSetImeOwnerWindow function.
- Add IntGetTopLevelWindow helper function.
CORE-11700
2022-02-03 13:39:15 +09:00
George Bișoc
8bd980e483 [NTOS:CC] Unintialize private cache maps before purging the cache section
Before purging the data cache of a certain section of a file from system cache, we have to unintialize the private cache maps of that section if a filesystem or any other component prompts the kernel to do so.
2022-02-02 17:45:59 +01:00
Katayama Hirofumi MZ
8c6dcdcf81 [USER32] Implement ImeWnd_OnImeSetContext (#4329)
- Modify NtUserSetImeOwnerWindow prototype.
- Add User32GetTopLevelWindow function.
- Add ImeWnd_OnImeSetContext function.
- Implement WM_IME_SETCONTEXT message handling of the IME window.
CORE-11700
2022-02-02 11:58:31 +09:00
Katayama Hirofumi MZ
470aa27610 [NTUSER] Move IMM-related code to ime.c (#4322)
Move the IMM-related code from ntstubs.c into ime.c.
CORE-11700
2022-02-02 11:56:40 +09:00
Katayama Hirofumi MZ
99614febad [USER32] Add ImeWnd_OnImeSystem (#4327)
- Add WM_IME_SYSTEM message handling of the IME window.
- Modify immtable.h.
CORE-11700
2022-01-31 21:20:08 +09:00
Katayama Hirofumi MZ
173fca6ed6 [NTUSER] UserIsDBCSEnabled: Vietnamese doesn't use DBCS
CORE-11700
2022-01-31 09:33:19 +09:00
Katayama Hirofumi MZ
fbab1914a6 [USER32] Don't delay-load-link to imm32.dll (#4328)
Reduce binary size.
- Don't directly call the IMM32 functions. Use IMM_FN instead.
- Modify CMakeLists.txt to unlink imm32.dll.
CORE-11700
2022-01-31 09:30:47 +09:00
Katayama Hirofumi MZ
d735373e46 [USER32] Improve RegisterIMEClass function
CORE-11700
2022-01-31 04:21:45 +09:00
Joachim Henze
cacb2db2f3 [TAPIUI] Fix es-ES.rc MSVC warning RC4206 : title string too long; truncated at 256 CORE-18034
An addendum to 0.4.15-dev-257-g 546862babc which was (#2667)

Thanks for the shortened translation, provided by Vic Marcal and julenuri.
2022-01-30 17:20:57 +01:00
Katayama Hirofumi MZ
0839711566 [MSPAINT] Improve Undo/Redo and finishing tool (#4324)
- Fix Undo/Redo mechanism.
- Finish drawing when the tool is to be chanaged and when the file is to be saved.
- Add ToolBase::OnFinishDraw to virtualize finishing drawing.
- Extend bClearRedo parameter to ImageModel::Undo.
- Add ImageModel::DrawSelectionBackground and ImageModel::DeleteSelection methods.
- Fix some WM_PAINT message handling.
CORE-17969
2022-01-30 12:05:23 +09:00
Hermès Bélusca-Maïto
c5b029d0fc [BOOTDATA] "open" actions for 'msstylesfile' and 'themefile' should be REG_EXPAND_SZ since they contain unexpanded environment variables. 2022-01-30 03:51:34 +01:00
Hermès Bélusca-Maïto
4929d8ddb8 [BOOTDATA] Add missing quotes around %1 for the 'cplfile' Control_RunDLL command line.
Suppose you copy a CPL file (e.g. console.dll renamed into console.cpl)
into a path containing spaces, for example into the Desktop:

  C:\Documents and Settings\Administrator\Desktop\console.cpl

If the shell registry value for the "open" action of 'cplfile' does not
contain quotes around %1, then the Control_RunDLL function will attempt
to load "C:\Documents" as a file, which of course does not exist.

(NOTE: Missing in ReactOS: Doing a PathFindOnPath() or a PathFileExists()
call to verify that the file actually exists, instead of blindly trying
to run it and failing later in kernel32!LoadExecuteExW ...)

Adding quotes around the %1 fixes this and the correct file is being
loaded.

This behaviour has been confirmed to exist e.g. on Windows Server 2003
too (and is thus *NOT* a bug in ReactOS/Wine's Control_RunDLL
implementation).

----------------------

How to confirm this behaviour, in Win2k3 x86:

1. Start Win2k3 in debug mode under WinDbg. Ensure you have the debug
   symbols available.

2. Once loaded, break into the debugger, attach context to explorer.exe,
   and enter the magical :) single WinDbg command (all in one line, with
   **NO inserted newlines!!**):

bp shell32!CPL_RunMeBaby ".echo \"CPL CmdLine:\"; ?? (wchar_t*)*(void**)(@esp+12);
  bp SHLWAPI!PathIsFileSpecW \".echo \\\"CPL Path:\\\"; ?? (wchar_t*)*(void**)(@esp+4);
  bc \\\"SHLWAPI!PathIsFileSpecW\\\"; g;\"; g"

(Explanation:
a breakpoint is placed in the internal shell32!CPL_RunMeBaby function.
When the bp is hit, it runs the large WinDbg command inside the quotes.
This command echoes an informative line, then dumps the 3rd parameter
of the function on the stack that contains the CPL command-line.
It then adds a new breakpoint in SHLWAPI!PathIsFileSpecW, which is the
function that is being called *just after* the internal parsing of the
CPL command-line, and will verify whether the extracted CPL path does
exist. That new breakpoint in turn will run a WinDbg command that will:
(i) Display the CPL file path (1st-param of that new function), then
(ii) Clear that breakpoint.  Finally, automatic continuation ensues.)

3. On vanilla Win2k3, whose 'cplfile' "open" action does contain the
   quotes around %1:
     rundll32.exe shell32.dll,Control_RunDLL "%1",%*

   you will observe the following:

CPL CmdLine:
wchar_t * 0x00094e30
 ""C:\Documents and Settings\Administrator\Desktop\console.cpl","
CPL Path:
wchar_t * 0x0007f898
 "C:\Documents and Settings\Administrator\Desktop\console.cpl"

Notice the extra pair of quotes around the CPL filename in the CmdLine.

4. When modifying the 'cplfile' "open" action by *removing* the quotes
   around %1, you will instead see the following, thereby confirming
   the behaviour, which is now identical to what used to happen in ROS:

CPL CmdLine:
wchar_t * 0x00094e30
 "C:\Documents and Settings\Administrator\Desktop\console.cpl,"
CPL Path:
wchar_t * 0x0007f898
 "C:\Documents"

Due to the (now) absence of quotes around %1, the command-line gets
wrongly parsed and the extracted file path is incorrect.
2022-01-30 03:51:33 +01:00
Katayama Hirofumi MZ
c339105b0d [NTUSER] Implement GetSystemMetrics.SM_DBCSENABLED (#4317)
- Add UserIsDBCSEnabled helper function.
- Support SM_DBCSENABLED value of GetSystemMetrics function.
CORE-11700
2022-01-30 11:23:22 +09:00
Katayama Hirofumi MZ
df8c74e78b [INCLUDE] Rename <ddk/imm.h> as <ddk/immdev.h> (#4321)
- Rename <ddk/imm.h> as <ddk/immdev.h>.
- Delete sdk/include/reactos/wine/imm.h (this header is confusing and nonsense).
- Changes related to it.
CORE-11700
2022-01-30 09:38:04 +09:00
Hermès Bélusca-Maïto
4fe4a57889 [PSDK] commctrl.h: Add missing 'U' unsigned indicators. 2022-01-30 01:02:12 +01:00
Hermès Bélusca-Maïto
38f6fd9df7 [CONSOLE.CPL] Fix problems detected by code analysis.
colors.c(129): warning C6287: Redundant code: the left and right sub-expressions are identical.

colors.c(159): warning C6001: Using uninitialized memory 'colorIndex'.
colors.c(180): warning C6385: Reading invalid data from 'ConInfo->ColorTable': the readable size is '64' bytes, but '259696' bytes may be read.
(I thank ThFabba for the suggestion fix.)

console.c(313): warning C6387: 'ConInfo->hWnd' could be '0': this does not adhere to the specification for the function 'SendMessageW'.

font.c(60): warning C6387: 'Preview->hFont' could be '0': this does not adhere to the specification for the function 'GetFontCellSize'.
font.c(230): warning C6001: Using uninitialized memory 'szFontSize'.
font.c(230): warning C6054: String 'szFontSize' might not be zero-terminated.
font.c(671): warning C6387: 'hFont' could be '0': this does not adhere to the specification for the function 'GetFontCellSize'.

layout.c(502): warning C6387: 'FontPreview.hFont' could be '0': this does not adhere to the specification for the function 'SelectObject'.
2022-01-30 01:02:10 +01:00
Hermès Bélusca-Maïto
3b76aa5d19 [CONCFG] Rewrite the InitTTFontCache() registry enumeration loop. 2022-01-30 01:02:09 +01:00
Hermès Bélusca-Maïto
2a5536c540 [CONSOLE.CPL] Rewrite the BuildCodePageList() registry enumeration loop and use far less stack space.
Any valid code page value name in System\CurrentControlSet\Control\Nls\CodePage
is a string representation of its corresponding decimal value, that
cannot be larger than MAXUSHORT == 65535, i.e. longer than 5+1
characters.

Noticed with the analyser warning
dll\cpl\console\options.c(74): warning C6262: Function uses '32808' bytes
of stack: exceeds /analyze:stacksize '16384'. Consider moving some data to heap.

Make the enumeration loop actually stop when ERROR_NO_MORE_ITEMS is
returned. If we got another error, e.g. because the value name was
too long (and thus, an invalid code page), just ignore and continue
looping.
2022-01-30 01:02:08 +01:00
Hermès Bélusca-Maïto
13b3425369 [CONSOLE.CPL] Use fallback brushes for text preview in case CreateSolidBrush() fails (e.g. low memory scenario). 2022-01-30 01:02:07 +01:00
Hermès Bélusca-Maïto
0e5496d082 [CONSOLE.CPL] Add missing/fix some SendMessageW result casts. 2022-01-30 01:02:06 +01:00
Hermès Bélusca-Maïto
446eb60937 [CONSOLE.CPL] Update faces/fonts list on Fonts page activation, when the current code page has changed. 2022-01-30 01:02:05 +01:00
Hermès Bélusca-Maïto
f650cbdb68 [CONCFG] IsValidConsoleFont(): Validate font against charset corresponding to selected code page. 2022-01-30 01:02:04 +01:00
Hermès Bélusca-Maïto
1530a678a8 [CONCFG:FONT] Add SAL annotations. 2022-01-30 01:01:58 +01:00
Victor Perevertkin
e1cda2fb9e [WDMAUD.DRV] Enable the module for amd64 architecture 2022-01-29 12:28:55 +03:00
Katayama Hirofumi MZ
3fc83b4361 [USER32] Implement ImeWnd_OnImeControl (#4320)
- Add IMC_GETCONVERSIONMODE, IMC_GETSENTENCEMODE, IMC_GETOPENSTATUS, IMC_GETSOFTKBDPOS, and IMC_SETSOFTKBDPOS macros into <ddk/imm.h>.
- Implement WM_IME_CONTROL message handling of the IME window.
CORE-11700
2022-01-29 10:35:48 +09:00
Katayama Hirofumi MZ
82136b3ee4 [USER32] Implement ImeWnd_OnImeNotify (#4318)
- Modify CMakeLists.txt to include <ddk/imm.h>
- Implement WM_IME_NOTIFY message handling of the IME window.
CORE-11700
2022-01-28 19:21:21 +09:00
Joachim Henze
6a496c3991 [CRYPTUI] RC Addendum to 0.4.15-dev-3739-gff9301e CORE-18017
Strip the backslash to avoid GCC8.4.0 RosBE2.2.1 warning:

[104/108] Building RC object dll/win32.../CMakeFiles/cryptui.dir/cryptui.rc.obj
C:/ros/reactos/dll/win32/cryptui/lang/cryptui_En.rc:383: unrecognized escape sequence

The glitch was introduced yesterday
by 0.4.15-dev-3739-g ff9301e9db
2022-01-28 02:10:40 +01:00
Katayama Hirofumi MZ
23bb27037d [USER32] Implement User32CreateImeUI (#4316)
Implementing Japanese input...
- Add User32CreateImeUIWindow, User32GetImeShowStatus, User32SendImeUIMessage, User32UpdateImcOfImeUI, User32SetImeWindowOfImc and User32NotifyOpenStatus helper functions.
- Add WM_IME_SELECT, WM_IME_COMPOSITION, WM_IME_STARTCOMPOSITION and WM_IME_ENDCOMPOSITION message handling of the IME window.
- Rename ImeWnd_OnDestroy as User32DestroyImeUIWindow.
- Rename CheckIMCForWindow as User32CanSetImeWindowToImc.
- Improve ImeWnd_OnCreate function.
CORE-11700
2022-01-27 21:19:37 +09:00
Tibor Lajos Füzi
f010059e63 [3DTEXT] Rearrange settings dialog window to look nicer (#4263)
The settings for the 3d text screensaver was unnecessarily big.
2022-01-27 20:12:25 +09:00
Katayama Hirofumi MZ
356babcaf3 [IMM32] s/Imm32IsImmMode/IS_IMM_MODE/
CORE-11700
2022-01-27 07:34:29 +09:00
Katayama Hirofumi MZ
fc62d268d2 [USER32] Implement WM_CREATE of IME window (#4314)
Implement handling of WM_CREATE and WM_DESTROY messages of the IME window.
CORE-11700
2022-01-27 07:30:11 +09:00
Katayama Hirofumi MZ
9c8167e90a [NTUSER] Implement NtUserGetAppImeLevel and NtUserSetAppImeLevel (#4313)
- Add AtomImeLevel atom.
- Modify NtUserSetAppImeLevel prototype.
- Implement NtUserGetAppImeLevel and NtUserSetAppImeLevel functions.
CORE-11700
2022-01-27 07:29:19 +09:00
Hervé Poussineau
963e76fd60 [VIDEOPRT] Fix typo: DEViCEMAP -> DEVICEMAP 2022-01-26 19:30:32 +01:00
Hervé Poussineau
1add6de3e8 [VIDEOPRT] Change case of device registry path written to registry
Change it it two places, to handle when 'UseNewKey' is enabled or disabled.

This fixes the Spice guest agent, which searches 'System' case-sensitively in it.
2022-01-26 19:30:32 +01:00
Hervé Poussineau
b80d806e05 [VIDEOPRT] Honour UseNewKey setting in registry
This changes:
- which device key is written to DEVICEMAP\Video
- which registry key is used in VideoPortSetRegistryParameters()

CORE-17896
2022-01-26 19:30:32 +01:00
Joachim Henze
ff9301e9db [CRYPTUI] Fix all MSVC *.rc warnings RC4206 CORE-18017
warning RC4206 : title string too long; truncated at 256
by providing shorter translations.
We had 24 such warnings in this module on master head.
2022-01-26 03:23:24 +01:00
Katayama Hirofumi MZ
1cad26ad08 [USER32] Fix uninitialized cbTotal
CORE-18025
2022-01-26 08:14:59 +09:00
Valerij Zaporogeci
f8faa0b660 [TASKMGR] Fix a heap corruption bug (#4311)
Improper adjustment of the array index in graphctl.c, introduced in PR #4141 lead to an off-by-one heap corruption.
2022-01-25 15:49:46 +01:00
Katayama Hirofumi MZ
5972c0c18b [USER32] Fix release build C4700 CORE-16287 2022-01-25 21:57:47 +09:00
Katayama Hirofumi MZ
2c4beeca8e [SHELL32] CCopyToMenu/CMoveToMenu: Check if this_ is NULL 2022-01-25 21:08:14 +09:00
Katayama Hirofumi MZ
0360abb796 [USER32] Follow-up of #4262 (a47590c) (#4312)
Display icons/cursors correctly without hungup. CORE-16287
2022-01-25 20:41:00 +09:00
Katayama Hirofumi MZ
974a0f03df [SHELL32] Fix assertion failure in CMenuToolbars
CORE-17505
2022-01-25 11:49:27 +09:00
Victor Perevertkin
99a6667bd9 [NTOS:KE] Remove all checks for x87 not being present 2022-01-25 02:12:33 +03:00
Victor Perevertkin
1aca6937ff [NTOS:KE] Add a check for unsupported CPU features on i586
Currently, these features are vital for the kernel:
- CPUID instruction
- CMPXCHG8B instruction
- TSC aka Time Stamp Counter

All of that have to be present on i586
2022-01-25 02:12:33 +03:00
Victor Perevertkin
705e07ce31 [NTOS:KE] Move CPU features detection to a separate function on i586 2022-01-25 02:12:26 +03:00
Katayama Hirofumi MZ
c199edda45 [SHELL32] Enable _DEBUG and fix assertion failures (#4307)
Improve debuggability. Fix "WorkerW" window class conflict.
- Enable _DEBUG macro if debugging, in order to enable ATLASSERT macro.
- Fix assertion failures.
- Add SHCreateDefaultWorkerWindow helper function and CWorkerTraits, then use them.
- Don't create the broker and server windows by themselves, but subclass.
CORE-17505, CORE-13950
2022-01-25 03:42:46 +09:00
Katayama Hirofumi MZ
a92304fdd4 [RAPPS] Enable _DEBUG and fix assertion failures
CORE-17505
2022-01-24 10:50:26 +09:00
Katayama Hirofumi MZ
d958950217 [EXPLORER] Enable _DEBUG and fix assertion failures (#4306)
- Enable _DEBUG if debugging.
- Fix assertion failures.
CORE-18013
2022-01-24 10:26:13 +09:00
Joachim Henze
c262020016 [RAPPS] Update outdated README regarding size CORE-18018 2022-01-23 22:03:08 +01:00
Joachim Henze
adfef37b2b [RAPPS] Addendum to 0.4.15-dev-3724-g3a7c0d8 CORE-18018
For a moment I thought this member was obsolete entirely,
and intended to delete it entirely.
(as its size is just ULONG which is too small for big downloads > 4GB size).
It apparently works also without it to display the size,
as we actually use a different member that stores the size as a string.

But there actually still *is* a usage for that ULONG representation.
In (the rare) corner-case the http download does not allow to query the size,
then the ULONG representation m_SizeBytes is used as a fallback for the
download-progress-bar to avoid 'marquee mode'.

The 'fallback of the fallback' so to say.
We should enlarge this to be a 64bit unsigned value some day.
2022-01-23 21:21:50 +01:00
Joachim Henze
3a7c0d82d2 [RAPPS] Fallback to legacy "size" entry is not longer needed CORE-18018
on 2021-10-03 Mark Jansen deleted all old size entries from the rapps database via
https://git.reactos.org/?p=rapps-db.git;a=commit;h=551e8cb95716f46e05c3be08996467bd93b1936f
So it makes no sense to keep that fallback-code in RAPPS available.cpp RetrieveSize() func.
2022-01-23 20:24:47 +01:00
Thomas Faber
8d701598fb [NTOS:MM] Implement partial virtual region releases. CORE-17938
Fixes boot with MS videoprt.sys (and some apitests).
2022-01-22 15:07:06 -05:00
Katayama Hirofumi MZ
7014cf04b1 [ATL][MSPAINT] Add ATLTRACE and fix assertion failures (#4299)
- Implement ATLTRACE and AtlTrace in atlbase.h.
- Fix assertion failures in mspaint.
CORE-17969, CORE-18012
2022-01-23 00:59:12 +09:00
Eric Kohl
085f135f1a [SFCFILES] Add sfcfiles dll and header file
Sfcfiles.dll contains only a short list of protected files (WIP).
2022-01-22 13:28:50 +01:00
Thomas Faber
4cf9b7985e [CRT] Fix MSVC version of call_handler 2022-01-21 20:00:41 -05:00
Katayama Hirofumi MZ
41b87158ff [NTUSER] Improve NtUserGetThreadState (#4300)
- Improve enum ThreadStateRoutines.
- Improve NtUserGetThreadState function.
- Improve CLIENTIMC structure.
- Improve imm32 code.
CORE-17732
2022-01-20 11:49:27 +09:00
Stanislav Motylkov
2318f7f436 [TRANSLATION] Cumulative update for Russian (ru-RU) translation
[SYSDM] Addendum to 5a2911d7, e58b4a49, ea2ca8fa.
[SHELL32] Addendum to 16f64a95, 44bb99cc, 2ae526a0, 34b0f3e4, fd39a292.
[SYSSETUP] Addendum to 556cfbf5, 6f1a57a9, 3f053db3.
[SAMSRV] Addendum to 6f1a57a9.
[BOOTDATA] Addendum to 63cd5d54.
[INF] Addendum to fb500b88.
2022-01-18 23:42:06 +03:00
Julio Carchi
292e6a429f [NTUSER] Initialize correctly CaretWidth value. (#4297) CORE-13984 CORE-14359 CORE-16624
Fixes:
CORE-13984 LibreOffice Writer shows no blinking caret
CORE-14359 Apache Open Office 4.1.2 SWriter - no blinking Caret
CORE-16624 KVIRC, no blinking caret in configuration edit controls
2022-01-18 00:36:49 +01:00
Stanislav Motylkov
e105aefc1c [SHELL32] List CD-ROM drives in the "Hardware" tab of disk properties
CORE-17397
2022-01-17 21:04:04 +03:00
Stanislav Motylkov
5bd2cb13b5 [SAMSRV] Fix typo in IDS_ALIAS_BACKUP_OPS_COMMENT (en-US and others)
Addendum to f1e768c0.
2022-01-17 20:40:31 +03:00
Hermès Bélusca-Maïto
c660590567 [USETUP] Default to en-US output codepage when initializing the console. Addendum to commit 9f201d462.
Reported by julenuri.
2022-01-17 16:16:10 +01:00
Katayama Hirofumi MZ
4bec8ff63e [WIN32KNT_APITEST] Strengthen NtUserGetThreadState testcase (#4291)
Add some paramters to test on. CORE-17732
2022-01-17 16:01:31 +09:00
Hermès Bélusca-Maïto
f1ad6845a8 [SVCHOST][SECLOGON][MSWSOCK] Minimal headers cleanup.
- SVCHOST, SECLOGON: Add missing NTOS_MODE_USER.
- MSWSOCK: Remove some useless windef.h includes.
2022-01-17 01:08:09 +01:00
Luo Yufan
41e7701e08 [INF] Fix Mizu theme display problems with CJK font (#4284)
Add font substitute from "Source Sans Pro" to "Droid Sans Fallback" if the user is CJK.
CORE-17997
2022-01-17 08:43:15 +09:00
Jesús Sanz del Rey
9c6f1958d9 [SHELL32] Implement Recycler Bin icons (#4221)
CORE-3938

Icon extraction from the recycle bin was not possible due to the partial absence of IExtractIcon interface support.
Adding it inside the RecycleBinFile's QueryInterface private implementation, and then calling it from CRecycleBin, now allows retrieving and displaying the files' icons.
2022-01-17 00:20:07 +01:00
Stanislav Motylkov
63cd5d54b8 [BOOTDATA] Make Secondary Logon service name and description translatable
Addendum to 43fa9548.
2022-01-16 22:46:36 +03:00
Eric Kohl
24a727a23b [reactos] Add missing prototypes for svchost callbacks
Addendum to 43fa9548d3
2022-01-16 19:56:28 +01:00
Eric Kohl
69bd857e39 [dhcpsvc][srvsvc][wkssvc] Servcies run by svchost must be shared process services 2022-01-16 17:59:41 +01:00
Jose Carlos Jesus
5165179ad8 [NEWDEV] Disable NewFolder btn and Show browser title when selecting a directory (#4288)
* [NEWDEV] Add browser title to rc files

* [NEWDEV] Show browser title when selecting a directory

* Update dll/win32/newdev/lang/pl-PL.rc

Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>

* Update dll/win32/newdev/lang/bg-BG.rc

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>

* Update dll/win32/newdev/wizard.c

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>

* Update dll/win32/newdev/lang/pl-PL.rc

Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>

* Update dll/win32/newdev/lang/pt-PT.rc

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>

* Remove obvious comment

* Add de-DE and ru-RU translations

* Add French translation

Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2022-01-16 17:34:59 +01:00
Eric Kohl
43fa9548d3 [services] Add the secondary logon service 2022-01-16 17:02:01 +01:00
Eric Kohl
c28db81193 [IDL] Add idl file for the secondary logon service 2022-01-16 14:27:13 +01:00
Adam Stachowicz
54140ba23d [SYSDM] Update pl translation (#4289)
Addendum to ecfd01eefc and other
2022-01-16 13:58:41 +01:00
Joachim Henze
cf984cc9fe [SYSDM] pt-PT.rc Fix compiler warning RC4206 CORE-17827
Thanks to Twitter user @denzilferreira for that shortened string.
2022-01-16 12:06:26 +01:00
Joachim Henze
bacc0479ce [SYSDM] sq-AL.rc Fix compiler warning RC4206 CORE-17827
Thanks to Twitter users @illyrian598 and @jan_shkreli for that shortened string.
2022-01-16 10:13:40 +01:00
Joachim Henze
98999eebe4 [SYSDM] sk-SK.rc Fix compiler warning RC4206 CORE-17827
Vic Marcal reached out for help on Twitter for that shortened string.
2022-01-16 08:09:14 +01:00
Joachim Henze
b1264c13f7 [SYSDM] el-GR.rc Fix compiler warning RC4206
Vic Marcal reached out for help on Twitter
for that shortened string.
2022-01-16 08:03:28 +01:00
Katayama Hirofumi MZ
ce6da820a4 [NTUSER] Implement NtUserBuildHimcList (#4286)
- Add UserBuildHimcList helper function.
- Implement NtUserBuildHimcList function.
CORE-11700
2022-01-16 09:56:18 +09:00
Katayama Hirofumi MZ
2250ce80f3 [USER32] Adjust the threshold in CascadeWindows (#4283)
Improve the threshold of CascadeWindows function not to make the windows too small.
2022-01-16 09:54:44 +09:00
Eric Kohl
463d312169 [PSDK] Add prototypes CreateProcessWithLogonW and CreateProcessWithTokenW 2022-01-15 18:23:59 +01:00
Hermès Bélusca-Maïto
1ffe431827 [CONSRV] Trivially implement TuiSetCodePage(). CORE-17601 2022-01-15 17:41:36 +01:00
Hermès Bélusca-Maïto
9f201d462d [BLUE][CONSRV][USETUP] Completely remove support for CAB font extraction from driver, and move it to CONSRV, much like what was done for USETUP.
Addendum to aaa416d3 and 2391e31c.
2022-01-15 17:41:36 +01:00
Hermès Bélusca-Maïto
ac2494994b [CONSRV] Stub out support for terminal-level changing of output code page.
CORE-17601
2022-01-15 17:41:34 +01:00
Nikki Next
b0e9212a05 [W32TIME] Add Russian (ru-RU) translation (#4287)
Addendum to 3d8d88ea.
2022-01-15 14:32:25 +03:00
Stanislav Motylkov
3a4e5a61a4 [SYSDM] Add missing changes from e58b4a49 to zh-HK resource file 2022-01-15 03:18:10 +03:00
Stanislav Motylkov
21955218b4 [SYSDM] Add mnemonic/access keys for environment variable editor
Addendum to e58b4a49. CORE-11733
2022-01-15 02:48:56 +03:00
Stanislav Motylkov
ecfd01eefc [SYSDM] Make file browse filter string translatable
Addendum to e58b4a49. CORE-11733
2022-01-15 02:22:11 +03:00
Hermès Bélusca-Maïto
4dd734e92c [NTDLL:LDR] Don't hardcode process-execute flag values. (#4111) 2022-01-14 23:59:32 +01:00
Hermès Bélusca-Maïto
0889182d66 [SDK:NDK] Add the NX_SUPPORT_* flags for the SharedUserData.NXSupportPolicy member. (#4111)
And move those in the XDK to a better place, adding versioning as well.
2022-01-14 23:59:14 +01:00
Jose Carlos Jesus
75d33bf148 [TRANSLATION] Update Portuguese (pt-PT) translation (#4273)
- [DEVMGR] Improve pt-PT translation
- [NEWDEV] Small improvements to pt-PT translation
- [SHELL32] Update pt-PT translation
2022-01-15 00:40:41 +03:00
Chan Chilung
171a920680 [TRANSLATION] Update Chinese Traditional (zh-TW) translation (#4154)
- Added translation for:
  - [W32TIME]
  - [MODE]
  - [TIMEOUT]
  - [MODEMUI]
  - [ARPING]
  - [FRAGINATOR]
  - and more
- Updated existing translation
- [WINNLS] Update cht (zh-TW) and zhh (zh-HK)
- [DOC] Update rules in Chinese translation notes.txt
- Wine translation sync

Some of the punctuation use in WIne has been converted to half-width,
so the punctuation will no longer synced.
2022-01-14 20:22:46 +03:00
Katayama Hirofumi MZ
04a7134b97 [MSGINA] Adjust Status Window if Asian
The Asian logo and bar positions are different from English or Latin positions, due to Asian font.
Add positional adjustment to IDD_STATUS if Asian.
Follow-up of #4280 ef4f0d0.
2022-01-14 12:44:29 +09:00
Katayama Hirofumi MZ
ef4f0d07b1 [SYSSETUP] Adjust Status Window if Asian (#4280)
The Asian logo and bar positions are different from English or Latin positions, due to Asian font.
Add positional adjustment to IDD_STATUSWINDOW_DLG if Asian.
2022-01-14 11:39:24 +09:00
Luo Yufan
4411668e6b [TRANSLATION] Update Simplified Chinese (zh-CN) translation (#4240)
Reviewed-by: Chan Chilung <eason066@gmail.com>
Reviewed-by: He Yang <1160386205@qq.com>
2022-01-14 00:00:37 +03:00
Marat Nagayev
073607c237 [NET] Improve displaying status message (#4096)
- Simplify conditions
- Add application error translation function

[NET][MC] Add missing Russian (ru-RU) translation
2022-01-13 18:10:55 +03:00
Stanislav Motylkov
cde6339155 [SAMSRV] Return correct status for existing groups and users
[NETAPI32] NetpNtStatusToApiStatus: Update accordingly

This fixes net command output in PR #4096.
2022-01-13 16:38:04 +03:00
Katayama Hirofumi MZ
2ea30b2ed3 [USERSRV][TRANSLATION] Improve Japanese (ja-JP.rc) 2022-01-13 14:09:03 +09:00
Katayama Hirofumi MZ
1a5005679c [POWERCFG][TRANSLATION] Improve Japanese (ja-JP.rc) 2022-01-13 11:44:02 +09:00
Katayama Hirofumi MZ
dafac2131b [WINLOGON][TRANSLATION] Improve Japanese translation (ja-JP.rc) 2022-01-13 11:40:05 +09:00
Katayama Hirofumi MZ
48827cf6c5 [NTUSER] Follow-up of #4277 (ea1353e)
According to ThFabba, NtUserSetThreadLayoutHandles returns zero.
CORE-11700
2022-01-13 10:41:03 +09:00
Katayama Hirofumi MZ
ea1353e4be [NTUSER] Implement NtUserSetThreadLayoutHandles (#4277)
- Modify NtUserSetThreadLayoutHandles prototype.
- Implement NtUserSetThreadLayoutHandles function.
CORE-11700
2022-01-12 14:48:20 +09:00
Katayama Hirofumi MZ
28959a2dfd [NTUSER] Follow-up of #4271 (36740ca)
- Delete the excessive comments.
- Delete the debugging leftover.
CORE-11700
2022-01-12 14:08:10 +09:00
Katayama Hirofumi MZ
1f44693657 [NTUSER] Implement NtUserSetImeInfoEx (#4276)
- Modify NtUserSetImeInfoEx prototype.
- Add UserSetImeInfoEx helper function.
- Implement NtUserSetImeInfoEx function.
CORE-11700
2022-01-12 12:07:31 +09:00
Katayama Hirofumi MZ
36740ca981 [NTUSER][IMM32] Implement NtUserGetImeInfoEx (#4271)
- Add UserGetImeInfoEx helper function.
- Implement NtUserGetImeInfoEx function by using UserGetImeInfoEx.
- Fix imm32.ImmGetImeInfoEx.
- Modify enum IMEINFOEXCLASS.
CORE-11700
2022-01-12 12:06:24 +09:00
Doug Lyons
a47590c9cf [USER32] Improve icon extraction to handle RIFF formats and Fix crash (#4262)
- Add handling for 'RIFF' formats (for animated cursors). This makes explorer able to display animated cursors.
- Fix crash in extracting icons/cursors.
CORE-16287
2022-01-12 08:03:44 +09:00
Hervé Poussineau
236ddd4f50 [DESK] Update available settings when selecting another display 2022-01-11 23:47:55 +01:00
Hervé Poussineau
6caf7124b5 [DESK] Factorize changing device description to OnDisplayDeviceChanged() 2022-01-11 23:47:55 +01:00
Hermès Bélusca-Maïto
1df87d7fe9 [SHELL32:WINE][PSDK] Addendum to 0bf768a1: Add missing FARPROC16 definition for CallCPLEntry16() prototype. 2022-01-11 23:31:26 +01:00
Hermès Bélusca-Maïto
0bf768a145 [SHELL32:WINE][PSDK] Fix the prototype of CallCPLEntry16(). 2022-01-11 23:03:25 +01:00
Hermès Bélusca-Maïto
afb04208f7 [KERNEL32] Add missing NTOS_MODE_USER when including the NDK. 2022-01-11 22:45:15 +01:00
Hermès Bélusca-Maïto
c1a8dce23c [CPORTLIB] Remove any usage of debug.h since this lib implements the support for said debugging output. 2022-01-11 22:45:14 +01:00
Serge Gautherie
9a523c8135 [CRT/arm64] Fix handling of intrinsics
Fix msvc14.1-arm64-Release build.

Follow-up to db41787 (0.4.15-dev-2914).
CORE-17518
2022-01-11 20:52:48 +03:00
Serge Gautherie
724774505e [CRT/arm64] Build wine/except_arm64.c
Follow-up to 9efafd6 (0.4.14-dev-934).
CORE-17518
2022-01-11 20:52:34 +03:00
Serge Gautherie
c3e0df0611 [BCRYPT] Add ECDSA P384 to known algorithms
Add missing structs and handler in BCryptOpenAlgorithmProvider().

Cherry-pick a part of Michael Müller's
76b6c360fa

Follow-up to e0a47b7 (0.4.15-dev-3603).
CORE-14198
2022-01-11 20:52:02 +03:00
George Bișoc
be56aff102 [NTOS:PS] Use quota types on process quota querying
Quota limits on a block are enumerated on a per quota type basis thus we should use the values from PS_QUOTA_TYPE enumeration, not from POOL_TYPE.
2022-01-11 11:21:15 +01:00
George Bișoc
4e25c35375 [KMTESTS:PS] Write some tests for process quota management 2022-01-11 10:11:10 +01:00
George Bișoc
0c07eac5b4 [NTOS:OB] Charge/Return pool quotas of objects
As it currently stands the Object Manager doesn't charge any quotas when objects are created, nor it returns quotas when objects are de-allocated and freed from the objects namespace database. This alone can bring inconsistencies in the kernel as we simply don't know what is the amount charged in an object and thus we aren't keeping track of quotas flow.

Now with both PsReturnSharedPoolQuota and PsChargeSharedPoolQuota implemented, the Object Manager can now track the said flow of quotas every time an object is created or de-allocated, thus enforcing consistency with the use of quota resources.
2022-01-11 10:11:10 +01:00
George Bișoc
ee697cfeef [NTOS:PS] Dereference the quota block during process cleanup
Ensure that when we're cleaning up the EPROCESS object, that we are dereferencing the quota block the process in question was using. The routine will automatically request a quota block cleanup if the process that dereferenced the quota block was the last.
2022-01-11 10:11:10 +01:00
George Bișoc
b22eefac88 [NTOS:PS] Process Quota Overhaul
-- Rewrite PspChargeProcessQuotaSpecifiedPool and PspReturnProcessQuotaSpecifiedPool private kernel routines, with the goal to implement the algorithms necessary to manage the fields of quota blocks (Usage, Return, Limit and Peak).
-- Invoke the Mm if quota limit raising or returning has to be done
-- When destroying a quota block, make sure that we're giving back all the rest of non-returned quotas to Memory Mm
-- Crash the system with QUOTA_UNDERFLOW if someone is returning way too much quota than it was previously charged
-- When a process exits, ensure that it doesn't hold up any charged quotas in QuotaUsage field of the process object, that way we're enforcing proper kernel consistency
-- Implement PsChargeSharedPoolQuota and PsChargeProcessPageFileQuota functions, used exclusively by the Object Manager. These routines are used to charge or return amount of quotas of a newly created object.
-- On PspInheritQuota, when assigning to process the default quota block if no parent process is given, we must increment the reference counts as we're using it
-- Handle the ProcessCount reference field, as it wasn't used
-- Annotate the functions with SAL
-- Document the code

=== REMARKS ===
Windows LogOn (Winlogon) is responsible for setting up a different quota block for all the processes within an interactive session, which is what we don't do. What we're currently doing instead is we're using the default block, PspDefaultQuotaBlock, for all the processes
across the system. The default block contains the default limits of -1 (which would imply no limits). By definition, the kernel won't ever return STATUS_QUOTA_EXCEEDED as we literally don't set up a definite limit for regular processes. This situation has to be tackled
in the future.

=== TODO FOR FUTURE ===
Most of the code in PspChargeProcessQuotaSpecifiedPool and PspReturnProcessQuotaSpecifiedPool private routines must be refactored in order to reduce the usage of the quota spin lock, possibly wrapping such code in a loop and whatnot.

CORE-17784
2022-01-11 10:11:09 +01:00
George Bișoc
1649a89cfa [NTOS:MM] Implement Raise/Return pool quota functions
This implements both MmRaisePoolQuota and MmReturnPoolQuota functions, which serve exclusively for quota pool management. The process manager communicates with the memory manager in a call of need to charge or return pool quota limits.
2022-01-11 10:11:09 +01:00
George Bișoc
32e9710fd1 [NTOS:OB] Add a system process quota block macro
OBP_SYSTEM_PROCESS_QUOTA is a macro that'll be used as a way to assign a dummy quota block to system processes, as we mustn't do anything to those in case the Object Manager is charging or returning pool quotas.
2022-01-11 10:11:09 +01:00
George Bișoc
c9755651cd [NTOS:PS] Declare some prototypes and annotate the quota functions with SAL
Declare PsReturnSharedPoolQuota and PsChargeSharedPoolQuota prototypes and annotate the functions. Furthermore, add two definitions related to quota pool limits threshold -- PSP_NON_PAGED_POOL_QUOTA_THRESHOLD and PSP_PAGED_POOL_QUOTA_THRESHOLD. For further details, see the commit description of "[NTOS:MM] Add the pool quota prototypes and some definitions".
2022-01-11 10:11:09 +01:00
George Bișoc
13cbc7fbf9 [NTOS:MM] Add the pool quota prototypes and some definitions
Declare the MmRaisePoolQuota and MmReturnPoolQuota prototypes in the header and add some definitions related to pool quotas, namely MmTotalNonPagedPoolQuota and MmTotalPagedPoolQuota. These variables are used internally by the kernel as sort of "containers" (for the lack of a better term)
which uphold the amount of quotas that the Process Manager is requesting the Memory Manager to raise or return the pool quota limit. In addition to that, add some definitions needed for both of these functions.

The definitions, MI_CHARGE_PAGED_POOL_QUOTA and MI_CHARGE_NON_PAGED_POOL_QUOTA respectively, bear some interesting aspect. Seemingly the 0x80000 and 0x10000 values (that would denote to 524288 and 65536 specifically) are used as quota "limits" or in other words, thresholds that the kernel
uses. So for example if one would want to raise the quota limit charge, MmRaisePoolQuota will raise it so based on this formula -- NewMaxQuota = CurrentQuota + LIMIT_VALUE. LIMIT_VALUE can be either MI_CHARGE_PAGED_POOL_QUOTA or MI_CHARGE_NON_PAGED_POOL_QUOTA, depending a per quota pool basis.

What's more interesting is that these values are pervasive in Process Manager even. This is when quotas are to be returned back and trim the limit of the quota block if needed, the kernel would either take the amount provided by the caller of quotas to return or the threshold (paged or not paged)
if the amount to return exceeds the said threshold in question.
2022-01-11 10:11:08 +01:00
George Bișoc
abe89d7cde [NTOS:FSRTL] Assign the buffer length to ThisBufferLength field
This fixes an issue where ReactOS would assert on QuotaUsage == 0 as the process was still taking up quotas during a quota block de-reference with root cause of ThisBufferLength member field being 0 which made process quota charging/returning flow unbalanced.
In addition to that, on FsRtlCancelNotify routine API all we must ensure that if PsChargePoolQuota or ExAllocatePoolWithTag function fails we have to handle the raised exceptions accordingly and return the charged quota back (if we actually charged quotas that is). With said, wrap that part of code with SEH.

=== DOCUMENTATION REMARKS ===
The cause of the assert is due to the fact ThisBufferLength was being handled wrongly ever since, until this commit. When FsRtl of the Executive has to filter reported changes (with logic algorithm implemented in FsRtlNotifyFilterReportChange function), the said function will charge the quota of a given process
with an amount that is represented as the buffer length whose size is expressed in bytes. This length buffer is preserved in a local variable called NumberOfBytes, which is initialized from BufferLength member field of notification structure or from the length from stack parameters pointed from an IRP.

As it currently stands, the code is implemented in such a way that FsRtlNotifyFilterReportChange will charge quotas to a process but it doesn't assign the buffer length to ThisBufferLength. On the first glimpse ThisBufferLength and BufferLength are very similar members that serve exact same purpose but in reality there's a subtle distinction between the two.

BufferLength is a member whose length size is given by FSDs (filesystem drivers) during a notification dispatching. Whenever FsRtl receives the notification structure packed with data from the filesystem, the length pointed by BufferLength gets passed to ThisBufferLength and from now on the kernel has to use this member for the whole time of its task to accomplish
whatever request it's been given by the filesystem. In other words, BufferLength is strictly used only to pass length size data to the kernel by initializing ThisBufferLength based on that length and unequivocally the kernel uses this member field. What we're doing is that ThisBufferLength never receives the length from BufferLength therefore whenever FsRtl component
has to return quotas back it'll return an amount of 0 (which means no amount to return) and that's a bug in the kernel.
2022-01-11 10:11:08 +01:00
George Bișoc
71a4921f8a [NTOS:EX] Manage quotas when allocating or freeing pool tables
This fixes an assertion where QuotaUsage == 0 is actually not 0 when a process is about to be destroyed.
2022-01-11 10:11:08 +01:00
George Bișoc
47cb3c20a3 [NTOSKRNL] Implement InterlockedExchangeSizeT macro 2022-01-11 10:10:56 +01:00
Jesús Sanz del Rey
47f6745bcd [SHELL32] Fix folders on recycle bin and adjust the column size (#4234)
CORE-11000

- Now, folders can be sent to recycle bin (fixed a bug inside the implementation).
- Adjust column size of the RecycleBin virtual folder in details mode.
2022-01-11 00:40:25 +01:00
Jesús Sanz del Rey
dae6035b3b [SHELL32] Fix recycle bin handle reference leaking (#4222)
CORE-13730

There was a handle reference leak in the recycler bin and the bin wasn't removing the copied file after restoring it.
Close the handle were the memory leak was and move the file when restoring it.
2022-01-11 00:20:23 +01:00
Katayama Hirofumi MZ
3456538e3a [MSPAINT] Some minor improvements (#4264)
- Fix Japanese IDS_MINIATURETITLE resource string.
- Fix Japanese IDM_VIEWSHOWMINIATURE menu item text.
- Fix DWORD as COLORREF.
- Improve some OnPaint's.
CORE-17969
2022-01-10 21:44:13 +09:00
Katayama Hirofumi MZ
edf92c004d [MSPAINT] Don't hide selection on zooming (#4266)
- Don't hide the selection window on zooming.
- Move the selection window by calling placeSelWin() when zoomed.
CORE-17969
2022-01-10 21:41:00 +09:00
Vadim Galyant
fec440d8b8 [SDK:DDK][NTOS:PNP] Implement PnP arbiters initialization 2022-01-10 06:35:45 +03:00
Katayama Hirofumi MZ
b2f8d62cd1 [MSPAINT] Prepare for debugging (#4257)
- Add #include <debug.h> and add link to ntdll.dll for debugging.
- Add CopyDIBImage helper function.
CORE-17969
2022-01-10 08:50:37 +09:00
Hermès Bélusca-Maïto
48d1a7bf4d [SHELL32] Use the already existing g_pszShell32 instead of re-defining a new variable holding the very same string. 2022-01-09 22:44:21 +01:00
Hermès Bélusca-Maïto
83be315abf [SHELL32] Use wide char string literals.
Import parts of Wine commit b215536852dc5a132108db92c90a41c70b738e50
shell32: Use wide char string literals.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-09 22:39:29 +01:00
Hermès Bélusca-Maïto
59b3545603 [SHELL32] recyclebin.h: Correctly balance the INTERFACE defines/undefs. 2022-01-09 19:02:41 +01:00
Arnav Bhatt
8df70629b6 [SYSDM] Fix the "fancy" edit Environment dialog box (#4258)
Fix the issue of the changes of the environment values not being set sometimes through fancy dialog box:
Make sure the environment value buffer is always reallocated before taking the values.
2022-01-09 17:55:25 +01:00
Katayama Hirofumi MZ
17f34887f3 [MSPAINT] Add ICC_BAR_CLASSES (#4261)
The Fonts toolbar uses toolbar and tooltips. Thus this flag is needed. CORE-17949
2022-01-09 23:24:30 +09:00
Eric Kohl
3f053db3e7 [SYSSETUP] Improve the Process Page
- The page will support multiple tasks (WIP)
- The background thread uses messages to update the page
2022-01-09 14:29:17 +01:00
Serge Gautherie
fdcefaa7cb [HDAUDBUS] HDA_PdoPnp(): Remove a redundant ASSERT()
Addendum to cf7fc81 (r68311).
2022-01-08 18:00:38 +03:00
Serge Gautherie
cba4fd57d0 [KS] KsServiceBusEnumPnpRequest(): Remove a redundant ASSERT()
Addendum to c6b26fa (r50531).
2022-01-08 18:00:38 +03:00
Hervé Poussineau
2538583dbe [VIDEOPRT] Query children only when device has been opened
HwGetVideoChildDescriptor callback must be called only after HwInitialize.

CORE-17979
2022-01-06 22:02:07 +01:00
Hervé Poussineau
983d9a1c2a [VBEMP] Disable reporting multiple monitors
It has never worked, and only leads to some infinite loops with some hardware or BIOS configurations.
2022-01-06 20:16:12 +01:00
Hervé Poussineau
f03750de6a [VBEMP] Rename to vgapnp.sys
- rename driver vbemp.sys to vgapnp.sys
- rename service VBE to vga
- store settings in non hardware-profile registry key
2022-01-06 20:16:12 +01:00
Hervé Poussineau
073a1ea34c [VGAMP] Rename to vga.sys
- rename driver vgamp.sys to vga.sys
- rename service Vga to VgaSave
- store settings in non hardware-profile registry key
2022-01-06 20:16:12 +01:00
Hervé Poussineau
0d9386d0e0 [VGA_NEW] Disable it for now 2022-01-06 17:47:45 +01:00
Hervé Poussineau
5afea63e66 [BOOTDATA] hivesys.inf: remove UseNewKey setting
Neither LiveCD nor BootCD 2nd stage are able to use new registry key for videoprt,
as they depend of some PnP entries which are unavailable.

This line was added in a7ebc6bd5c (r43711)

Note that it doesn't change much for ReactOS yet, as neither
videoprt.sys nor win32k.sys take care of this parameter.
2022-01-06 17:45:03 +01:00
Hervé Poussineau
cdae92ed8c [SETUPLIB] Upgrade display settings even if no hardware profile exists 2022-01-06 17:45:03 +01:00
Hermès Bélusca-Maïto
a6bf77e7b9 [SDK:REACTOS] Move our ROS-specific header-only UI libraries into a "ui" sub-folder. (#4205) 2022-01-06 02:17:25 +01:00
Doug Lyons
9db24e33c7 [WINLOGON] Start screen saver as current user (#4135)
This fixes displaying user-defined text for 3D Text ScreenSaver.
Also set the process to IDLE_PRIORITY_CLASS.

CORE-17875
2022-01-06 04:10:56 +03:00
Serge Gautherie
40b9ee0ae0 [VIDEOPRT] Match Zw*Key() DesiredAccess values (#4145)
Even if the kernel mode does not care, this makes it clear.
2022-01-06 04:04:09 +03:00
Thomas Csovcsity
cfaeaaa993 [WINDOWSCODECS] Add converter for WICPixelFormat32bppRGBA (#4239)
This fixes CORE-15708 "PdfSam 3.3.5 setup can not decode bmp"
https://jira.reactos.org/browse/CORE-15708

Wine does not have this issue, but it did not have it back when last sync to
WineStaging-4.18 was done. This commit is as near as possible to actual
wine-7.0-rc3 version. This wine code uses reverse_bgr8 instead of own
convert_rgba_to_bgra, but it leads to wrong colors.
2022-01-06 03:56:45 +03:00
Serge Gautherie
1723c223e3 [RPCRT4] Fix implicit in attribute handling in write_param_fs()
Cherry-pick wine-5.0-rc1-50-g1aaf870 by Jacek Caban.
https://source.winehq.org/git/wine.git/?a=commit;h=1aaf870039dfb8419ae060d8c67240df1366b953

(OLEAUT32_WINETEST part shall be imported later.)

CORE-17884
2022-01-06 03:48:29 +03:00
Tibor Lajos Füzi
1a4d5dbeaa [TRANSLATION] Update Hungarian (hu-HU) translation (#4220)
[LABEL] Improve existing and add missing translations
[NOTEPAD] Fix a typo
[FORMAT] Improve existing translation
[REGSVR32] Improve existing translation
[RUNDLL32] Improve existing translation
[CPL:DESK] Fix typos
2022-01-05 20:38:38 +03:00
Stanislav Motylkov
77fd33c99c [NTOS:CM] Refactor full CPU identifier values
Dedicated to Victor Perevertkin.
2022-01-05 18:28:40 +03:00
Stanislav Motylkov
84cc81ee29 [NTOS:KE/x64] Detect CPU vendor properly and store value in PRCB
Also generate processor identifier properly based on this value
on the Configuration Manager machine-dependent initialization.

Update processor driver INF file accordingly.

CORE-17970 CORE-14922
2022-01-05 18:28:40 +03:00
Katayama Hirofumi MZ
a4bd2449ad [MSPAINT] Follow-up of #4237
CORE-17949
2022-01-05 16:41:12 +09:00
Katayama Hirofumi MZ
361a2ce4f7 [MSPAINT] Implement the text tool (#4237)
- Add CFontsDialog and IDD_FONTS.
- Rewrite CTextEditWindow.
- Implement TOOL_TEXT tool.
- Add the font-related settings.
CORE-17949
2022-01-05 16:26:05 +09:00
Victor Perevertkin
951e52104a [HDAUDBUS] Fix uninitialized variable usage 2022-01-05 03:22:15 +03:00
Michael Stamper
378294a7df [PORTCLS] Fix races, fix WavePci Port Drivers
- Split buffers on page to prevent non-contiguous memory being passed to driver.
- Protect CIrpQueue::GetMappingWithTag, ReleaseMappingWithTag with spinlock to prevent race conditions
  (GetMapping, ReleaseMapping do not need spinlock, they are only called from a service routine).
- Remove ASSERT in CIrpQueue::ReleaseMappingWithTag, when mappings are released out of order. Just ignore
  the tag argument and release the next one in the list. This is what windows does, confirmed by calling
  PortWavePciStream::ReleaseMapping() with tag argument set to 0, absolutly no difference observed.
  Allowing out of order release is essential given that a driver is not permitted to hold a spinlock when calling
  ReleaseMapping().
- Remove IIrpQueue::HasLastMappingFailed(), it never worked and there is no way it could work.
  CPortPinWavePci::HandleKsStream() call MappingAvailable() non-conditionally, this is what Windows does,
  verified by debug prints in ac97 driver.
- Implement CIrpQueue::NumData().
- Remove incorrect interlocked operations/volatile variables and several (now unused) class fields.
2022-01-05 03:20:44 +03:00
Victor Perevertkin
7ed1883c8e [DRIVERS] Use IoForwardIrpSynchronously in drivers
Instead of having an own routine in each driver
IoForwardIrpSynchronously can be used.
2022-01-05 02:17:56 +03:00
Katayama Hirofumi MZ
8e8f61989a [NTUSER] Plan A: UserDereferenceObject in UserCreateInputContext (#4247)
- Call UserDereferenceObject function in UserCreateInputContext.
- Don't call UserDereferenceObject against input context at the other places.
CORE-11700
2022-01-05 08:15:32 +09:00
Javier Fernandez
1f6cd38050 [RAPPS] Update Spanish (es-ES) translation (#4198)
Addendum to acc25ce9.
2022-01-04 17:04:18 +03:00
Jose Carlos Jesus
cde7327e0b [NETSHELL] Improve Portuguese (pt-PT) translation (#4232) 2022-01-04 16:54:02 +03:00
Stanislav Motylkov
6ebe2ed3a1 [UNIATA] Fix packing for port configuration information structures
Now it's consistent with our structure in sdk/include/ddk/srb.h.
Thanks to Hervé Poussineau for help with problem analysis.

Also MSDN doesn't say anything about the structure packing:
https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/srb/ns-srb-_port_configuration_information

CORE-17966
2022-01-04 14:30:27 +03:00
Stanislav Motylkov
27955da7ee [WIN32K:NTUSER] Fix one more reference leak
Addendum to d5deacd9 and 2a2f8dbe. CORE-11700
2022-01-04 03:12:12 +03:00
Thomas Faber
a4b2c80853 [NTOS:KE] Fix buffer overflow when displaying x64 bug checks 2022-01-03 13:25:09 -05:00
Thomas Faber
2a2f8dbebd [WIN32K:NTUSER] Fix reference leak 2022-01-03 13:25:09 -05:00
Javier Fernandez
b23e21a03e [MPLAY32] Update Spanish (es-ES) translation (#4200) 2022-01-03 19:30:56 +03:00
Thomas Faber
7c3902e57b [IMM32_APITEST] Fix failure messages. 2022-01-02 12:54:59 -05:00
Thomas Faber
49bb853b24 [GDI32_VISTA] Move D3DKMT functions out of gdi32. CORE-17433 2022-01-01 12:42:04 -05:00
Katayama Hirofumi MZ
757bed81b1 [NTUSER] Fix KVM and VBox tests (#4235)
KVM and VBox tests was failing since d5deacd
- Check NULL at UserFreeInputContext and UserDestroyInputContext functions.
- Move UserMarkObjectDestroy into the UserDestroyInputContext function.
CORE-11700
2022-01-02 01:40:11 +09:00
Katayama Hirofumi MZ
ee132a05ba [MSPAINT] Polymorphism on tools (#4210)
- Introduce polymorphism on tools and mouse actions.
- Implement double-clicking on TOOL_SHAPE.
- Fix some bugs about mouse handling.
CORE-17931
2022-01-01 22:02:36 +09:00
Thomas Csovcsity
e0a47b7b5f [BCRYPT] Add ECDSA P256 to known algorithms
Add missing structs and handler in BCryptOpenAlgorithmProvider().
Fixes CORE-16741 and similar problems.
2022-01-01 15:18:06 +03:00
Katayama Hirofumi MZ
d5deacd903 [NTUSER] Implement NtUserCreateInputContext (#4230)
- Modify NtUserCreateInputContext prototype.
- Add UserCreateInputContext helper function.
- Implement NtUserCreateInputContext function by using UserCreateInputContext.
- Call UserCreateInputContext(0) in InitThreadCallback function to create the default input context.
CORE-11700
2022-01-01 20:59:00 +09:00
Katayama Hirofumi MZ
ba3affe5f7 [NTUSER] Implement NtUserUpdateInputContext (#4228)
- Modify NtUserUpdateInputContext prototype.
- Implement NtUserUpdateInputContext function.
- Add enum UPDATE_INPUT_CONTEXT (UIC_*) to undocuser.h.
CORE-11700
2022-01-01 20:57:51 +09:00
Katayama Hirofumi MZ
cdf3b5e85a [NTUSER] Implement NtUserQueryInputContext (#4227)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
- Modify NtUserQueryInputContext prototype.
- Implement NtUserQueryInputContext function.
- Add enum QUERY_INPUT_CONTEXT (QIC_*) to undocuser.h.
CORE-11700
2022-01-01 20:56:50 +09:00
Hermès Bélusca-Maïto
0d00a5d6eb [FREELDR] Slightly revamp the Exception BSOD screen.
- Don't store trailing newlines in the exception description text strings.
- Remove unused i386PrintChar().
- Display CR4 in x86.

- Use the "indentation" printf generation trick in order to get aligned
  strings for (CF4 and) DR6 and DR7, without having to hardcode the tons
  of alignment whitespaces (--> make the strings stored in freeldr shorter).

- Show the IP/ErrorCode/EFlags/GDTR/IDTR/LDTR values vertically aligned.

- Display the stack frames in both x86 and x64 modes.

- Adjust the instruction pointer when a BREAKPOINT or OVERFLOW exception
  arises, so that the offending instruction can show up in the instruction
  stream.
2022-01-01 05:04:23 +01:00
Hermès Bélusca-Maïto
2c9dbacebb [FREELDR] Fix displayed information in the Exception BSOD.
CORE-16748

- Display the correct TR register value.

- Ensure that the x86 segment register values displayed are really
  2-byte long.

Segment registers are intrinsically 16 bits. Even if the x86
KTRAP_FRAME structure stores them as ULONG, only their lower 16 bits
are initialized. We thus cast them to USHORT before display.

These segment registers are saved in a stack-based KTRAP_FRAME by the
CPU trap mechanism (for SS), and by 'push CS' etc. instructions for
the others, and from Intel documentation, we know that:
"
If the source operand is a segment register (16 bits) and the operand
size is 64-bits, a zero-extended value is pushed on the stack; if the
operand size is 32-bits, either a zero-extended value is pushed on the
stack or the segment selector is written on the stack using a 16-bit
move. For the last case, all recent Core and Atom processors perform
a 16-bit move, leaving the upper portion of the stack location unmodified.
"
So it may happen, when using the push, that either they get zero-extended,
or garbage gets stored in the higher bits, and these need to be trimmed.
2022-01-01 05:04:22 +01:00
Hermès Bélusca-Maïto
10a976e78f 🎊 🍾 🥳 Happy New Year 2022 to the ReactOS Community! 🎆 ⚛️ ☢️
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:
 __,  ,__)            __,  ,__)       __, ,__)        ░▄████▄░▄███▄░▄████▄░▄████▄░
(--|__| _ ,_ ,_      (--|\ | _       (--\ | _  _ ,_   ░▀▀░▄██░██░██░▀▀░▄██░▀▀░▄██░
  _|  |(_||_)|_)(_|    _| \|(/_(_|_)     \|(/_(_||    ░░▄██▀░░██░██░░▄██▀░░░▄██▀░░
 (        |  |  ,_|   (                (__|           ░██████░▀███▀░██████░██████░
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:
2022-01-01 00:00:00 +01:00
Hermès Bélusca-Maïto
e05010193e [MSGINA][SHELL32] Update some resources information. 2021-12-31 23:55:32 +01:00
Hermès Bélusca-Maïto
50eaa449f8 [FREELDR] Use actual ReactOS copyright year. 2021-12-31 23:55:31 +01:00
Mark Jansen
3b1c06c035 [PSDK] Add some missing argument names 2021-12-31 21:27:48 +01:00
Mark Jansen
acc25ce914 [RAPPS] Show the user that there are no search results
CORE-17944
2021-12-31 21:27:48 +01:00
Mark Jansen
d59f5ae2a5 [SHELL32][SHELL32_APITEST] Implement SHCreateFileDataObject 2021-12-31 21:27:30 +01:00
Mark Jansen
e6568af2d3 [SYSSETUP] Register type libraries before signaling we are done
This prevents a race condition, where hSysSetupInf could be closed before all type libraries are registered
2021-12-31 21:26:18 +01:00
Mark Jansen
51b2197c12 [ROSAPPS] Remove unmaintained / half-implemented imagesoft 2021-12-31 21:25:38 +01:00
Eric Kohl
6623b8d155 [ARP] Move the message file
Move the message file because we do not need to generate a global message header file for the arp utility.
2021-12-31 16:35:25 +01:00
Hermès Bélusca-Maïto
d7722f39fb [PSDK][SHELL32][SHELLEXT] Add SHCreateFileExtractIconW() to the PSDK and SAL-annotate it. (#4223)
Note that even if the MS PSDK and MSDN documents an hypothetical
ANSI version SHCreateFileExtractIconA(), this one never existed
exported in any Windows version!
2021-12-31 02:30:58 +01:00
Hermès Bélusca-Maïto
14dbd66d88 [SDK:ATL] Implement GetDlgItemText(BSTR&), GetTopLevelParent(), GetWindowText(CSimpleString&). (#4207)
And add SAL annotations to the Get***Text family of functions.
2021-12-31 02:28:10 +01:00
Hermès Bélusca-Maïto
e60a4f00b5 [ATL] atlwin.h: Formatting, and add a comment in IsParentDialog(). 2021-12-31 02:26:53 +01:00
Katayama Hirofumi MZ
fcc222c28a [NTUSER] Implement NtUserDisableThreadIme (#4216)
CORE-11700
2021-12-31 10:20:53 +09:00
Hermès Bélusca-Maïto
10a5200e1f [BOOTDATA] Add new Setup Debug/Screen boot entries in BootCD/HybridCD/PC98 boot menus. (#3353)
CORE-17350

Makes testing easier on real hardware (especially for these configs
where debugging can only be done via screen mode).

Add also an experimental Setup ACPI APIC entry in bootcd.ini for testing
purposes, along the lines of commit 5ee09256d .
In the similar LiveCD entry, use instead the /HAL= option.
2021-12-30 16:06:49 +01:00
Hermès Bélusca-Maïto
3fcd73634e [BOOTDATA] Remove deprecated BOCHS debugport example in txtsetup.sif. 2021-12-30 03:42:01 +01:00
Hermès Bélusca-Maïto
a01398b034 [FREELDR] Adjust a boot-options editor example. 2021-12-30 03:42:00 +01:00
Stanislav Motylkov
f18fb7da09 [NTOS:MM] Unrefernece some dereferences 2021-12-30 01:54:09 +03:00
Stanislav Motylkov
84a4efa491 [BOOTDATA] Reorder localized sections properly and fix hex numbers case 2021-12-30 01:36:57 +03:00
Luo Yufan
c1f50f3138 [TRANSLATION] Update Simplified Chinese (zh-CN) translation (#4173)
Reviewed-by: Chan Chilung <eason066@gmail.com>
2021-12-30 01:16:41 +03:00
Chan Chilung
81db5e1da8 [TRANSLATION] Add Hong Kong Chinese (zh-HK) translation - Part 1 (#3941)
Converted from Cantonese to HK-Style Written Chinese.

Also assign zh-HK translations to the ReactOS Chinese
translation team in the CODEOWNERS file.

Reviewed-by: He Yang <1160386205@qq.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2021-12-30 00:40:57 +03:00
Doug Lyons
00ace73316 [MSI] Improve previous msi/dialog.c patch to match code committed to Wine. (#4008)
CORE-17702

Only show the main dialog pane in the taskbar when executing a Cancel dialog.
- Improve previous msi/dialog.c patch to match current Wine code.
- Remove #ifdef's for already committed Wine Code.

In effect, importing Wine's commit 4b88e290521ef9fde9290c9bcbae7420966a6f46:
msi: Set dialog as parent in subsequent dialog.
Author: Fabian Maurer <dark.shadow4@web.de>
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51576
2021-12-29 17:06:28 +01:00
Jesús Sanz del Rey
b94b435a11 [SHELL32] Handle double click on focus manager (#4213)
CORE-9943
2021-12-29 17:00:59 +01:00
Javier Fernandez
c77d53bf6c [DRWTSN32] Add Spanish translation (#4201) 2021-12-29 16:55:38 +01:00
Jesús Sanz del Rey
5831427ef9 [DEVMGR] Ensure clicking on item when opening property sheet (#4196)
Fix a bug related to the device manager, where double-clicking anywhere when an item is already selected opens the property sheet.

CORE-17207
2021-12-29 16:52:41 +01:00
Oleg Dubinskiy
dc483bd700 [WIN32SS:ENG] EngCreateBitmap: mark created bitmaps as API bitmaps (#4146)
CORE-17561

Set the API_BITMAP flag for bitmaps created by EngCreateBitmap().

This avoids failure when created bitmap is passed to NtGdiSelectBitmap(), since it checks for this flag and fails if it isn't set.
Otherwise, if failure occurs, the bitmap is hot handled properly.
Setting this flag outside of that function is not an option at all, because it is a public (exported) function, and in many cases it's called directly by the caller (in case with MS DDraw stack, it can be called also by dxg.sys from dxgthk!EngCreateBitmap, which directly calls win32k!EngCreateBitmap).

In particular, it allows Windows XP/2003 DirectDraw stack (ddraw.dll & dxg.sys) to properly work in ReactOS (in software emulation mode), even on real hardware. So now, a lot of DirectX 1-7 apps and games (whose can work withoug hardware acceleation), are working properly with ddraw.dll + dxg.sys replacement! Also Justin Miller (DarkFire01) confirmed that even Direct3D software emulation now also works correctly on real hardware!
2021-12-29 16:51:23 +01:00
Hermès Bélusca-Maïto
0db5fce47d [ATTRIB] Fix bFound assignment, as it was originally intended by the PR reviewer.
See https://github.com/reactos/reactos/pull/2142#discussion_r360645296

This fixes the two warnings:
warning C4552: '!=': result of expression not used
2021-12-29 04:02:35 +01:00
Hermès Bélusca-Maïto
da699be4c4 [ATTRIB] Formatting only. 2021-12-29 04:02:28 +01:00
Hermès Bélusca-Maïto
a84d295974 [RAPPS] Fix the download dialog not having an icon when RAPPS is started for the first time and the database is downloaded beforehand. 2021-12-29 01:28:56 +01:00
Hermès Bélusca-Maïto
b5a6357d93 [RAPPS] Remove some dead code.
CAvailableApps::GetFolderPath() and friends are unnecessary, since
the data they return are public members of the m_Strings global structure,
that are already being used directly by other code.
2021-12-29 01:28:55 +01:00
Hermès Bélusca-Maïto
35efa2b9c7 [RAPPS] Minor formatting. 2021-12-29 01:28:53 +01:00
Katayama Hirofumi MZ
d30e5eb51c [MSPAINT] Add NUM_COLORS and enum PAL_TYPE (#4203)
Reduce magic numbers and improve debuggability. CORE-17931
2021-12-28 19:01:31 +09:00
Hermès Bélusca-Maïto
59ceeb1da0 [RAPPS] Capitalize the IDS_APP_DISPLAY_* strings ("Details"/"List"/"Tile") 2021-12-28 03:20:22 +01:00
Hermès Bélusca-Maïto
45bbf5bc8a [DEVCPUX] Remove double WS_POPUP. 2021-12-28 03:20:21 +01:00
Hermès Bélusca-Maïto
0d19ab0b82 [SYSDM] Some fixes when resizing the environment variables dialogs.
- Correctly handle the return values for WM_SIZING and WM_SIZE messages.

- Use NULL for hWndInsertAfter parameter of DeferWindowPos() when
  we don't care about the Z-order.

- Specify SWP_NOMOVE for controls that don't move during resizing.

- Fix the IDOK and IDCANCEL buttons when resizing the environment
  variables list dialog.

- Fix the dialog "moving" effect that happened whenever an attempt
  was made to resize the dialog from either of the
  top/left borders, or the top-right/top-left/bottom-left corners,
  to a size smaller than the minimal one.

- Use DWLP_USER instead of GWLP_USERDATA when storing user-specific
  data into the dialog, since the latter can be used internally by
  the Win32 dialog manager implementation.
2021-12-28 03:20:11 +01:00
Hermès Bélusca-Maïto
f6711dc528 [SYSDM] Don't systematically center the environment dialog. Restore the lost DS_CONTEXTHELP style. 2021-12-28 02:51:43 +01:00
Katayama Hirofumi MZ
2ca3ff5bc6 [MSPAINT] Refactoring (_countof and resource.h) (#4202)
- Use Microsoft standard _countof macro instead of SIZEOF.
- Rename definitions.h as resource.h.
- Move some macro definitions to its proper place.
CORE-17931
2021-12-28 10:44:56 +09:00
Victor Perevertkin
ad49da70a1 [HIVESYS] Add missing device classes to avoid error messages in log 2021-12-28 04:23:51 +03:00
Victor Perevertkin
fd9436d768 [NTOS:PNP] Remove excessive error messages 2021-12-28 04:23:51 +03:00
Victor Perevertkin
1a6bd2704a [SCSIPORT] Reduce and improve debug printing 2021-12-28 04:23:51 +03:00
Katayama Hirofumi MZ
ba117350eb [MSPAINT] Add const to some ImageModel methods
CORE-17931
2021-12-28 09:49:36 +09:00
Katayama Hirofumi MZ
4331b47c50 [MSPAINT] Add const to some PaletteModel methods
CORE-17931
2021-12-28 09:47:13 +09:00
Victor Perevertkin
188f5dc50a [KMTESTS:IO] Avoid crashing in IoCreateFile test when pool allocations are failed 2021-12-28 02:51:52 +03:00
Serge Gautherie
5ba5051f79 [FLTMGR] CreateClientPort(): Fix ObInsertObject() error handling
Avoid extra ObDereferenceObject().

CORE-17904
2021-12-28 02:27:50 +03:00
Lucas Puntillo
a23249e137 [GITPOD] change extract directory to automatically extract to RosBE, and set tar to verbose mode
change extract directory to automatically extract to RosBE, and set tar to verbose mode shorting the waiting time for the user and have verbose mode activated to show if there were any issues with the file itself. therefore helping the user and developer.
2021-12-28 02:14:47 +03:00
Serge Gautherie
665dac03b8 [CMAKE] msvc.cmake: Remove add_definitions(/D__arm__) (#3710) 2021-12-28 02:12:25 +03:00
Oleg Dubinskiy
cbf8b367f5 [SYSSETUP] Enable sound events for Workstation (#3733)
Write sound events values in registry in case user selected Workstation setup during 2nd setup stage.

CORE-13951
2021-12-28 02:08:13 +03:00
Doug Lyons
f68efe516e Update based on reviewer comments. 2021-12-28 02:03:54 +03:00
Doug Lyons
e1d0128ffc Fewer GetLastError() function calls. 2021-12-28 02:03:54 +03:00
Doug Lyons
9c8a86b4cc Indentation fixes. 2021-12-28 02:03:54 +03:00
Doug Lyons
f83f650dd6 attrib command improvements 2021-12-28 02:03:54 +03:00
Mark Jansen
b34b47056a [ROSAPPS] Remove 'man' utility 2021-12-28 01:59:17 +03:00
Mark Jansen
f1519ec1b6 [ROSAPPS] Remove 'chklib' utility 2021-12-28 01:58:52 +03:00
Mark Jansen
271a54282e [ROSAPPS] Remove 'binpatch' utility 2021-12-28 01:58:07 +03:00
Serge Gautherie
44d2513ac6 [CMAKE] toolchain-clang.cmake: Use overrides-gcc.cmake
Addendum to 8cd5c4e.
CORE-14513
2021-12-28 01:56:33 +03:00
Serge Gautherie
1449523c6d [CRT] mem/: Fix msvc14.0-amd64 build
Addendum to aea4cfb.
2021-12-28 01:55:38 +03:00
Serge Gautherie
bf4d47d969 [FREETYPE] CMakeLists.txt: Fix if conditions 2021-12-28 01:45:28 +03:00
George Bișoc
3bc2d590a1 [NTOSKRNL] Regroup the pool allocation tags in one dedicated place
We have a special file, tag.h, which serves as a place to store whatever kernel pool allocation tag yet we still have some tags sparse over the kernel code... So just re-group them in one unique place.
2021-12-27 18:57:03 +01:00
Katayama Hirofumi MZ
e9330371ea [MSPAINT] Define enum TOOLTYPE and use it (#4197)
Improve code quality and debuggability. CORE-17931
2021-12-27 23:23:32 +09:00
Katayama Hirofumi MZ
90c3f89bb2 [MSPAINT] Mouse Wheel support (#4195)
Improve usability by mouse wheel handling. Plain wheel, Ctrl+Wheel, and Shift+Wheel. CORE-17937
2021-12-27 22:20:22 +09:00
Javier Fernandez
29718e009a [SYSDM] Update Spanish (es-ES) translation (#4186)
Reviewed-by: Julio Carchi Ruiz <julcar@informaticos.com>
Reviewed-by: Julen Urizar Compains <julenuri@hotmail.com>
Signed-off-by: Javier Fernandez <elhoir@gmail.com>
2021-12-27 16:08:42 +03:00
Julen Urizar Compains
c49d1de135 [TRANSLATION] Update Basque Spanish (eu-ES) translation - Part 1 (#4057)
Reviewed-by: Ismael Ferreras Morezuelas <swyterzone+ros@gmail.com>
2021-12-27 16:00:04 +03:00
Katayama Hirofumi MZ
102898191d [MSPAINT] Add const to ToolsModel methods (#4190)
Add const keywords to some methods of ToolsModel class. CORE-17931
2021-12-27 20:08:07 +09:00
Katayama Hirofumi MZ
b5536e448a [MSPAINT] Add const to SelectionModel methods (#4191)
Add const keywords to some methods of SelectionModel class. CORE-17931
2021-12-27 20:07:23 +09:00
Katayama Hirofumi MZ
ce54a8a5f2 [MSPAINT] Add nearlyEqualPoints and use it (#4194)
CORE-17931
2021-12-27 20:06:21 +09:00
Katayama Hirofumi MZ
30e47fdb77 [MSPAINT] Fix the size of settings if too large (#4189)
- Fix the initial values of BMPHeight and BMPWidth.
- Fix the values of BMPHeight and BMPWidth if too large.
2021-12-27 10:52:53 +09:00
Katayama Hirofumi MZ
98775c4c83 [COMCTL32] Handle TCIS_BUTTONPRESSED at TAB_SetCurFocus (#4179)
Based on @JoachimHenze (reactosfanboy)'s patch. Switch TCIS_BUTTONPRESSED flag at TAB_SetCurFocus function.
CORE-4245
2021-12-27 10:04:29 +09:00
Katayama Hirofumi MZ
691139c090 [SHELL32_APITEST] Disable SHChangeNotify testcase by DISABLE_THIS_TESTCASE macro
SHChangeNotify testcase takes 6min. Too heavy.
CORE-13950
2021-12-27 09:58:35 +09:00
Katayama Hirofumi MZ
7e9cf35967 [SHELL32_APITEST] Strengthen SHChangeNotify testcase more and more (#4174)
CORE-13950
2021-12-27 09:45:44 +09:00
Katayama Hirofumi MZ
1c163bf163 [MSPAINT] Revert PostMessage to SendMessage
614354ccb5
CORE-17931
2021-12-27 08:26:33 +09:00
Katayama Hirofumi MZ
614354ccb5 [MSPAINT] Define GRIP_SIZE macro and use it (#4192)
Reduce magic numbers. CORE-17931
2021-12-26 23:05:47 +09:00
Katayama Hirofumi MZ
9e1386db43 [MSPAINT] Add Zoomed and UnZoomed and use them (#4188)
- Define Zoomed and UnZoomed helper functions.
- Use them.
CORE-17931
2021-12-26 19:49:56 +09:00
Katayama Hirofumi MZ
50cb4b3cb7 [MSPAINT] Delete filename extension .png from IDS_DEFAULTFILENAME 2021-12-25 22:52:56 +09:00
Katayama Hirofumi MZ
4e6e22e638 [MSPAINT] Make PNG default instead of BMP (#4182) 2021-12-25 22:23:25 +09:00
Eric Kohl
fa607733cb [SCHEDSVC] Use a timer to start jobs
This enables the service to start multiple jobs at the same time.
2021-12-25 14:18:53 +01:00
Andreas Maier
99dcd6f71c [MSV1_0] Implement LsaApLogonUserEx2_Network (5/5)
This is a part of the Partial Network Login Implementation PR.
2021-12-25 15:55:43 +03:00
Andreas Maier
dbca423cf8 [MSV1_0] Stub LsaApLogonUserEx2_Network (4/5)
This is a part of the Partial Network Login Implementation PR.
2021-12-25 15:55:43 +03:00
Andreas Maier
472b32d902 [MSV1_0] Extract the code for SamValidateUser function (3/5)
This is a part of the Partial Network Login Implementation PR.

- Extract code for SamValidateUser (sam.c) from LsaApLogonUserEx2.
- Make SamValidateNormalUser a local function for sam.c
- Move dependent function GetNtAuthorityDomainSid to sam.c
2021-12-25 15:55:43 +03:00
Andreas Maier
045cd5d42f [MSV1_0] Extract SamValidateNormalUser to a separate file (2/5)
This is a part of the Partial Network Login Implementation PR.

- Extract code for SamValidateNormalUser (sam.c) from LsaApLogonUserEx2.
- Move dependent functions to sam.c:
  * GetAccountDomainSid
  * MsvpCheckPassword
  * MsvpCheckLogonHours
  * MsvpCheckWorkstations
2021-12-25 15:55:43 +03:00
Andreas Maier
5a67ed775f [MSV1_0] Improve GetComputerNameW call (1/5)
This is a part of the Partial Network Login Implementation PR.
2021-12-25 15:55:43 +03:00
Katayama Hirofumi MZ
2be9ea9c3b [BOOTDATA] Support EMF/WMF metafile file types (#4183)
Improve "Open with" registry info. CORE-17814
2021-12-25 21:40:59 +09:00
Katayama Hirofumi MZ
5c8ae0d766 [GDIPLUS] GdipCreateBitmapFromStream should accept metafiles (#4181)
- Add hbitmap_from_emf helper function.
- GdipCreateBitmapFromStream accepts the metafiles.
CORE-17814
2021-12-25 21:40:08 +09:00
Scott Maday
99a6d03786 [I8042PRT] Add Latitude D820 to the hack list (#4185)
Fixes the Dell Latitude D820 TouchPad not working.
2021-12-25 03:07:33 +01:00
Andreas Maier
0901077f8c [MSV1_0] Create stubs for SECPKG_USER_FUNCTION_TABLE
This commit fixes a bug as well: old code of SpUserModeInitialze returns
a pointer to a local variable (SECPKG_USER_FUNCTION_TABLE).
2021-12-25 02:10:33 +03:00
Katayama Hirofumi MZ
1c82bf0324 [TASKMGR] Avoid freezing in getting icons (#4180)
- Modify the timeout value of SendMessageTimeout.
- Use SMTO_ABORTIFHUNG flag.
- Check if the window alive.
CORE-17894
2021-12-24 16:08:07 +09:00
Katayama Hirofumi MZ
4ed752e2c5 [EXPLORER] Adjust Taskbar AUTOHIDE size Part 2
The previous commit 2cc893f was too thick. CORE-17927
2021-12-24 07:52:02 +09:00
Katayama Hirofumi MZ
2cc893f514 [EXPLORER] Adjust AUTOHIDE size
GetSystemMetrics(SM_CXBORDER) is too thin. CORE-17927
2021-12-24 07:26:11 +09:00
Katayama Hirofumi MZ
f153b52dbb [SHELL32] Use IDI_SHELL_DOCUMENT for broken non-exe icons
CORE-16287
2021-12-24 02:47:31 +09:00
Katayama Hirofumi MZ
051561ed17 [NTUSER] Use call procedure handle if available (#4178)
Based on I_Kill_Bugs' patch.
- Use IsCallProcHandle to check if the procedure is a call procedure handle.
- If so, use the call procedure.
CORE-10499
2021-12-23 11:53:18 +09:00
Arnav Bhatt
52befa1d73 [SYSDM] Make the environment dialog box resizable (#4038)
Make it resizable, similarly to what is done in Windows 10.
2021-12-23 01:25:32 +01:00
Arnav Bhatt
e58b4a4928 [SYSDM] Edit Environment Variable Dialog Improvement (#3575)
Improve the "Edit Environment Variable" dialog box to be functionally as similar to the one of Windows 10.
CORE-11733

- Improved the existing dialog box. In particular, allow it to be resizable.
- Implemented new "fancy" dialog box for variables containing multiple directories as values,
  showing them in a list.
2021-12-23 00:37:21 +01:00
Chris Spiegel
00ffe2dfff [NETSHELL] Improve workgroup vs. domain wording (#4172) 2021-12-21 13:40:54 +01:00
Oleg Dubinskiy
8a6312abda [WIN32SS][NTDDRAW] Improve DxEngGetDCState type 2 implementation (#4176)
- Use the REGION_Complexity() function to get the actual region complexity instead of just number of rectangles.
- Don't use prgnRao at all, because it is always uninitialized when passed to the function. So in condition between prgnRao and prgnVis, the 2nd one always succeeds.
- Update the comment accordingly.
- Additionally, add a DPRINT to the end of the function, which displays the returned value.

This allows to properly enable and use DirectDraw and Direct3D hardware acceleration with the following MS DirectX components: ddraw.dll, d3d8.dll, d3d9.dll and dxg.sys. As in VM, same on real hardware.
But note that now the bugcheck 0x50 (PAGE_FAULT_IN_NONPAGED_AREA) occurs when executing fullscreen DDraw apps, after switching display mode. It's unhidden by this fix.
Addendum to 855bf46.
CORE-17561
2021-12-20 21:27:13 +01:00
Ronny Borchert
9d33a2056e [NTFS][UDFS] Fix build with NDEBUG undefined (#4171)
- Fix DumpBTreeNode() parameters in ntfs/btree.c
- Comment out unused variable in env_spec.cpp
- Fix missed brackets in else clause in wcache_lib.cpp
2021-12-20 21:19:53 +01:00
Serge Gautherie
0fd3e51580 [HALX86] HalpDmaAllocateChildAdapter(): Fix memory leak, on error (#4156)
Simplify code, instead of adding 2 missing ObDereferenceObject().
(Note that ObInsertObject() always dereferences the object in case of failure.)

CORE-17904
2021-12-20 21:14:36 +01:00
Andrej Bartulin
2196a06fc1 [KEYBOARD] Switch to QWERTZ for Croatian keyboard layout (#4177) 2021-12-20 15:23:16 +01:00
Stanislav Motylkov
2bf37e73e5 [STORPROP] Fix MSVC build. Addendum to 9a7bd386 2021-12-20 02:46:47 +03:00
Eric Kohl
9a7bd386b9 [STORPROP] Add missing stubs and move some functions around 2021-12-20 00:08:06 +01:00
Serge Gautherie
d375b7f6c5 [WIN32K:NTUSER] Make sure to hold User Global Lock before mapping desktop heap (#4144)
Addendum to 8c098ee8d.
CORE-17890
2021-12-19 23:34:35 +01:00
Doug Lyons
7d1b50394b [WIN32SS] Do not remove message from the Msg Queue if it is not for us. (#4129)
CORE-8217
Patch from 'I_Kill_Bugs' contributor.
2021-12-19 16:03:22 +01:00
Jérôme Gardou
63bb43adbb [MSI] Remove read-only bit when copying the package file
CopyFileW also copies the file attributes, and the copy will be opened with
write access later on.

This is import of Wine commit:
e830975806

Fixes MS Office 2000/2003 installers and probably others. CORE-17693
2021-12-18 15:44:04 +03:00
Katayama Hirofumi MZ
e8a7e0da2b [TASKMGR] Make 'Hide When Minimized' non-default (#4169)
HideWhenMinimized = FALSE; at LoadSettings function.
AlwaysOnTop = TRUE; at LoadSettings function.
2021-12-18 18:21:32 +09:00
Stanislav Motylkov
1a1fd20f3e [README] Update release article link 2021-12-17 22:35:26 +03:00
Stanislav Motylkov
011bd77a94 [README] Update release version 2021-12-17 22:34:18 +03:00
Hervé Poussineau
ac5536aa48 [SCSIPORT] Ignore LUNs not supported by the adapter
CORE-17641
2021-12-17 11:09:23 +01:00
Jose Carlos Jesus
a36cc8054d [COMDLG32] Fix ico3 not shown in Print dialog (#2831) (#2831) 2021-12-17 13:06:55 +09:00
Mark Jansen
db39a50c73 Simplify CDefaultContextMenu by using CAtlList (#3405) 2021-12-17 13:01:03 +09:00
Jose Carlos Jesus
c3a4309d0c [EXPLORER] Fixed issue in TaskBar AUTOHIDE CORE-17093 (#2863)
CORE-17093
2021-12-17 12:42:19 +09:00
Katayama Hirofumi MZ
f643fb301b [NTUSER] Fix SwitchToThisWindow
Taskbar task buttons were not working correctly due to this bug.
CORE-17911
2021-12-17 11:38:23 +09:00
Hervé Poussineau
0358fcf9e4 [NTOS:PNP] Let pnproot only report already detected devices
Ignore devices which have DeviceReported=1 in instance key
and not DeviceReported=1 in Control key.

CORE-17874
2021-12-16 16:14:21 +01:00
Hervé Poussineau
d380e9777c [NTOS:PNP] Set DeviceReported=1 in Instance key and Control key of legacy devices at report time
CORE-17874
2021-12-16 16:14:21 +01:00
Katayama Hirofumi MZ
e3622ebe4e [NTGDI] Strictly check pen style (#4164)
- Check the pen style and elegantly fail if the style was wrong.
CORE-13819
2021-12-16 10:47:57 +09:00
Katayama Hirofumi MZ
545e1190f2 [TASKMGR] Avoid hangs as much as possible (#4166)
- Use ShowWindowAsync instead of ShowWindow.
- Use SwitchToThisWindow directly.
CORE-17894
2021-12-16 09:57:40 +09:00
Katayama Hirofumi MZ
0b6f3eb8e4 [NTUSER][USER32] Use async way in TileWindows and CascadeWindows (#4167)
Processing asynchronously. CORE-17894
2021-12-16 09:52:02 +09:00
Katayama Hirofumi MZ
f636b96eee [EXPLORER] Quick taskbar menu even if any halted window (#4165)
Optimized for speed. CORE-17894
2021-12-16 09:49:43 +09:00
Valerij Zaporogeci
403222dd4f [TASKMGR] Preserve graphs history on resizes (#4141)
- Also the graph stays preserved on the kernel time toggle
- An attempt to clean up the collected cruft was made as well
2021-12-16 03:06:09 +03:00
Hermès Bélusca-Maïto
b2c8fe2c55 [TASKMGR] Formatting changes only 2021-12-16 03:06:04 +03:00
Denis Malikov
8ef8e41cc9 [SHELL32] Show error message if move or copy operation failed (#4155)
This allows user to know when there is not enough space on the target media,
when there is no permissions for the operation, or some other error.

CORE-9239
2021-12-15 17:42:47 +03:00
Katayama Hirofumi MZ
e055b0623c [EXPLORER] Use ShowWindowAsync in CTrayWindow::RestoreAll()
Here, ShowWindowAsync is better than ShowWindow.
CORE-17894
2021-12-14 23:12:01 +09:00
Chan Chilung
10c7145cc6 [XCOPY] Add missing Syntax parameter in STRING_HELP string (#4161) 2021-12-14 03:34:06 +03:00
Rubén Mendoza Luna
b7fa746172 [HELP] Fix (tr-TR) rc sporadic compilation error on VS (#4162)
Fix (tr-TR) resource file compilation error RC2102 on VS2015 and 2017.
Based on the work done at CORE-7405, moves the string split location so
the first part of the message isn't too long anymore.

CORE-17910
2021-12-14 03:22:44 +03:00
Dmitry Borisov
3f97671319 [E1000] Minor improvements (#3904)
- Add support for 64-bit counters (Intel gigabit NICs)
- Properly handle OIDs
- Check that the packet filter is not 0
- Performance increase
2021-12-14 01:57:33 +03:00
Katayama Hirofumi MZ
55a1c29341 [NTUSER][USER32] Simplify SwitchToThisWindow (#4153)
CORE-17894
2021-12-13 08:14:33 +09:00
Eric Kohl
cf8380100e [KERNEL32] SetComputerNameExW: Truncate the computer name
This fixes the SetComputerNameExW api test.
2021-12-12 17:40:52 +01:00
Jose Carlos Jesus
067c08c23f [USETUP] Improve Portuguese (pt-PT) translation (#4131) 2021-12-10 17:16:16 +03:00
Katayama Hirofumi MZ
8c9b6fdb5c [USER32] Partially fix freezing of Task Switcher (#4148)
- Use SendMessageTimeout instead of SendMessage.
- Use SwitchToThisWindow instead of BringWindowToTop.
- Use ShowWindowAsync instead of ShowWindow.
- Use SWP_ASYNCWINDOWPOS for SetWindowPos.
CORE-17894
2021-12-10 13:37:43 +09:00
Katayama Hirofumi MZ
581757d861 [KERNEL32_APITEST] Improve MultiByteToWideChar testcase
- Fix WinXP and ReactOS cases.

CORE-13349

NOTE: We use Win10's MultiByteToWideChar behaviour due to security reason.
2021-12-10 12:24:41 +09:00
Chan Chilung
21d71c28e2 [DOC] Improve file name for Chinese translation notes (#4039) 2021-12-10 01:16:33 +03:00
Chan Chilung
c1c59624ba [TRANSLATION] Chinese Traditional (zh-TW) translation update (#4039) 2021-12-10 01:16:32 +03:00
Andrej Bartulin
90d12a5fce [USETUP] Add Croatian (hr-HR) translation (#4080) 2021-12-10 00:16:49 +03:00
Jose Carlos Jesus
a29f5fed39 [INF] Add Portuguese (pt-PT) translation (#4087) 2021-12-09 20:08:35 +03:00
Justin Miller
b1fca7ea55 [SDK][XDK] Add more definitions for ARM64 and start fixing PE binaries (#4142)
- Add context structure and definitions, NEON128 structure,
  runtime function entry, dispatcher context, scope table

All definitions are based on the latest SDK for arm64.

[SDK] Use _TARGET_PE64 in the pefixup

[GENINC] Add AA64 identifier for ARM64 PE binaries

CORE-17518
2021-12-09 17:54:16 +03:00
Justin Miller
6dfc13e411 [CRT] Add vadefs macros for arm64 (#4123)
CORE-17621 CORE-17518
2021-12-09 17:16:20 +03:00
Serge Gautherie
cd991e3d63 [UNIATA] Fix copy-pasta on 5 Promise device ids
Addendum to 5783342 (r62493).
CORE-17898
2021-12-09 17:10:09 +03:00
Stanislav Motylkov
2a616b0a14 [W32TIME] Restore remaining translations
They were unintentionally dropped in commit 3d8d88ea.
Also add corresponding translation authors.

References: e4898e6e, c81af08f, 05c39d8d
2021-12-09 16:10:42 +03:00
Javier Fernandez
b794e76151 [W32TIME] Add Spanish (es-ES) translation (#4149)
Restore initial translation by Julen committed in ea6e7740
which was then dropped in 3d8d88ea.

Add translation for IDS_DESCRIPTION.
2021-12-09 15:52:02 +03:00
Hervé Poussineau
5dc56dd1d6 Revert "[VIDEOPRT] Fix updating of new registry path values"
This reverts commit ecf3416f49.

This commit was meant to fix CORE-17688. While its effectively fixed
the problem, it introduced another regression CORE-17719.

In the mean time, commit c05a45e17e fixed
things properly.

CORE-17719
2021-12-08 18:36:34 +01:00
Katayama Hirofumi MZ
ee3659d5d5 [NTUSER][USER32] Simplify user32.IsHungAppWindow (#4150)
Check FNID_GHOST and MsqIsHung. CORE-17894
2021-12-09 00:39:57 +09:00
Stanislav Motylkov
07c534c863 [BOOTDATA][USBSTOR] Add device definitions for SFF-8070i (ARMD-style devices)
Confirmed working with our usbstor driver by Vort.

CORE-17895
2021-12-08 17:52:07 +03:00
Katayama Hirofumi MZ
79c926c893 [NTUSER] Implement HSHELL_RUDEAPPACTIVATE notification (#4147)
- Add IntIsWindowFullscreen function to judge whether the window is fullscreen.
- Add IntCheckFullscreen function to notify HSHELL_RUDEAPPACTIVATE if fullscreen.
- Add IntCheckFullscreen call in UpdateShellHook function.
- Add IntCheckFullscreen call in co_WinPosSetWindowPos function.
CORE-16130
2021-12-08 18:26:22 +09:00
Katayama Hirofumi MZ
821223b3d5 [USETUP][TRANSLATION] Improve Japanese 2021-12-08 15:21:17 +09:00
Stanislav Motylkov
f6edd653b0 [RAPPS] Fix Ctrl+F hotkey not working regression
Addendum to 4c7bd34a. CORE-17881
2021-12-07 20:36:49 +03:00
Katayama Hirofumi MZ
4a17d4b0c1 [NTGDI] Follow-up of #4137
Revert AddPenLinesBounds. Delete FIXME comments.
CORE-2527, CORE-8366
2021-12-07 08:08:46 +09:00
Eric Kohl
3d8d88eaf9 [W32TIME] Improve w32time setup
- Remove w32time from hivesys.inf
- Implement DllRegisterServer
- Add DllUnregisterServer stub
- Register w32time at the end of setup phase 2
2021-12-06 23:24:51 +01:00
Katayama Hirofumi MZ
6358c4ac9f [NTGDI] Support the wide pen (#4137)
- Extend PATH_WidenPath function as PATH_WidenPathEx with the path argument.
- Use PATH_WidenPathEx and PATH_FillPathEx functions to implement wide pen drawing in PATH_StrokePath function.
- Add the code to IntGdiLineTo, IntRectangle, IntGdiPolygon, and IntGdiPolyline in order to stroke the path when the effective wide pen.
FIXME: Boundary rectangle.
CORE-2527, CORE-8366
2021-12-06 20:44:06 +09:00
Robert Naumann
ff89651ed0 [COMCTL32] Redraw children when the combo box is dropped down.
Wine commit c82d6ee by Gabriel Ivancescu
Fixes CORE-17883
2021-12-04 21:57:59 +01:00
Katayama Hirofumi MZ
89dd9ecacb [TRANSLATION][WORDPAD] Fix line breaks of Croatian
Fix newline codes of #4098.
52c75521a6
2021-12-04 20:25:08 +09:00
Katayama Hirofumi MZ
f606fecb0d [NTUSER] Fix where linking newly created window is done (#4127)
Co-authored-by: I_Kill_Bugs <>
CORE-12052
2021-12-04 11:52:38 +09:00
Hermès Bélusca-Maïto
957e566a23 [APITESTS][NTVDM][SPOOLSV] Add the missing ENABLE_EXPORTS property as these EXE targets have function exports.
This became a requirement, following a previous CMake update.
Otherwise the built EXEs would not export their intended functions.

Addendum to commit d8e92b5a (see PR #1335)
CORE-15406

[LOADCONFIG] The GCC rant had nothing to do with GCC, but everything with CMake...

[SPOOLSV] Add the missing exported stubs.
2021-12-04 01:17:32 +01:00
Hermès Bélusca-Maïto
addf1e87fe [NTVDM] Log explicitly calls to Long FileName support functions in DOS INT 21h. Use MAXDWORD instead of hardcoded values. 2021-12-03 23:26:24 +01:00
Hermès Bélusca-Maïto
81d5e650de [NTVDM] Improve DOS file search implementation. Addendum to commit 86ba2faa (r67619).
We get file matches when their attributes match and we can obtain
a valid 8.3 file name. This last condition is of upmost importance.
We cannot reliably use GetShortPathName() on the filename returned by
FindFirstFile()/FindNextFile() because the result is uncertain (one
either needs to build a full path before calling the function just to
get the final short path form, or change the current working directory
to the one where the search is being made, etc.)

The Find*file() functions return anyway the short file. name (in the
cAlternateFileName member) if the file does have such 8.3 filename and
its real name (in cFileName) is longer. Otherwise, cFileName could
already be *THE* short filename because it has the correct format for
it. Check this latter case with RtlIsNameLegalDOS8Dot3() and use it if
so. Otherwise this means the file has a long filename that cannot be
converted to short filename format (because e.g. it is in a volume where
short filenames are unavailable), and we skip such files: they wouldn't
be accessible from DOS anyways.

- Doxygen-document demFileFindFirst(), demFileFindNext() and associated
  flags and structures. Update their annotations.

This fixes TurboC 2.x installation.
2021-12-03 23:26:23 +01:00
Hermès Bélusca-Maïto
fcbdab0037 [NTVDM] Trivial english typos fixes. 2021-12-03 23:26:22 +01:00
Serge Gautherie
30010a5aa7 [FREELDR] debug.h: Add an explicit VOID parameter type (#4133)
Addendum to 98c17d3.
2021-12-03 03:14:44 +01:00
Andrej Bartulin
52c75521a6 [TRANSLATION][WORDPAD] Translate Wordpad to Croatian (#4098) 2021-12-02 20:08:45 +01:00
Jose Carlos Jesus
6a3af90d70 [USETUP] Improve pt-Pt Translation (#4130)
* Remove duplicate word
* Improve pt-PT translation
* Fix typos
2021-12-02 19:57:31 +01:00
Doug Lyons
5c9fdcb1de [3DTEXT] Fix 3dtext.scr using near 100% CPU (#4125)
CORE-17866, CORE-8217
2021-12-02 19:55:39 +01:00
Oleg Dubinskiy
c05a45e17e [WIN32K:ENG] Pass correct display name to EngpFindGraphicsDevice (#4128)
It actually should look like '\\.\DISPLAY<n>' (since it comes from user mode),
which the function expects, and not '\\Device\\Video<n>', like done in the
kernel mode. Otherwise, passing wrong name causes a mismatch.

Fix the problem with video device access (failure with status 0xc0000022 when
trying to open it). Hence, it also fixes the following debug log spam:
'err: Could not open device \Device\Video0, 0xc0000022'.

Addendum to 77e891b8. CORE-17719 CORE-17786
2021-12-01 18:28:45 +03:00
Doug Lyons
67ad4e7f60 [EXPLORER] Fix for Start Button Wrong size when Using Themes (#4121) CORE-16742
The problem once was unhidden by
0.4.7-dev-705-g 85ae842105
2021-11-30 22:48:46 +01:00
Katayama Hirofumi MZ
915569a8de [RICHED20] Fail elegantly if pRow or pPara is NULL on ME_EnsureVisible (#4126)
CORE-16578
2021-11-28 22:23:04 +09:00
Hermès Bélusca-Maïto
2693a26e3e [NTVDM] Create the CMOS ram file in NTVDM's own directory, instead of in whatever current directory we are running.
This fixes the age-long annoyance that wherever you ran a DOS program
with NTVDM, its cmos.ram file would be created in the same current
directory the DOS program was being started.

This created at least two problems:
- useless pollution of directories with cmos.ram files;
- for installers, e.g. of Turbo C 1.x that enumerate the install files
  from their directories to be copied/extracted somewhere, the cmos.ram
  file could then be enumerated along and cause the installation to
  interrupt and/or fail.

Now the cmos.ram file is created in the same directory NTVDM resides
(usually in System32...).
Also, debug-print out only loading errors instead of successes as well.
2021-11-28 00:26:46 +01:00
Hermès Bélusca-Maïto
e0a272c95b [NTVDM] DosCreateProcess(): Add failure checks when building the OTVDM command-line.
Addendum to commit 0609db55
2021-11-28 00:26:46 +01:00
Hermès Bélusca-Maïto
1bd0e3f9f9 [NTVDM] Retrieve the full directory of the current running NTVDM instance, to be used as a base path for opening other NTVDM system files. 2021-11-28 00:26:45 +01:00
Hermès Bélusca-Maïto
86eebc2a31 [NTVDM] disk.c: Simplify some code; unmount only present disks during cleanup (avoids useless debug-print errors). 2021-11-28 00:26:45 +01:00
Hermès Bélusca-Maïto
6823878a02 [NTVDM] Sort out some global/emulator header info, and NDK headers inclusions. 2021-11-28 00:26:44 +01:00
Hermès Bélusca-Maïto
695900f51f [NTVDM] Silence noisy DPRINTs when starting processes; they can be re-enabled by recompiling in "advanced debugging" mode. 2021-11-28 00:26:43 +01:00
Hermès Bélusca-Maïto
b849a696ef [NTVDM] In non-STANDALONE builds, check whether we are started as a VDM and bail out if not. 2021-11-28 00:26:43 +01:00
Hermès Bélusca-Maïto
d6d30f9e05 [KERNEL32] Don't hardcode some types in sizeofs, and some flag values. 2021-11-28 00:26:42 +01:00
James Tabor
993eb07654 [User32|API_TEST] Add Get Window Ptr Test
Adding test to verify results from a foreign window process.
See CORE-17856.
2021-11-27 14:47:11 -06:00
James Tabor
9cff384c22 [User32] Add Back Break with Error Message
Add back missing break. See CORE-17856.
2021-11-27 11:35:42 -06:00
Stanislav Motylkov
1897f9f0c0 [FREELDR] Fix release builds for PC-98 and Xbox platforms
Fix error C4013: 'DebugDisableScreenPort' undefined; assuming extern returning int

Addendum to 98c17d31. CORE-16216
2021-11-27 20:22:09 +03:00
Doug Lyons
0609db55d7 [NTVDM] Use strsafe functions for concantenation of strings in otvdm code. (#4124) 2021-11-25 21:06:05 +01:00
Eric Kohl
990ba54537 [NTOS:LPC] NtReplyWaitReceivePortEx returns the correct TotalLength for connect messages
This fixes the NtAcceptConnectPort apitest.
2021-11-24 18:59:16 +01:00
James Tabor
a89844f740 [User32] Fix Copy Paste
Pointed out by otya. See CORE-17856.
2021-11-24 09:36:50 -06:00
Eric Kohl
07e19a5e09 [NTOS:IO] Fail, if io completion port and an apc routine are used at the same time
Add checks to NtNotifyChangeDirectoryFile, NtLockFile, NtReadFile and NtWriteFile.
This fixes two ntdll tests.
2021-11-24 13:34:26 +01:00
Jose Carlos Jesus
b3c6407d6e [SYSSETUP][USETUP] [NLS] Update pt-PT translation (#4120)
- NLS: Change weekdays name to capital letter.
- USETUP: Fix typos to pt-PT translation.

- SYSSETUP: Update pt-PT translation.
  + Sync IDS_USER_ADMINISTRATOR_NAME and IDS_ADMINISTRATOR_NAME (in samsrv).
2021-11-24 01:57:11 +01:00
Doug Lyons
0f05abec82 [NTVDM] Add otya128's WineVDM integration code into ReactOS (#4113)
This is an interim solution until a more integrated solution with NTVDM is developed.
CORE-17852
2021-11-23 23:50:05 +01:00
Denis Malikov
db810d8e44 [WIN32SS:NTUSER] Fix window state after restoring snapped window (#4119)
InternalPos.NormalRect is a key data for detecting whether a window was snapped.
Keeping it after restore affecting next snap actions.

CORE-16477
2021-11-23 23:34:03 +01:00
Hermès Bélusca-Maïto
6a4ca215ab [NTVDM] Log the command line used when starting NTVDM. 2021-11-22 03:10:14 +01:00
Doug Lyons
b538b9abb8 [WIN32K] Fix 'use after free' in NtGdiStretchDIBitsInternal (#4122)
CORE-17861
2021-11-22 02:57:36 +01:00
Hermès Bélusca-Maïto
f766ca5e42 [SMSS] Use NULL for NULL pointers. 2021-11-22 00:16:32 +01:00
Hermès Bélusca-Maïto
c17aeec031 [CSRSRV] Update the status.h file with updated information. 2021-11-22 00:13:35 +01:00
Hermès Bélusca-Maïto
7353af1e3d [NTDLL:CSR][CSRSRV] Start to deprecate CSR functions removed on Windows 2003.
The server-side CsrSrvIdentifyAlertableThread and CsrSrvSetPriorityClass
functions are completely removed in Win2k3+, and are since stubbed by
CsrSrvUnusedFunction instead. They however were present up to Windows XP,
albeit with an extremely minimal implementation.

The corresponding client-side CsrIdentifyAlertableThread and CsrSetPriorityClass
now become just stubs that either trivially succeed or fail, respectively.

See https://www.geoffchappell.com/studies/windows/win32/csrsrv/api/srvinit/apidispatch.htm
for more information.

- Fix typo "al*T*ertable" --> "alertable".
- Remove ROS-specific CSRSS_IDENTIFY_ALERTABLE_THREAD that was
  deprecated since ages (at least before 2005)!
2021-11-22 00:13:34 +01:00
Hermès Bélusca-Maïto
d575e828d7 [NTDLL_APITEST] Test that NtQueryInformationProcess(ProcessWx86Information) can work without a ReturnLength pointer. 2021-11-22 00:13:33 +01:00
Thomas Faber
88e3ef5fa0 [NTOS:SE] Don't assert on levels that don't allow impersonation. 2021-11-21 17:19:03 -05:00
Eric Kohl
3e5dcf7937 [NTOS:EX] Fix version specific return value for NtSetSystemInformation:SystemFlagsInformation 2021-11-21 21:42:04 +01:00
Serge Gautherie
de33036766 [RICHED20] select_style(): Check font_cache too
Already upstreamed as wine-6.21-347-g177f808.

CORE-17843
2021-11-21 13:07:59 -05:00
Thomas Faber
d84022d7fd [NTOS:SE] Fix always-true assert in SeTokenCanImpersonate.
Courtesy of VS analysis warning C6289:
Incorrect operator:  mutual exclusion over || is always a non-zero constant.  Did you intend to use && instead?
2021-11-21 12:57:50 -05:00
Thomas Faber
0af3689c2e [REACTOS] Fix traces with missing arguments.
Courtesy of VS Code Analysis warning C6064:
Missing integer argument to 'DbgPrint' that corresponds to conversion specifier 'N'.
2021-11-21 12:57:35 -05:00
Thomas Faber
a7b2703479 [NTOS] Fix broken SAL annotations on MmDereferenceSegmentWithLock. 2021-11-21 12:47:46 -05:00
Thomas Faber
2e76fb9fe1 [NTOS:IO] Use a guarded region in IopQueueIrpToThread.
We're protecting against IopCompleteRequest, which is a special
kernel APC. So this is a little bit faster than raising the IRQL.
2021-11-20 14:58:51 -05:00
Serge Gautherie
8d10682307 [CONFIGURE] Add support for 'Visual Studio 2022, v17.x'
CORE-17733
2021-11-20 12:14:32 +03:00
Julio Carchi
9c4397afdf [USER32] GetQueueStatus() should not return 0 when passing QS_ALLINPUT flag that includes QS_RAWINPUT (#4115)
GTK applications call GetQueueStatus(QS_ALLINPUT), where QS_ALLINPUT
specifies the QS_RAWINPUT flag as well, when these are compiled for
Windows XP+, and they expect the call to succeed on this platform.

On one side, ReactOS does not currently support this flag at all, but
since it claims to be XP/2003-compatible, applications may implicitly
expect the flag to be supported by GetQueueStatus() and the function
*NOT* failing when this flag is set.
(Later GTK apps don't care and just call GetQueueStatus(QS_ALLINPUT)
that includes QS_RAWINPUT, and therefore would fail as well on e.g.
Windows 2000...)

Otherwise, an observable effect is that some versions of libgdk-win32-2.0.0.dll
enter into an infinite loop when calling GetQueueStatus(QS_ALLINPUT),
since this call always failed on ReactOS.

On the other side, however, we should honour our winetests that handle
the presence of the QS_RAWINPUT flag and behave differently accordingly.
But since we do not support QS_RAWINPUT yet, we should keep their old
behaviour where QS_RAWINPUT is unused.

Thus, in order to accomodate both sides, we don't fail the GetQueueStatus()
call, but just set the ERROR_INVALID_FLAGS last error and continue it.


This fixes CORE-15686, CORE-17551 and probably CORE-11850.
Fixes also all user32:TrackMouseEvent tests.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2021-11-20 00:45:35 +01:00
Hermès Bélusca-Maïto
7c8c9e1aba [WINSPOOL] QS_SENDMESSAGE|QS_ALLEVENTS == QS_ALLINPUT, so use the latter instead. 2021-11-19 21:13:26 +01:00
Hermès Bélusca-Maïto
d78a5b6dbf [PSDK] Sort out the QS_*** definitions. Add the Win7+ QS_TOUCH and QS_POINTER.
In particular, define the compound QS_MOUSE, QS_INPUT, QS_ALLEVENTS
and QS_ALLINPUT flags based on the other elementary QS_*** flags,
instead of having magic values for these.
2021-11-19 18:23:57 +01:00
Serge Gautherie
48d1ecc4df [PSDK] Unduplicate QS_RAWINPUT (#4116)
Addendum to a7bf412a (r38925).
2021-11-19 17:56:44 +01:00
George Bișoc
009f2c3917 [CODEOWNERS] Add myself as maintainer for Security Manager
From now on I'll take care of this subsystem of the kernel.
2021-11-19 12:01:19 +01:00
Hermès Bélusca-Maïto
2b31977838 [FREELDR] Add RegCloseKey() and use it where registry keys need to be closed.
Actually, RegCloseKey() is here a dummy macro that just "returns"
success. Indeed, the internal implementation of RegOpenKey() doesn't
really allocate internal structures: it just returns a "pointer" to
already existing allocated data. Therefore nothing needs to be closed/freed
later on.
2021-11-19 03:55:21 +01:00
Hermès Bélusca-Maïto
60d4a34892 [FREELDR] Switch to RtlZeroMemory() from memset(). 2021-11-19 02:22:20 +01:00
Hermès Bélusca-Maïto
497fee1622 [FREELDR] Don't hardcode buffer size. 2021-11-19 02:22:18 +01:00
Hermès Bélusca-Maïto
5cad040726 [FDEBUG] Switch to ZeroMemory() from memset(). 2021-11-19 02:22:15 +01:00
Serge Gautherie
c5e5e3117c [FREELDR] Diverse improvements and fixes for CORE-12802. (#3466)
- Move a few lines around.
- Switch to RtlZeroMemory() from memset().
- Make while() more explicit.

For CORE-12802:
- Add/Fix FrLdrHeapAlloc() failure handling and related.
  Especially, add/fix FrLdrHeapFree() calls.

- Add/Improve ERR() to some FrLdrHeapAlloc() failure cases.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2021-11-19 01:49:55 +01:00
Serge Gautherie
0a6750da12 [CRT] stdio/file.c: Import 3 Wine one-liner fixes (#4101)
* [FORMATTING][CRT] stdio/file.c: Reduce diff with Wine.

* [CRT] _wfreopen(): Fix TRACE() format modifier
Import wine-1.4-rc3 f8b29a0 by Eric Pouech.

* [CRT] msvcrt_init_io(): Ignore inherited FDs with invalid handles
Import wine-6.2-32-g611742d by Paul Gofman,
except test part, which shall be WineSync separately.

* [CRT] _dup2(): Fix clearing NOINHERIT flag
Import wine-6.20-44-g1420d28 by Piotr Caban.
2021-11-18 23:23:12 +01:00
Scott Maday
83335d3a81 [SHELL32] Control panel context menu semantic bugfix (#4078) 2021-11-18 22:41:53 +01:00
Hermès Bélusca-Maïto
712f469671 [NTOS:EX] Clarify the situation with the SystemPathInformation class. (#4065)
Since NT 3.51, this information class is trivially implemented.
The path to the NT directory is now stored in KUSER_SHARED_DATA
as the NtSystemRoot member.
Windows Checked builds show the following message and break to
the debugger before failing the function as not implemented:

EX: SystemPathInformation now available via SharedUserData

See https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/ex/sysinfo/query.htm
and https://www.geoffchappell.com/studies/windows/km/ntoskrnl/inc/api/ntexapi_x/kuser_shared_data/index.htm
for more information.
2021-11-18 22:37:54 +01:00
Hermès Bélusca-Maïto
1200561fcc [NTOS:EX] NtQuerySystemInformation: Use same parameter names as documentation. FStatus --> Status. (#4064) 2021-11-18 22:36:07 +01:00
Hermès Bélusca-Maïto
d484a68ccb [NDK][NTOS:EX] Add/fix SAL annotations for Nt/ZwSetSystemInformation + last parameter type. (#4064) 2021-11-18 22:36:07 +01:00
Hermès Bélusca-Maïto
7692a620e7 [NDK][NTOS:EX] Minor formatting. 2021-11-18 22:36:06 +01:00
Chan Chilung
d2382e78ef [BOOTDATA] Update some time zones for East Europe (#4029)
- Remove Minsk from GMT+02:00 (is now GMT+03:00)
- Change description for all GMT+02:00 time zones
- Add Turkey time GMT+03:00

CORE-12025
2021-11-18 13:26:06 +03:00
Katayama Hirofumi MZ
0f5fb4785b [SHELL32] Drop a shortcut of the drive (#4072)
- If the Right-dropped item was a drive, then get the display name of the drive and use it.
- Use FAILED_UNEXPECTEDLY instead of FAILED macro.
- Accept ::{GUID}.
CORE-17813
2021-11-18 17:11:24 +09:00
Stanislav Motylkov
f8010947fe [GITHUB] Applications, CPL, and rosapps modules are building for ARM now
Also add debug and release builds. Addendum to c1538a82 and 1f44552d.

CORE-17517 CORE-17604
2021-11-17 19:18:18 +03:00
Sergey Valentei
84ed4a79dc [HHPCOMP] Check return value when calling chdir (#4073)
Signed-off-by: Sergey Valentei <ihsinme@gmail.com>
2021-11-17 14:28:12 +03:00
Justin Miller
51ce0c5150 [CRT] Add setjmp for the arm64 architecture (#4088)
CORE-17622 CORE-17518
2021-11-17 14:24:07 +03:00
Konrad Dybcio
b5e57a8523 [SDK][CMAKE] config.cmake: Add ARM64 compiler options (#4050)
Add generic compiler options for ARM64.

Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2021-11-17 14:18:06 +03:00
Stanislav Motylkov
3eb4f4d450 [THEMES][LUNAR] Fix line endings problem 2021-11-17 14:12:02 +03:00
Nikki Next
577fb37a8a [THEMES][LUNAR] Add Russian translation (#4100) 2021-11-17 13:58:56 +03:00
Dmitry Borisov
84fabd819d [ISAPNP] Add support for NEC PC-98 series 2021-11-17 13:56:29 +03:00
George Bișoc
f909e8762d [NTOS:SE] Validate the SID lengths when capturing them
SIDs are variadic by nature which means their lengths can vary in a given amount of time and certain factors that allow for this happen. This also especially can lead to issues when capturing SIDs and attributes because SeCaptureSidAndAttributesArray might end up overwriting the buffer during the time it's been called.

Therefore when we're copying the SIDs, validate their lengths. In addition to that, update the documentation header accordingly and add some debug prints in code.
2021-11-16 10:55:44 +01:00
Thomas Faber
4601d94801 [DBGHELP] Fix default search path handling. CORE-17073
* Allow NULL search path in SymSetSearchPath
* Use . instead of concrete current directory
* Use _NT_ALT_SYMBOL_PATH variable
* Add some tests
2021-11-15 20:14:34 -05:00
Mark Jansen
ab7b004d51 [FONTEXT] Fix font installation 2021-11-15 20:02:14 +01:00
Mark Jansen
54c09f856c [FONTEXT] Simplify HIDA usage 2021-11-15 20:02:14 +01:00
Mark Jansen
fa0f5cc4be [SHELL32] Simplify HIDA usage 2021-11-15 20:02:14 +01:00
Mark Jansen
eb0c005c1b [SENDMAIL] Simplify HIDA usage 2021-11-15 20:02:13 +01:00
Mark Jansen
eba16dc9e9 [MYDOCS] Simplify HIDA usage 2021-11-15 20:02:13 +01:00
Mark Jansen
e5ea6041c9 [SHELL32][SHELL32_APITEST] Add SHGetAttributesFromDataObject 2021-11-15 20:02:13 +01:00
Mark Jansen
1f44552d36 [DRWTSN32] Implement arm context reading
CORE-17605 CORE-17604
2021-11-15 19:57:35 +01:00
Joachim Henze
f028ca5b08 [WIN32K] Fix a weird control character in dibobj.c CreateDIBPalette() CORE-17848 2021-11-15 03:05:20 +01:00
Thomas Faber
68c9ac2a82 [RICHED20_WINETEST] Re-enable crashing test. CORE-16799 2021-11-14 20:22:34 -05:00
Thomas Faber
be38a2ca4e [SETUP] Register riched20.dll's type library during setup. CORE-16799
This is a bit of a hack -- I'm not sure how Windows deals with this.
2021-11-14 20:22:05 -05:00
Thomas Faber
c8b6abab80 [RICHED20] Decorate thiscall functions as such. ROSTESTS-375 CORE-17021 2021-11-14 12:54:01 -05:00
Thomas Faber
e8b79e89eb [NTOS:PS] Fix copypasta in NtQueryInformationJobObject. CID 1441354 2021-11-13 21:23:40 -05:00
Thomas Faber
34f2b7830d [NTOS:IO] Correctly deal with exceptions when handling FileFsDriverPathInformation. CID 1476847 2021-11-13 21:23:39 -05:00
Thomas Faber
a74ff5be17 [NTOS:IO] Don't call IopCompleteRequest with uninitialized context values. CID 716761
NormalContext and NormalRoutine are just for good measure, but
SystemArgument2 is actually used by the function.
And yes, this appears to be a bug in Win 2003.
2021-11-13 21:23:39 -05:00
Thomas Faber
8254585be5 [NTOS:EX] Assert some AcquireResource return values. CID 1321882 2021-11-13 21:23:39 -05:00
Thomas Faber
aa9a098196 [NTOS:EX] Correctly handle OOM in NtFindAtom. CID 1237072 2021-11-13 21:23:36 -05:00
Thomas Faber
7be3e798d5 [BOOTDATA] Include VMXNET3 driver in optional. 2021-11-13 13:34:50 -05:00
Doug Lyons
252a7530d0 [CRT] Do Not lock ioinfo when spawning functions (#4099) CORE-15176
This fixes CORE-15176 'Gimp 2.6.11 hangs when opening a file'.
It regressed by 0.4.9-dev-446-g bffd8201d0

I do intend to port this fix back.
2021-11-11 18:30:43 +01:00
Mark Jansen
0ae3805375 [COMCTL32] Fix crash on SB_GETPARTS
wParam (num_parts) is allowed to be bigger than the actual amount of parts
CORE-17842
2021-11-10 17:29:35 +01:00
George Bișoc
39003dd408 [ADVAPI32] Properly implement CreateRestrictedToken
Instead of duplicating the token and masquerade it as if the token was filtered (which is a big hack), properly implement CreateRestrictedToken function by calling NtFilterToken which it'll create a restricted token for us.
2021-11-07 14:22:20 +01:00
George Bișoc
aaa2094208 [KMTESTS:SE] Implement SeFilterToken testcase 2021-11-07 14:14:19 +01:00
George Bișoc
6fe1b387c6 [NTDLL_APITEST] Implement NtFilterToken testcase 2021-11-07 14:14:18 +01:00
George Bișoc
53db5377e2 [NTOS:SE] Implement token filtering
This implements the support of token filtering within the kernel, where the kernel can create restricted tokens of regular ones on demand by the caller. The implementation can be accessed thorough a NT syscall, NtFilterToken, and a kernel mode routine, SeFilterToken.
2021-11-07 14:14:18 +01:00
George Bișoc
a15e2472b8 [SDK][NDK][XDK] Add the privilege flags needed for token filtering
These are needed for CreateRestrictedToken, NtFilterToken and SeFilterToken respectively. See the link down below for more information.
https://docs.microsoft.com/en-us/windows/win32/api/securitybaseapi/nf-securitybaseapi-createrestrictedtoken
2021-11-07 14:14:18 +01:00
George Bișoc
d0b6b10868 [SDK][NDK] Declare the NtFilterToken syscall prototype 2021-11-07 14:14:14 +01:00
Hervé Poussineau
b39ae9f32b [HALX86] Implement HalBuildScatterGatherList
Make HalGetScatterGatherList a wrapper around it.
2021-11-07 14:07:57 +01:00
Hervé Poussineau
eb283043d5 [HALX86] Partly implement HalCalculateScatterGatherListSize 2021-11-07 14:07:55 +01:00
George Bișoc
05d52aba2b [NTOS:SE] Partially revert 0129de2
The continue statements do not server any useful purpose in these loops so they're basically pointless. These have been introduced by mistake so my bad.
2021-11-05 10:13:45 +01:00
Serge Gautherie
8110a66b08 [NTOS:MM] MI_IS_*(): Improve documentation
Intel 64 and IA-32 Architectures Software Developer’s Manual
version 075 (June 2021)
2021-11-04 23:20:21 +03:00
Serge Gautherie
94b8095ba2 [NTOS:KE] KiTrap0EHandler(): Use MI_IS_WRITE_ACCESS() 2021-11-04 23:20:21 +03:00
George Bișoc
0129de218b [NTOS:SE] Mark the token as no longer belonging to admin group upon effective duplication
A scenario where it happens that an access token belongs to an administrators group but it's disabled (that is, SeAliasAdminsSid has no attributes or it doesn't have SE_GROUP_ENABLED turn ON), the function removes this group from the token but still has TOKEN_HAS_ADMIN_GROUP flag which can lead to erratic behavior across the kernel and security modules -- implying that the token still belongs to administrators group.

This is an oversight from my part.
2021-11-04 09:30:00 +01:00
Doug Lyons
17ec81eab8 [SHELL32] Enable OpenWith to handle "NoOpenWith" and "NoStartPage" registry keys (#4043)
- Add registry handling of two keys to COpenWithMenu.cpp
- Add code to stop OpenWith from using registry entries that should be excluded
- Stop logspam when right-click menu testing for OpenWith is done

CORE-17816
2021-11-03 03:16:47 +03:00
Hervé Poussineau
22d1e7a4e4 [NTOS:IO] Create non volatile registry keys for root devices (as for other devices) 2021-11-01 18:16:25 +01:00
Hervé Poussineau
9967d9aa4c [NTOS:IO] Do not crash when calling IopLegacyResourceAllocation with NULL ResourceRequirements 2021-11-01 18:16:25 +01:00
Hervé Poussineau
88839d9726 [HALX86] Stub-implement scatter/gather DMA operations
These are required when we ask for a DMA_ADAPTER version 2.
2021-11-01 18:16:25 +01:00
Katayama Hirofumi MZ
3d78601f39 [WIN32SS][NTUSER] Implement NtUserDestroyInputContext (#4063)
CORE-11700
2021-11-01 15:20:42 +09:00
Mark Jansen
e3402aca65 [ATL][ATL_APITEST] Add test for CPath +small fixes 2021-10-30 22:47:57 +02:00
Hervé Poussineau
06fc9c43ed [PARTMGR] Mark partitions as removable if device is removable
CORE-17392
2021-10-30 08:47:38 +02:00
Thomas Faber
3a323c3de0 [WIN32K] Fix uninitialized bResult in IntExtTextOutW.
Powered by clang-cl.
2021-10-29 22:06:49 -04:00
Thomas Faber
4bc95812fd [WIN32K] Mark default as unreachable.
Powered by clang-cl.
2021-10-29 22:06:49 -04:00
Thomas Faber
3235e35dee [WIN32K] Remove unnecessary if in NtUserGetGUIThreadInfo.
This condition is already checked above.
Powered by clang-cl.
2021-10-29 22:06:49 -04:00
Thomas Faber
42657493ef [WIN32K] Fix uninitialized hNewMenu use in MENU_DoNextMenu.
See also: Wine's implementation.
Powered by clang-cl.
2021-10-29 22:06:46 -04:00
Efe Itietie
0e75fc9240 [NETSTAT] Fix coverity #1477187 "Double free" (#4069)
Within the current ShowTcpTable function logic, tcpTable would be freed twice.
The bug was introduced in b695971c.

Remove the second tcpTable free and fix coverity #1477187. CORE-17831
2021-10-28 17:26:09 +03:00
Thomas Faber
f4ccc518e3 [CODEOWNERS] Don't automatically add me to apitests and CMake PRs.
Still feel free to request my review explicitly if desired.
2021-10-27 19:27:33 -04:00
Thomas Faber
fb3e2c7c8b [USBUHCI] Fix always-false HcFlavor checks.
Powered by clang-cl.
2021-10-27 19:27:33 -04:00
Thomas Faber
555eec0306 [USBEHCI] Avoid uninitialized return status in EHCI_ReopenEndpoint.
Powered by clang-cl.
2021-10-27 19:27:33 -04:00
Thomas Faber
e7574ee5e8 [USBPORT] Don't use NTAPI for variadic function.
Powered by clang-cl.
2021-10-27 19:27:33 -04:00
Thomas Faber
4be3bc682d [SACDRV] Fix uninitialized variable usage.
Powered by clang-cl.
2021-10-27 19:27:32 -04:00
Thomas Faber
4eb45209ea [NDIS] Allow timer initialization at DISPATCH_LEVEL.
Spotted by Mortal Wombat.
2021-10-27 19:27:27 -04:00
Katayama Hirofumi MZ
8ebe441d1a [MSHTML] Disable DDEEXEC settings of image files (#4074)
CORE-10227
2021-10-27 08:42:31 +09:00
Katayama Hirofumi MZ
5b74737532 [IMM32] Forward ImmSetHotKey to USER32.CliImmSetHotKey (#4075)
- Modify imm32.spec.
CORE-11700
2021-10-27 08:40:15 +09:00
Victor Perevertkin
8ca4b0f257 [CMAKE] Remove __inline substitutions
All supported compilers can do C99 now, this is not needed anymore.
2021-10-26 22:51:03 +03:00
Efe Itietie
c73c86419e [USBUHCI] Fix wrong sizeof access (#4070)
Reviewed-by: Victor Perevertkin <victor.perevertkin@reactos.org>
Reviewed-by: Thomas Faber <thomas.faber@reactos.org>
2021-10-26 17:10:51 +03:00
Efe Itietie
feae6fbc64 [USBEHCI] Fix coverity #1476930 "Wrong sizeOf access" (#4070)
Reviewed-by: Victor Perevertkin <victor.perevertkin@reactos.org>
Reviewed-by: Thomas Faber <thomas.faber@reactos.org>
2021-10-26 17:10:51 +03:00
Doug Lyons
a91f5e8e4d [UDFS] Fix crash on boot in release builds with UDFS removable media inserted (#4061) CORE-17598
Changes to specific files and their effects are as follows:
create.cpp - Allows booting past second stage with UDFS media inserted without BSOD
close.cpp - Allows shutdown without hang
dircntrl.cpp - Allows New Hardware Wizard not to hang on initial third phase install
2021-10-25 22:21:43 +02:00
Hervé Poussineau
cd48bc7af8 [LIVECD] Add more registry entries for vbemp/vgamp
CORE-17579
2021-10-25 21:44:45 +02:00
Eric Kohl
da4e15f93a [IPHLPAPI] Check the family parameter in the statistics functions 2021-10-25 00:36:03 +02:00
Stanislav Motylkov
cdcd954734 [BOOTDATA] hivesys.inf: Add Russian translation for keyboard layouts
[INPUT.CPL] Fix some mistakes in Russian translation
2021-10-25 00:46:08 +03:00
Stanislav Motylkov
c6e002bfb3 [BOOTDATA] hivesys.inf: Fix keyboard layout identifier for Bengali Inscript
- Also fix typo in Latvian (QWERTY) keyboard layout
- Also add missing localization for Bengali Inscript and Esperanto layouts
2021-10-25 00:44:18 +03:00
Stanislav Motylkov
4b88a8709c [BOOTDATA] Fix another hivesys.inf typo introduced in 8e521934 (ICELANDIC)
Addendum to 6ce259e6.
2021-10-24 23:46:42 +03:00
Stanislav Motylkov
9635f45bd4 [SYSSETUP][INTL.CPL] Use GetGeoInfoW with current thread locale
Fixes inconsistency when thread locale differs from system or user locale.
2021-10-24 23:42:14 +03:00
Stanislav Motylkov
4278f46620 [KERNEL32][WINNLS] GetGeoInfoW: Allow to get localized text
Previous implementation ignored the last LangId parameter,
and always used GetUserDefaultLCID() instead.
2021-10-24 23:42:06 +03:00
Eric Kohl
1b35626d54 [IPHLPAPI] GetInterfaceInfo(): Add "\DEVICE\TCPIP_"-Prefix to interface names 2021-10-24 16:52:18 +02:00
Stanislav Motylkov
6ce259e694 [BOOTDATA] Fix problem in PORTUGESE_BRAZILIAN strings in hivesys.inf
Regressed in 2017 with r74654 (commit hash 8e521934).
2021-10-24 16:52:53 +03:00
Katayama Hirofumi MZ
067ca884bc [SHELL32_APITEST] Strengthen ShellHook testcase for fullscreen (#4051)
- Add tests for HSHELL_RUDEAPPACTIVATED.
CORE-16130
2021-10-24 09:19:23 +09:00
Stanislav Motylkov
6d09885ce4 [SYSSETUP] Fill in missing locale, location, and default keyboard layout
- Implement functions to get regional data from system
- Disable setup window and buttons when control panel applet is started
- Update regional information when control panel applet is closed
- Add a horizontal separator between user locale and keyboard layout
2021-10-24 00:12:18 +03:00
Stanislav Motylkov
17cb1e1a04 [SYSSETUP] Add placeholders for IDC_LOCALETEXT and IDC_LAYOUTTEXT
The window initialization handler code should update these properly,
but for now just put empty strings there until it's implemented.

This makes reviewing dialog layout easier in visual resource editors
like Resource Hacker and others, so the translation maintenance takes
much less time.

We already use this technique in some other modules like sysdm and zipfldr.

Spotted by Can Taşan. Fix suggested by Thomas Faber.

Additionally:
- Fix position of some elements to avoid overlapping
- Fix some headers according to the latest coding style
2021-10-24 00:12:18 +03:00
Katayama Hirofumi MZ
6417b2323d [NTUSER][USER32] Workaround tracking menu on CORE-17338 (#4048)
This prevents the tracking menu from erroneously closing itself right after it was opened in some cases.
Fixes CORE-17338 which got unhidden by 0.4.15-dev-1126-g 58b0558f94
And fixes CORE-15760 which got unhidden by SVN r74972 == git 19dd22d422

Since both symptoms look very similar but the unhiding revisions did differ,
that could mean we do have some kind of race condition here.
I guess this fix is more like a workaround. I do intend to port it back nevertheless.
2021-10-23 22:29:39 +02:00
George Bișoc
fdb4205061 [NTOS:SE] Minor cleanup on SepDuplicateToken
The current code that searches for the primary group of token upon duplication is OK as is, remove whatever rest that's no longer needed.
2021-10-23 17:55:12 +02:00
Oleg Dubinskiy
334ab0f2a5 [KERNEL32] Implement SetFileCompletionNotificationModes
Call native Nt* function to do the actual work, similarly to as it done in Wine: 530c183960:/dlls/kernel32/file.c#l258.
Also add/fix some declarations in internal kernel32/public ndk neaders, to fix compilation.
CORE-17821
2021-10-23 16:19:22 +02:00
George Bișoc
fe0415a4ba [NTDLL_APITEST] Free the allocated memory block when we're done
This fixes a memory leak where we allocate a buffer for token statistics with RtlAllocateHeap routine but we never free it afterwards.
2021-10-23 09:58:50 +02:00
Baruch Rutman
a1faa1cc6d [OSK] On Screen Keyboard overhaul
Primary changes:
Convert from dialog to an ordinary window, placing buttons according to data in keyboard.c
Character button text is now according to selected keyboard layout instead of system language.
Buttons will update* automatically when there is a layout switch (and when shift/capslock are pressed).
(Updating is most reliable when the keyboard is focused)
Removed keyboard dialog templates from resource files, they live on in keyboard.c

Secondary changes:
Support for font change, currently saved in registry is facename and height.
Additional registry load/save functions for strings to facilitate above change.
2021-10-23 09:45:46 +02:00
Katayama Hirofumi MZ
9455defbd3 [IMM32] Remove old code of Imm32StrToUInt and Imm32UIntToStr
CORE-11700
2021-10-23 12:13:19 +09:00
Hermès Bélusca-Maïto
5891ab2bfd [WIN32SS:NTUSER] Make sure to hold User Global Lock before manipulating desktops. (#4053) 2021-10-22 21:44:56 +02:00
Hermès Bélusca-Maïto
6b7b0f0c7e [WIN32SS:NTUSER] Few formatting fixes. 2021-10-22 21:44:52 +02:00
Justin Miller
be223b9de7 [SDK] Allow ARM64 MSVC to complete configuration (#4045)
- Add some of the missing CMake adjustments to continue the configure and compile process with ARM64 MSVC
- Created quick stubs for the functions in SDK needed to finish the configuration process
- Put in an ARM64 option for spec2def

CORE-17518 CORE-17615
2021-10-22 18:52:32 +03:00
Serge Gautherie
4b0249e98a [GITHUB] build.yml: Update LLVM version to 13 (#4054) 2021-10-22 18:17:06 +03:00
Eric Kohl
1ade494a70 [ADVAPI32] Fix several corner cases in RegOpenKey* functions
This fixes the remaining RegOpenKey* tests.
2021-10-21 14:45:56 +02:00
Katayama Hirofumi MZ
a37d9a4e14 [IMM32] Rewrite ImmInstallIMEW (#4044)
- Add Imm32StrToUInt and Imm32UIntToStr helper functions.
- Add Imm32LoadImeVerInfo, Imm32GetRegImes, Imm32WriteRegIme, Imm32GetNextHKL, Imm32CopyFile helper functions.
- Add REG_IME structure for registered IMEs.
- Rewrite ImmInstallIMEW function.
- Improve ImmLoadLayout and Imm32LoadImeInfo functions.
CORE-11700
2021-10-21 10:28:04 +09:00
Konrad Dybcio
d26409cc34 [SDK][MKISOFS] xconfig.h: Don't define VA_LIST_IS_ARRAY on Linux/ARM(64) (#4012)
For some bizarre reason ARM toolchains have some peculiar issues with various va_arg macros,
as this is not the first time one of these is problematic (though I don't remember the previous one,
it was a long, long time ago ™️).. They always seem to expect va_list as an argument though, so
let's make them happy and by extension make ros-tools compile on Linux/ARM(64) compile again!
2021-10-20 22:12:23 +03:00
Katayama Hirofumi MZ
396b49436c [IMM32_APITEST] Fix himc testcase crash (#4036)
- Add NULL checks for pIC.
CORE-11700
2021-10-20 20:23:38 +09:00
James Tabor
be8e5fc7b3 [User32-winetest] Remove ReactOS to do.
N0 longer needed.
2021-10-19 18:49:52 -05:00
James Tabor
83f86b8fdb [User32] Fix incorrect check.
Use Lo Word instead of Intersource check.
Fix wine user32 tests.
2021-10-19 15:29:51 -05:00
Katayama Hirofumi MZ
037c744eb1 [EXPLORER] Send WM_POPUPSYSTEMMENU asynchronously (#4047)
- Delete useless SendMessageTimeout:WM_NULL call.
- Add useful SendMessageCallbackW:WM_POPUPSYSTEMMENU call.
- In the callback function of SendMessageCallbackW, do PostMessageW:WM_NULL to properly handle the popup menu.
CORE-16353
2021-10-19 07:17:01 +09:00
Hervé Poussineau
46fbc6f432 [NTOS:PNP] Fix crash when removing a device without resources
This fixes commit 89fd2b86e4
2021-10-18 22:23:49 +02:00
Katayama Hirofumi MZ
aa8fc872a0 [IMM32][IMM32_WINETEST] Re-implement ImmSetCompositionStringA/W (#4040)
- Modify ImmSetCompositionStringA and ImmSetCompositionStringW prototypes (removing const of two arguments).
- Add Imm32OpenICAndCS helper function.
- Implement Imm32SetCompositionStringAW function.
- Modify imm32_winetest (due to removal of const).
CORE-11700
2021-10-17 19:32:48 +09:00
James Tabor
e98684ed8b [GDI32] Fix rectangle flag issues.
Fix CORE-17815. Remove dumb dumb code breakers.
2021-10-16 11:16:43 -05:00
Stanislav Motylkov
b3b1bd66a0 [CONFIGURE][CMAKE] Add support for MSVC ARM64 target
Addendum to e4feaa1a and 51e2ab52. CORE-17518
2021-10-16 16:30:36 +03:00
Konrad Dybcio
b7c1b95b45 [SDK] gcc.cmake: Only add -mstackrealign on i386 (#4016)
This option is only useful for the i386 architecture and breaks ARM builds.

Reviewed-by: Victor Perevertkin <victor.perevertkin@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2021-10-16 11:58:08 +03:00
Katayama Hirofumi MZ
ea4c1a067b [SETUP][REACTOS] Improve Japanese translation (#4033)
Improve the Japanese GUI of ReactOS Setup.
2021-10-16 07:51:40 +09:00
Konrad Dybcio
30c7c161fc [SDK] host-tools.cmake: Allow cross-compilation from aarch64 (#4013)
Some compilers call it 'arm64', while others prefer 'aarch64'. It's a big mess,
thanks Arm Ltd...

Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Reviewed-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2021-10-16 01:38:33 +03:00
Konrad Dybcio
dff479c82f [HHPCOMP] lz_nonslide.h: Define u_char on Linux (#4011)
Not defining the type breaks the compilation on (at least arm) Linux. Add a check for Linux-as-build-host to make it pass.

Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2021-10-16 01:30:22 +03:00
Katayama Hirofumi MZ
04cb13bc57 [IMM32] Refactor about reconversion (#4031)
- Delete Imm32ReconvertSize and Imm32ConvertReconvert helper functions.
- Add Imm32ReconvertAnsiFromWide and Imm32ReconvertWideFromAnsi helper functions.
CORE-11700
2021-10-15 22:46:58 +09:00
Katayama Hirofumi MZ
fec35dc893 [IMM32] Improve IchWideFromAnsi and IchAnsiFromWide (#4028)
- Use LONG instead of DWORD for indexing and counting the characters.
- Use the sign for the loop condition.
- Add NUL check.
CORE-11700
2021-10-15 10:31:08 +09:00
Hervé Poussineau
89fd2b86e4 [NTOS:PNP] HACK: release resources when device is removed
CORE-17789
2021-10-14 23:39:31 +02:00
Hervé Poussineau
49358f3416 [NTOS:PNP] Fix resource conflict detection
Only resources of HAL were checked against conflicts, not those of PnP Manager

Let IoReportResourceForDetection() make a silent conflict check.
Otherwise IopCheckResourceDescriptor() will always return 'no conflict'.

CORE-17789
2021-10-14 23:39:31 +02:00
Hervé Poussineau
ea8cbbd4ca [VIDEOPRT] Correctly return failure in IRP_MJ_CREATE when HwInitialize fails
CORE-17789
2021-10-14 23:39:31 +02:00
Hervé Poussineau
807af6a4d1 [VIDEOPRT] Correctly return failure when adapter can't be found
This was wrong in both call chains (PNP case or legacy case)
HwFindAdapter returns a VP_STATUS, while we were expecting a NTSTATUS.

CORE-17789
2021-10-14 23:39:31 +02:00
Hervé Poussineau
87b74f2901 [VIDEOPRT] Correctly report legacy resources in IRP_MN_FILTER_RESOURCE_REQUIREMENTS
It was broken since first commit 25eae4b916 (r54237)

CORE-17789
2021-10-14 23:39:31 +02:00
Hervé Poussineau
951dc66c66 [VGAMP] Correctly check and report legacy resources (VGA I/O ports and memory)
As we are a non PNP driver, the call chain will be
DriverEntry -> VidePortInitialize -> VideoPortFindAdapter -> HwFindAdapter.

If legacy resources are available, we will fail VGAFindAdapter,
so DriverEntry will fail, so vgamp.sys driver won't be used.

CORE-17789
2021-10-14 23:39:30 +02:00
Hervé Poussineau
6dd94572e5 [VBEMP] Correctly report legacy resources (VGA I/O ports and memory)
CORE-17789
2021-10-14 23:39:30 +02:00
Hervé Poussineau
3379de3924 [VBEMP] Fail HwInitialize (ie IRP_MJ_CREATE) when /NOVESA switch is present
In that case, we want a simple VGA driver to drive the graphic adapter.

CORE-17789
2021-10-14 23:39:30 +02:00
Hervé Poussineau
ac13f37d0a [ISAPNP] Generate a name for PDO, as required 2021-10-14 23:39:30 +02:00
Hervé Poussineau
a86c3794a6 [NTOS:IO] Remove final NULL char of PDO name before writing to registry
Otherwise, if a PDO has no name (bad!), you'll see two "(Default)" entries
in HKLM\HARDWARE\RESOURCEMAP\PnP Manager\PnpManager
2021-10-14 23:39:30 +02:00
Hervé Poussineau
500f00de6a [DEVMGR] Display current assigned resources, instead of boot resources 2021-10-14 23:39:30 +02:00
Doug Lyons
cee171f5d2 [SHELL32] Bypass OpenWith for Delete and F2 (Rename) Keys (#4032) CORE-17810
Logspam started during 0.4.9-dev'ing when zipfldr got committed, logspam became much worse by
0.4.10-dev-599-g 932df378bf
But the actual bug of 'calling those functions when not needed' is much older than that.

I do intend to port this improvement back into older rls-branches.
2021-10-14 23:03:53 +02:00
Victor Perevertkin
55f1f3000a [CMAKE] Remove /fallback compile flag from clang-cl builds
This option is not needed anymore and was removed from LLVM 13
2021-10-14 20:30:27 +03:00
James Tabor
63e7d6c29e [Win32K] Fix typo
Fix a GERRRR typo.
2021-10-14 09:59:53 -05:00
Katayama Hirofumi MZ
6e356a9b6c [NOTEPAD] Improve Japanese translation 2021-10-14 13:08:38 +09:00
Katayama Hirofumi MZ
bfb7bd05a4 [IMM32] Re-implement ImmGetCompositionStringA/W (#4026)
- Re-implement ImmGetCompositionStringA and ImmGetCompositionStringW functions.
- Add Imm32CompStrAnsiToWide, Imm32CompStrWideToAnsi, Imm32CompAttrWideToAnsi, Imm32CompAttrAnsiToWide, Imm32CompClauseAnsiToWide, and Imm32CompClauseWideToAnsi helper functions.
CORE-11700
2021-10-14 08:07:06 +09:00
Mark Jansen
143b2a5035 [RAPPS] Speed up installed application loading
Only load in details when we are going to display them
2021-10-13 19:27:40 +02:00
Wu Haotian
0ed04e3640 [TASKMGR] Make performance graph grid scroll (#3581)
The grids are now rolling along with performance graphs.
2021-10-13 19:14:29 +03:00
Wu Haotian
a4ab9a1e19 [TASKMGR] Formatting only (#3581) 2021-10-13 19:14:20 +03:00
Victor Perevertkin
43f1d91687 [NTOS:PNP] Fix resource conflict detection
Previous code did not detect equal resource ranges as conflicting.
Thanks Hervé Poussineau for pointing this out!

Meanwhile, simplify the code to make it more readable.
2021-10-13 00:00:25 +03:00
Chan Chilung
025f58a051 [NOTEPAD] Fix access key for "New Window" menu item (#4024) 2021-10-12 15:34:34 +03:00
Katayama Hirofumi MZ
d14d3dedcb [IMM32] Move Imm(Get|Set)CompositionStringA/W (#4021)
- Add new file compstr.c.
- Move ImmGetCompositionStringA, ImmGetCompositionStringW, ImmSetCompositionStringA, and ImmSetCompositionStringW functions into compstr.c.
- Half-implement ImmGetCompositionStringA/W.
CORE-11700
2021-10-12 13:10:01 +09:00
Chan Chilung
570cedf176 [SETUPLIB][INPUT.CPL] Move zh-MO to ChineseTraditionalFonts group (#4010)
- The use of Traditional Chinese character is far more than Simplified one according to Wikipedia
- The code page used on zh-MO is 950, which is Traditional Chinese's one
- zh-MO is described as Traditional Chinese here: https://support.microsoft.com/en-us/windows/microsoft-traditional-chinese-ime-ef596ca5-aff7-4272-b34b-0ac7c2631a38#ID0EBBD=Microsoft_ChangJie/Quick
2021-10-11 16:24:21 +03:00
Serge Gautherie
51e2ab52af [CMAKE] msvc.cmake: Add arm64 CMAKE_ASM_MASM_COMPILER option support
CORE-17518
2021-10-11 15:24:30 +03:00
Serge Gautherie
e4feaa1a69 [CMAKE] CMakeLists.txt: Add arm64 to ARCH allowed values
CORE-17518
2021-10-11 15:20:34 +03:00
Katayama Hirofumi MZ
9078e34f3c [SHELL32] Don't smartass-renaming on LNK files (#4020)
Renaming .LNK files had a bug that the selection won't include the extension-like filename part.
CORE-17807
2021-10-11 13:33:43 +09:00
Konrad Dybcio
3c36cde874 [SDK] config.cmake: Fix generic mtune flag (#4017) 2021-10-11 03:46:12 +03:00
Robert Naumann
38b9688d45 [IERNONCE] Add German translation 2021-10-11 00:08:19 +02:00
Robert Naumann
4e5301d09f [INETCPL] Update German translation 2021-10-11 00:07:39 +02:00
Joachim Henze
f1d4a83bf7 [NOTEPAD] Properly fix accelerator issue in es-ES.rc CORE-17809
In 0.4.14-dev-1321-g d6e0fe78e7
we introduced the following compiler warning for MSVC2010 release build:

reactos/base/applications/notepad/lang/es-ES.rc(12) : warning RC4204 : ASCII character not equivalent to virtual key code

That warning was muted without investing too much love by
0.4.15-dev-2469-g d0bb775774

Today we apply the proper fix that brings us back in sync with other languages.
I do intend to port the proper fix back to 0.4.14RC as well.
2021-10-10 21:29:05 +02:00
William Kent
6ac25e6f7f [SHELL32] Add missing SS_NOPREFIX to labels in About dialog (#3969)
Signed-off-by: William Kent <wjk011@gmail.com>
2021-10-10 21:50:18 +03:00
Stanislav Motylkov
048f2b80da [MODEMUI] Fix unrecognized escape sequence. Addendum to 05c39d8d. 2021-10-10 17:08:01 +03:00
Süleyman Poyraz
05c39d8d62 [TRANSLATION] Update Turkish (tr-TR) translations (#3958)
Reviewed-by: Can Taşan <ctasan99@hotmail.com>
Signed-off-by: Süleyman Poyraz <zaryob.dev@gmail.com>
2021-10-10 16:00:12 +03:00
Chan Chilung
463784c5f1 [TRANSLATION] Chinese Traditional (zh-TW) translation update (#3954)
Also sync LOCALMON/UI translation with Wine.
2021-10-10 15:00:44 +03:00
Katayama Hirofumi MZ
e30b0a356d [RICHED20_WINETEST] Fix build about __thiscall redefinition
See 5a9535e694
2021-10-10 13:57:32 +09:00
Thomas Faber
5a9535e694 [RICHED20_WINETEST] Restore Wine sync in txtsrv.c. ROSTESTS-355
In particular, add the missed diff in ITextHostImpl_TxGetCharFormat.
2021-10-09 20:44:26 -04:00
Chan Chilung
da4d0545eb [BOOTDATA] readme.txt: Trivial correction (#4014)
Follow up of #3469 - replace "Seven" with "7" to keep Microsoft's official naming.
2021-10-09 15:44:09 +03:00
Joachim Henze
c99e5a2810 [ZIPFLDR] Update de-DE.rc 2021-10-09 14:40:48 +02:00
Katayama Hirofumi MZ
264a128f03 [IMM32] Rewrite ImmRequestMessageA/W (#4002)
- Re-implement ImmRequestMessageA and ImmRequestMessageW functions.
- Add IchWideFromAnsi, IchAnsiFromWide, Imm32RequestError, Imm32ReconvertSize, Imm32ConvertReconvert, and Imm32ProcessRequest helper functions.
CORE-11700
2021-10-09 07:40:56 +09:00
Adam Stachowicz
4e9c898363 [ZIPFLDR] Update Polish (pl-PL) translation (#4007) 2021-10-08 20:00:30 +03:00
Oleg Dubinskiy
6ef7b67615 Revert "[DSOUND] Don't force status to failure by default in primarybuffer_SetFormat (#3911)"
Revert my last dsound fix, because it does not fix the actual problem with audio formats support. It only makes the situation worse. It prevents the error when creating an audio stream, but the sound is not playing correctly, both in ReactOS and Windows (with our dsound.dll). Without this fix, it works perfectly on Windows, but does not in ROS.
In particular, the sound is not playing properly in AIMP 4.71 with other audio formats besides default (44100 Hz, 16 bit, stereo). And any other apps which request these audio formats may be also affected as well.
Force the status back to failure, because otherwise the badly required code is not executed at all.
I've made a more correct fix(es) in other audio component(s) instead and will submit them if further PRs.

This reverts commit 183566ee58.

CORE-10907
2021-10-07 23:44:30 +03:00
Rafał Mikrut
782bf0e3dc [TSCLIENT] Fix code F12 array index (#4006) 2021-10-07 23:08:03 +03:00
Rafał Mikrut
54d5ad7533 [NTOS:KE] Fix copy paste bug in exception helper routine for ARM (#4005) 2021-10-07 23:04:19 +03:00
Stanislav Motylkov
7e3a7a0e84 [ZIPFLDR] Show error when compression method is not supported
CORE-17255
2021-10-07 14:54:47 +03:00
Katayama Hirofumi MZ
5da934e34d [SHELL32] Don't smartass-renaming on folders (#3993)
Selection on renaming folders shouldn't select the extension-like part of filename.
CORE-17793
2021-10-07 08:16:35 +09:00
Joachim Henze
db7295f864 [ZIPFLDR] Update de-DE.rc in context of CORE-17796 2021-10-06 20:17:13 +02:00
Stanislav Motylkov
e27acff649 [ZIPFLDR] Improve error reporting
- Restore status text on failure
- Show errors on folder and file creation failures
- Allow to retry extraction attempt

CORE-17796
2021-10-06 14:38:25 +03:00
Stanislav Motylkov
fd441aaae7 [ZIPFLDR] Refactor extraction function
Add separate function for a single file extraction.

CORE-17796
2021-10-06 14:36:48 +03:00
Katayama Hirofumi MZ
e6fd41d078 [IMM32] Implement ImmSystemHandler (#3998)
- Implement ImmSystemHandler function.
- Add Imm32UnknownProcess1 and Imm32SendChange helper functions.
CORE-11700
2021-10-05 21:31:53 +09:00
Katayama Hirofumi MZ
4f006ec74b [IMM32] Add IMP stub functions (#3989)
- Add IMP (Input Method Profiler) stub functions (ImmIMPGetIMEA/W, ImmIMPQueryIMEA/W, ImmIMPSetIMEA/W).
- Add ImmSendIMEMessageExA/W stub functions.
- Rename nt3.c as win3.c.
The prototypes can be obtained from: https://doxygen.reactos.org/dc/d20/winnls32_8h.html .
The Japanese article of IMP is available: http://www7a.biglobe.ne.jp/~tsuneoka/win32tech/7.html
CORE-11700
2021-10-05 14:07:58 +09:00
Katayama Hirofumi MZ
b0d66e68c1 [IMM32] s/4/sizeof(DWORD)/
CORE-11700
2021-10-05 07:57:14 +09:00
Robert Naumann
6b5ffa7a79 [RAPPS] Update German translation 2021-10-04 18:48:47 +02:00
Katayama Hirofumi MZ
afec737142 [IMM32_APITEST] Add ImmGetImeInfoEx testcase (#3988)
CORE-11700
2021-10-04 07:35:00 +09:00
Katayama Hirofumi MZ
66ef31494e [IMM32] Implement ImmActivateLayout (#3987)
- Add IME_STATE and IME_SUBSTATE structures.
- Modify INPUTCONTEXTDX structure.
- Implement ImmActivateLayout function.
- Improve ImmDestroyContext function by using newly-defined Imm32FreeImeStates.
- Add Imm32FetchImeState, Imm32FetchImeSubState, Imm32LoadImeStateSentence, Imm32SaveImeStateSentence, and Imm32SelectLayout helper functions.
- Modify NtUserSetThreadLayoutHandles prototype.
CORE-11700
2021-10-04 07:33:15 +09:00
Hervé Poussineau
7fdf078134 [UNIATA] Better split of model name between Vendor and Product
UNIATA is converting IDE identify data into SCSI identify data.
However, IDE model is described with a unique field of 20 chars,
while SCSI model is described with 2 fields of 16 + 8 chars.
When displaying SCSI model, a space is added between vendor and product
fields.

Try to split model into vendor and product on a space if possible.

CORE-17400
2021-10-03 23:09:55 +02:00
Mark Jansen
9bdeaca56e [RAPPS] Speed up app loading by caching the INI sections 2021-10-03 20:26:25 +02:00
Mark Jansen
6f9dd96dcf [RAPPS] Cleanup 2021-10-03 20:26:19 +02:00
Mark Jansen
22e58e68aa [SHELL32] Fix uninitialized variable usage.
This fixes log spam about NM_CUSTOMDRAW not being handled
2021-10-01 17:40:01 +02:00
Katayama Hirofumi MZ
f5bbd57d73 [IMM32] GetKeyboardLayout's parameter is a thread id
s/dwLayout/dwThreadId/
CORE-11700
2021-10-01 03:13:52 +09:00
Katayama Hirofumi MZ
e6a51b54c4 [IMM32] Move ImmFreeLayout from ime.c to imm.c
CORE-11700
2021-10-01 03:10:26 +09:00
Katayama Hirofumi MZ
33affbfecb [IMM32] Rewrite ImmGetImeMenuItemsA/W (#3983)
- Rewrite ImmGetImeMenuItemsA and ImmGetImeMenuItemsW functions.
- Add Imm32GetImeMenuItemsAW, Imm32IsImcAnsi, Imm32ImeMenuAnsiToWide and Imm32ImeMenuWideToAnsi helper functions.
- Make IME module's ImeGetImeMenuItems function optional.
CORE-11700
2021-10-01 03:04:00 +09:00
Katayama Hirofumi MZ
9adc538c9c [IMM32] Rewrite ImmSetActiveContext (#3982)
- Re-implement ImmSetActiveContext function.
- Modify NtUserNotifyIMEStatus prototype.
- Improve ImmSetConversionStatus and ImmSetOpenStatus functions.
CORE-11700
2021-10-01 03:02:56 +09:00
Hervé Poussineau
fc5d8e466f Revert "Disable some C++ code, which doesn't compile for me"
This reverts commit d8b1ff9056.
2021-09-29 22:58:31 +02:00
Hervé Poussineau
d8b1ff9056 Disable some C++ code, which doesn't compile for me 2021-09-29 22:56:35 +02:00
Hervé Poussineau
92d0dd3633 [VIDEOPRT] Create and setup new registry key only for non-legacy drivers
CORE-17734
2021-09-29 22:56:35 +02:00
He Yang
4d0cc20681 [IERNONCE] [RUNONCEEX] Add RunOnceEx functionality for ReactOS (#3926)
* [IERNONCE] Implement the registry management code.

* [EXPLORER] handle RunOnceEx by invoking RunOnceEx in iernonce.dll

* [IERNONCE] Display a dialog to show progress, and execute entries.

* [IERNONCE] Add `InitCallback` function
2021-09-29 11:30:32 +02:00
James Tabor
b5fae844de [NtGDI] Fix brush attribute transfer. 2021-09-28 19:08:45 -05:00
Katayama Hirofumi MZ
ef003fa47d [IMM32] Rewrite ImmAssociateContext (#3979)
CORE-11700
2021-09-28 22:03:25 +09:00
Katayama Hirofumi MZ
a3c841f8e2 [IMM32] Implement ImmFreeLayout (#3978)
- Implement ImmFreeLayout function.
- Add Imm32ReleaseIME helper function.
CORE-11700
2021-09-28 22:02:30 +09:00
James Tabor
c6d1646c9d [ApiTests|GDI] Add test for attribute changes to Bitmaps.
Only opporpate place to add this test.
2021-09-27 23:52:00 -05:00
James Tabor
72f115d6ed [NtGDI] Set owner after changing object type. 2021-09-27 23:49:35 -05:00
James Tabor
d9f8b8b033 [NtGDI] Fix leaking of bitmaps while testing INFO DC's.
Soon to be commit test for metafiles.

ret = MaskBlt(hdc, 0, 0, 3, 4, dib_hdc, 0, 0, mask_bitmap, 0, 0, SRCCOPY);
2021-09-27 23:11:33 -05:00
James Tabor
8767aada75 [GDI32] Fix IV msvc build. 2021-09-27 19:08:43 -05:00
James Tabor
be4540821a [GDI32] Fix III msvc build. 2021-09-27 18:19:49 -05:00
Hermès Bélusca-Maïto
e6306db0c3 [GDI32] Fix build errors~~ 2021-09-28 00:48:24 +02:00
James Tabor
d4b2c97b67 [GDI32] Fix msvc build errors. 2021-09-27 17:30:40 -05:00
James Tabor
fc16259faf [GDI32] Update Wine Metafile Code
Sync/Port: Metafile code from wine.

Patches by Jacek Caban, Daniel Lehman, Zhiyi Zhang. Gabriel Ivancescu, Michael Stefaniuc, Francois Gouget, Nikolay Sivov Dmitry Timoshkov, Andrew EiKum, Piotr Caban and Alexandre Julliard.

This commit is dedicated to George Bisoc!
2021-09-27 16:18:20 -05:00
George Bișoc
9c1c88de3e [NTOS:SE] Define a name macro for the threshold value
Instead of having this magic value as is, describe it within a macro for readability purposes.
2021-09-27 09:39:23 +02:00
George Bișoc
199f575342 [NTOS:SE] Check the privilege count against the maximum threshold
In SeCaptureLuidAndAttributesArray we must ensure that we don't go onto a potential integer overflow scenario by checking against the maximum limit threshold the kernel states. In addition, write an explicit name macro for the value.
2021-09-27 09:37:28 +02:00
Katayama Hirofumi MZ
a415bd46b1 [IMM32] Trivial tiny improvements
CORE-11700
2021-09-27 09:37:14 +09:00
Katayama Hirofumi MZ
b3382d8d24 [IMM32] Rewrite ImmLockIMC (#3975)
- Add Imm32InitContext and Imm32LockIMCEx helper functions.
- Re-implement ImmLockIMC function.
- Modify CLIENTIMC and INPUTCONTEXTDX structures.
CORE-11700
2021-09-27 09:32:24 +09:00
Katayama Hirofumi MZ
be9a788f8b [IMM32] Improve Imm32CleanupContext and ImmLockClientImc (#3974)
- Improve Imm32CleanupContext and ImmLockClientImc functions.
- Add ValidateHandleNoErr and Imm32CheckImcProcess helper functions.
CORE-11700
2021-09-27 09:31:16 +09:00
Hermès Bélusca-Maïto
31c4c2efe9 [USER32] GetUserObjectSecurity/SetUserObjectSecurity: Just use UserSetLastNTError() in failure path. 2021-09-26 19:04:08 +02:00
Hermès Bélusca-Maïto
acde1e0e7b [IMAGESOFT] Fix build. Addendum to commit 516c8829. 2021-09-26 03:50:13 +02:00
Hermès Bélusca-Maïto
9462350a92 [NTOS:RAWFS] LE JOKE! - Commit 7716bddd (r24564) claimed to "actually create the \\Device names so that user-mode can even talk to it", yet didn't bother to do that!
Certainly due to copy-pasta error from the original code.

A consequence of this oversight, was that the IoGetDeviceObjectPointer()
calls on these device names, in fltmgr!DriverEntry() couldn't work.
(See drivers/filters/fltmgr/Interface.c, line 1880 and below.)
2021-09-26 03:02:58 +02:00
Hermès Bélusca-Maïto
5ccd45ea58 [NTOS:RAWFS] Delete the previously-created devices in case the IoCreateDevice() calls fail. 2021-09-26 03:02:57 +02:00
Hermès Bélusca-Maïto
38ce67162f [FS_REC] Fix load-lock acquisition. 2021-09-26 03:02:56 +02:00
Hermès Bélusca-Maïto
618076dc47 [FS_REC] Register a recognizer for FAT filesystem on CD-ROMs.
This handles the \FatCdrom device, supported by MS fastfat.
2021-09-26 03:02:56 +02:00
Hermès Bélusca-Maïto
00ae7c52f9 [IMAGESOFT] Reorganize the bitmap resource IDs.
- Moving the IDB_* with their corresponding TBICON_* defines.
- Reordering the BITMAP resources in the same order the defines are defined.
- Fixing values for IDS_READY and IDS_TOOLBAR_TEXT.
2021-09-26 02:43:02 +02:00
Hermès Bélusca-Maïto
516c8829ea [IMAGESOFT] Use ARRAYSIZE / un-hardcode some sizeof(TYPE) where applicable. 2021-09-26 02:38:37 +02:00
Hermès Bélusca-Maïto
67fd29cae0 [IMAGESOFT] Commit db416e39 made toolbar imagelists creating failing because we overcounted the number of toolbar button bitmaps.
Indeed the count was based on the number of elements in TBBUTTON arrays;
however for some of the toolbars, extra entries corresponding to
separators are present, and thus the resulting number of elements is
always larger than the number of actual buttons for which an image is
associated. Passing this (larger) count to the InitImageList() function
therefore made image insertion fail after a certain point.

Now we pass an exact number of *images* instead.
2021-09-26 02:26:42 +02:00
James Tabor
970344bd16 [Win32SS|GDI] Implement seldom used API and update types for local DC's.
Two working in house application require these API. Known as FolCOL and Reach.
2021-09-25 11:57:26 -05:00
Arjav Garg
a602bc3550 [NTUSER] Fix UserSendKeyboardInput() KEYEVENTF_SCANCODE use case (CORE-17144) 2021-09-25 09:56:12 -04:00
Hermès Bélusca-Maïto
74513a75ab [NTOS:OB] Minor refactoring.
- NtQuerySymbolicLinkObject(): Use an intermediate variable for the object header.
- Simplify code in ObpLookupEntryDirectory() by calling ObpReleaseLookupContextObject() instead.
- Use TAG_OBJECT_TYPE instead of hardcoded tag values.
2021-09-25 01:09:01 +02:00
Hermès Bélusca-Maïto
4c63ed5a7a [NTOS:OB] Clarify and fix the usage of the Obp*DirectoryLock*() and ObpReleaseLookupContextObject() functions.
- Disentangle the usage of ObpAcquireDirectoryLockExclusive() when it's
  used only for accessing a directory structure, or as part of a lookup
  operation.

  The Obp*DirectoryLock*() -- both shared and exclusive -- functions
  are only for locking an OB directory, for reading or writing its
  structure members.

  When performing lookup operations (insertions/deletions of entries
  within a directory), use a ObpAcquireLookupContextLock() function that
  exclusively locks the directory and saves extra lock state, that can
  be used by ObpReleaseLookupContextObject() for cleanup.

- Add documentation for these functions.
2021-09-25 00:47:43 +02:00
George Bișoc
19cdb521d2 [NTOS:OB] Acquire the lock before setting directory's session ID 2021-09-24 19:49:40 +02:00
George Bișoc
0b4763f1b1 [NTOS:SE] Do not set SE_DACL_PRESENT flag that early
The function might assign the flag yet it could possibly fail on creating a DACL and insert an "access allowed" right to the access entry within the DACL. In this case, make sure we actually succeeded on all the tasks and THEN assign the flag that the DACL is truly present.

Also, make sure that the Current buffer size variable gets its new size so that we avoid overidding the memory of the DACL if the security descriptor wants both a DACL and SACL and so that happens that the DACL memory gets overwritten by the SACL.
2021-09-24 19:39:30 +02:00
George Bișoc
f341b9080b [NTOS:SE] Set the SACL to the World security descriptor
Implement the portion chunk of code that is responsible for setting the system access control list (SACL) to the World security descriptor, based from SeWorldSid (World security identifier).
2021-09-24 19:13:16 +02:00
Katayama Hirofumi MZ
ca3fa7197d [IMM32] Use Imm32IsImmMode and Imm32IsCiceroMode macros (#3971)
- Define Imm32IsImmMode, Imm32IsCiceroMode and Imm32Is16BitMode macros in "precomp.h".
- Improve Imm32InquireIme and Imm32CleanupContext functions.
- Add IME_SYSINFO_WINLOGON and IME_SYSINFO_WOW16 macros (from DDK) in psdk/imm.h.
- Modify CtfImeInquireExW and CtfImeSelectEx prototype.
CORE-11700
2021-09-24 22:06:29 +09:00
Victor Perevertkin
e372f2b19b [REACTOS] Remove PowerPC Open Firmware-related code
Was forgotten during the overall PowerPC support removal.
Addendum to 6ef6fabfc5
2021-09-24 04:13:08 +03:00
Serge Gautherie
6e894bc1c7 [IPHLPAPI] GetAdaptersInfo(): Update Wine registry key name (#3556) 2021-09-24 03:49:05 +03:00
Serge Gautherie
acbe74497f [PSDK] wincodec.idl: Add GUIDs which exist on WDK 7.1 (#3628) 2021-09-24 03:24:05 +03:00
George Bișoc
32db51fcff [NTDLL_APITEST] Implement NtAdjustGroupsToken API tests 2021-09-23 17:38:42 +02:00
George Bișoc
8e6fc7a5f5 [NTOS:SE] Implement token groups adjusting 2021-09-23 17:38:31 +02:00
Katayama Hirofumi MZ
7b622283ee [IMM32_APITEST] himc: Use ok rather than ok_int (#3970)
Use ok macro rather than ok_int macro. CORE-11700
2021-09-22 19:07:07 +09:00
Mark Jansen
4acf1007df [FONTEXT] Restore folder icon 2021-09-21 21:42:32 +02:00
Mark Jansen
9276b3f1bf [SHELL32] CFSFolder: Add fallback for failing shell extension
CORE-17673
2021-09-21 21:42:25 +02:00
Mark Jansen
ad83af36dd [RAPPS] Move the CConfigParser to a new file 2021-09-21 19:00:21 +02:00
George Bișoc
982ee872dd [NTOS:SE] Privileges adjusting private routine must be paged
SepAdjustPrivileges is a private helper call that must be paged, alongside with its syscall -- NtAdjustPrivilegesToken.
2021-09-21 17:40:53 +02:00
Katayama Hirofumi MZ
d6a0299eec [IMM32_APITEST] Add himc testcase (#3965)
Add himc testcase. CORE-11700
2021-09-21 12:26:43 +09:00
Katayama Hirofumi MZ
e0da6437a1 [IMM32] Define ImeDpi_IsUnicode macro and use it (#3964)
- Define ImeDpi_IsUnicode macro in precomp.h.
- Use it.
CORE-11700
2021-09-21 12:20:10 +09:00
Joachim Henze
222acf5a3e [NTUSER] Scrollbar.c, Avoid potential out-of-bounds-accesses in co_IntSetScrollInfo() CORE-17777
This is an addendum to
0.4.15-dev-3174-g dda9c3979e CORE-17769 and
0.4.15-dev-3147-g 3bf7e3ac13 CORE-17754 CORE-17755

We have not seen this happening in real-life yet, but some code-fragments within co_IntSetScrollInfo()
e.g. line 628 if (nBar == SB_CTL) do clearly indicate that nBar can be 2 (SB_CTL).
Some lines below we definitely must not access those 4 static arrays out of bounds then via nBar as access index!

Ftr with a bit of grepping I also found some calls like NtUserSetScrollInfo(Wnd, SB_CTL, &Info, FALSE);
e.g: in win32ss/user/user32/controls/scrollbar.c so I am pretty sure nBar == 2 can happen in practice within co_IntSetScrollInfo().

I question whether any of those reads/writes to those static arrays (or the comparisons) would make any sense on index 2,
so we should aim to eliminate them altogether in the future.
2021-09-20 03:05:05 +02:00
Joachim Henze
dda9c3979e [NTUSER] Scrollbar.c, improve co_IntSetScrollInfo() CORE-17769
Fixes CORE-17769 'Rapps Listview manual resize may erroneously not draw the triangles sometimes'
This could happen for both: themed and unthemed.

CORE-17769 was a regression introduced by 0.4.14-dev-1134-g 00adb1a3f9

We don't really like the added state in form of the static variables,
but the patch works good from a pure testing-perspective.

Many Thanks to the patches author: Doug Lyons
2021-09-19 22:35:37 +02:00
Thomas Faber
40ee59d609 [LIBXML2] Update to version 2.9.12. CORE-17766 2021-09-18 21:42:26 -04:00
Hermès Bélusca-Maïto
271556e6f8 [WIN32SS] Disable by default the dumping function. Addendum to 69f90508. 2021-09-19 00:46:56 +02:00
Hermès Bélusca-Maïto
69f905081c [WIN32SS:NTUSER] Move the keyboard layout debugging code to a separate dump function.
And fix its obvious bugs, e.g. not checking for possible NULL pointers
for the optional keyboard layout sub-tables...
2021-09-19 00:18:04 +02:00
Hermès Bélusca-Maïto
e34a799f0c [BOOTDATA] Fix "DllName" casing. 2021-09-19 00:17:05 +02:00
Hermès Bélusca-Maïto
5f8a10f32b [BROWSEUI] CAutoComplete::OnAutoCompStart(): Wait on the thread only when there is a handle.
Avoids spamming
(ntoskrnl\ob\obwait.c:441) Failed to reference the handle with status 0xc0000008

CAutoComplete::FinishCompletion(): Remove two useless 'if (m_pThread || !m_hThread)'
tests: No need to check these after each code instruction...
2021-09-19 00:17:05 +02:00
Hermès Bélusca-Maïto
ffc4febb0c [BROWSEUI] Fix early error handling, to be taken only when ParseNow() is run (and fixes "Use of uninitialized variable hr" RTC error).
Addendum to commit d8e47d61.
2021-09-19 00:17:04 +02:00
Hermès Bélusca-Maïto
6072ee9766 [BROWSEUI] Minor formatting. 2021-09-19 00:17:03 +02:00
Katayama Hirofumi MZ
5b522667a6 [IMM32] Define Imm32HeapFree macro and use it (#3962)
- Define Imm32HeapFree macro in precomp.h and use it.
- Omit some NULL checks (for HeapFree).
CORE-11700
2021-09-19 01:52:05 +09:00
Katayama Hirofumi MZ
df6fff78bb [IMM32] Rewrite ImmAssociateContextEx (#3961)
- Rewrite ImmAssociateContextEx function.
- Modify NtUserAssociateInputContext prototype.
CORE-11700
2021-09-16 19:29:49 +09:00
Katayama Hirofumi MZ
afb6c8a129 [IMM32] Rewrite ImmEscapeA/W (#3959)
- Rewrite ImmEscapeA and ImmEscapeW functions.
- Delete useless legacy code.
CORE-11700
2021-09-16 19:27:43 +09:00
Victor Perevertkin
f17c2c0db9 [GITHUB] Use 64bit LLVM for both 32bit and 64bit clang-cl builds 2021-09-14 17:58:23 +03:00
Victor Perevertkin
62d1a2c884 [CMAKE] Fixes for clang-cl build
- User lib.exe instead of llvm-lib due to incompatibility
- Avoid wrapping resource compiler with cmcldeps
- Fix several conditional flags
2021-09-14 17:58:23 +03:00
Victor Perevertkin
d74eb54b06 [WIN32SS:GDI] Add a sanity assert 2021-09-14 17:58:23 +03:00
Victor Perevertkin
655ddfa8e2 [KERNEL32] FindFirstFileExW: fix syscall buffer alignment
NtQueryDirectoryFile required the FileInformation buffer to be
ULONG-aligned. Declare the aligned buffer explicitly.
2021-09-14 17:58:22 +03:00
Victor Perevertkin
4e389a992d [CMAKE] Fix invalid usage of list()
list() functions expects numerical indices for modification operations
and silently converts everything else to a number (old behaviour).

CMake 3.21 now checks this and throws a warning
2021-09-14 17:58:22 +03:00
Victor Perevertkin
8e1fa03456 [CMAKE] Replace custom scripts in compilerflags with standard ones
- add_target_link_flags changed to target_link_options
- add_target_property changed to set_property(... APPEND ...)
2021-09-14 17:56:22 +03:00
Katayama Hirofumi MZ
233c74e25a [IMM32] Undefine IMS_... constants
CORE-11700
2021-09-14 09:47:51 +09:00
Katayama Hirofumi MZ
791fbde496 [SDK][INCLUDE] Remove period (.) from comment 'Non SDK DCE types.' in undocuser.h 2021-09-13 13:56:30 +09:00
Katayama Hirofumi MZ
dc9c5826be [IMM32] Rewrite ImmConfigureIMEA/W (#3956)
- Rewrite ImmConfigureIMEA and ImmConfigureIMEW functions.
- Add IMS_... macros for WM_IME_SYSTEM message, into <undocuser.h>.
- Delete useless strdupAtoW and strdupWtoA inline functions.
CORE-11700
2021-09-13 12:47:15 +09:00
Hermès Bélusca-Maïto
158a479a4e [TRANSLATION] Replace '\r\n' by '\n' from displayed strings, when possible. 2021-09-13 03:52:23 +02:00
Hermès Bélusca-Maïto
9393fc320e [FORMATTING] Remove trailing whitespace. Addendum to 34593d93.
Excluded: 3rd-party code (incl. wine) and most of the win32ss.
2021-09-13 03:52:22 +02:00
Hermès Bélusca-Maïto
bbabe2489e [FORMATTING][TRANSLATION] Remove trailing whitespace. Addendum to 34593d93.
Excluded: 3rd-party code (incl. wine).
2021-09-13 03:52:21 +02:00
Hermès Bélusca-Maïto
290e5c9933 [TRANSLATION] Fix instances of strings with trailing whitespace before newlines. 2021-09-13 03:52:20 +02:00
Hermès Bélusca-Maïto
9b1edceae1 [REACTOS] Fix some instances of DPRINTs with trailing whitespace before newlines. 2021-09-13 03:52:19 +02:00
Hermès Bélusca-Maïto
d6c8fe7c37 [REGEDIT] Fix "tr-TR.rc:68: unrecognized escape sequence" error. 2021-09-13 03:52:18 +02:00
Eric Kohl
d389a5d10c [KBDHID] Fix returned Status for IOCTL_KEYBOARD_QUERY_*
Addendum to 6249d5ede31ee6ba81f8b0cde94f5c8f875fd9a.
2021-09-12 23:36:18 +02:00
Doug Lyons
3bf7e3ac13 [NTUSER] Improve Themed Scrollbars by Minimizing Updates (#3953)
This fixes regressions CORE-17754 and CORE-17755 which regressed by
0.4.15-dev-3086-g 236649c626
2021-09-12 22:54:46 +02:00
Hermès Bélusca-Maïto
6e9ff14e26 [NTOS:KD64,KE] IRQL is automatically adjusted during calls to KdEnterDebugger() and KdExitDebugger(). (#3942)
Addendum to 608032bd and 835c3023.

The IRQL is actually raised by KeFreezeExecution() and lowered by
KeThawExecution(), always to HIGH_IRQL on MP systems, or if necessary
on UP. These functions are called respectively by KdEnterDebugger()
and KdExitDebugger().
2021-09-12 18:20:32 +02:00
Hermès Bélusca-Maïto
05590079cc [NTOS:KD64] First unlock the KD port then lower the IRQL, instead of doing the reverse. (#3942)
This properly reverses the operation of first raising the IRQL before
locking the KD port.
2021-09-12 18:19:59 +02:00
Hermès Bélusca-Maïto
c9f335e996 [NTOS:KD64] KdPollBreakIn(): Use the KeRestoreInterrupts() inline. 2021-09-12 18:16:13 +02:00
Thomas Faber
103a79ce4f [MBEDTLS] Update to version 2.16.11. CORE-17326 2021-09-12 10:49:55 -04:00
Thomas Faber
cbda039f4f [MBEDTLS] Update to version 2.16.10. CORE-17326 2021-09-12 10:49:55 -04:00
Thomas Faber
a01a8faa60 [MBEDTLS] Update to version 2.7.19. CORE-17252 2021-09-12 10:49:55 -04:00
Thomas Faber
2e53fc8edb [MBEDTLS] Update to version 2.7.18. CORE-17252 2021-09-12 10:49:54 -04:00
Thomas Faber
218e2596de [MBEDTLS] Update to version 2.7.17. CORE-17252 2021-09-12 10:49:47 -04:00
Eric Kohl
b6249d5ede [KBDHID] IOCTL_KEYBOARD_QUERY_ATTRIBUTES: Return proper KEYBOARD_ATTRIBUTES buffer size 2021-09-12 16:33:35 +02:00
Joachim Henze
984c7da24d [CMD] tr-TR.rc Fix compiler warning CORE-17763
GCC8.4.0 dbg warned about:
[675/1849] Building RC object base/shell/cmd/CMakeFiles/cmd.dir/cmd.rc.obj
In file included from C:/ros/reactos/base/shell/cmd/cmd.rc:87:
C:/ros/reactos/base/shell/cmd/lang/tr-TR.rc:349:61: warning: backslash and newline separated by space

I guess somebody made the checks more strict recently,
because that bug was existing for longer already without
generating any warning for me.
2021-09-12 16:17:35 +02:00
George Bișoc
fc5bc55fbb [NTOS:SE] Use the captured security descriptor when access checking
When performing access security check, use the security descriptor that we've captured it to determine based on that descriptor if the client can be granted access or not.
2021-09-12 16:07:44 +02:00
Eric Kohl
f81fb355ae [KBDHID] Implement IOCTL_KEYBOARD_QUERY_INDICATOR_TRANSLATION 2021-09-12 14:40:26 +02:00
Eric Kohl
c1de553eba KBDHID: IOCTL_KEYBOARD_QUERY_* calls must return STATUS_BUFFER_TOO_SMALL if the output buffer is too small 2021-09-12 14:33:15 +02:00
Süleyman Poyraz
53221834c5 [TRANSLATION] Add and improve Turkish (tr-TR) translation (#3561)
Reviewed-by: Can Taşan <ctasan99@hotmail.com>
Reviewed-by: Ercan Ersoy <ercanersoy@ercanersoy.net>
Signed-off-by: Süleyman Poyraz <zaryob.dev@gmail.com>
2021-09-12 00:34:11 +03:00
Timo Kreuzer
0535332a69 [FASTFAT_NEW] "Fix" Flags bitfield to avoid RTC error
Since VS 16.11 the compiler sometimes emits calls to _RTC_UninitUse, when parts of a bitfield are initialized (See https://developercommunity.visualstudio.com/t/Broken-runtime-checks-with-CL-19293013/1503629). Fix this by using an ULONG instead of a bitfield.
Note: The structure uses a 24 bit bitfield plus an UCHAR, which is supposed to form a 32 bit field, but that doesn't work anyway.
2021-09-11 18:31:50 +02:00
Thomas Faber
0a656b574e [ACPICA] Update to version 20210730. CORE-17760 2021-09-11 10:48:30 -04:00
Thomas Faber
3c2845607c [ACPICA] Update to version 20210604. CORE-17760 2021-09-11 10:48:30 -04:00
Thomas Faber
6eb8cc4979 [ACPICA] Update to version 20210331. CORE-17760 2021-09-11 10:48:29 -04:00
Thomas Faber
05926c7ac5 [ACPICA] Update to version 20210105. CORE-17760 2021-09-11 10:48:17 -04:00
Oleg Dubinskiy
183566ee58 [DSOUND] Don't force status to failure by default in primarybuffer_SetFormat (#3911)
Don't force HRESULT status to DSERR_BUFFERLOST by default in primarybuffer_SetFormat function.
Assign to it S_OK instead, as done in current Wine:
a8583acae9:/dlls/dsound/primary.c#l440

That variable is already set to failure in other appropriate place, when this is indeed needed:
https://git.reactos.org/?p=reactos.git;a=blob;h=b04a526929e4e817ff63aa652530e5901a3253a6;f=dll/directx/wine/dsound/primary.c#l511

The assigned failure status caused executing failure handling code even when the fail actually didn't happen.
In particular, DSOUND_ReopenDevice failed on waveOutOpen call when calling this was not needed.
After my changes, it's called only when needed, i. e., only when the actual failure happens
Otherwise, if all goes good, that code is not called, so the data is transfered successfully and the function is working correctly.
It fixes non-working playback in QMMP 0.11.1 (via DirectSound ouput plugin) and AIMP 3.10 and newer versions.
Also it improves the DirectSound test results from MS DxDiag: now all 4 available tests are passing successfully, instead of only 2.
Other dsound issues also might be fixed as well.

CORE-10907 CORE-14783
2021-09-11 01:58:03 +03:00
Katayama Hirofumi MZ
b4557a60a9 [IMM32] Restructure! (Retry) (#3952)
The imm.c file became big and bloated, so we split the source file. CORE-11700
- Split the IMM32 code and do formatting.
2021-09-10 23:39:15 +09:00
PopuriAO29
ce7ac73f89 [SYSSETUP] Fix en-US translation. Add en-GB translation (#3950)
The British language wasn't included here, so I have corrected some texts that were in American English.

Also fixed one string that uses British English language.
2021-09-10 14:10:25 +03:00
PopuriAO29
647ba1cb45 [DESK] Correction for English (United Kingdom) translation (#3949)
The word "personalize" should be "personalise" in British English.
2021-09-10 01:48:41 +03:00
George Bișoc
d7255f1584 [NTOS:SE] Explicitly check the auto inherit flags right away
As we now have the SEF_* flags declared within the SDK we can simply check for such flags directly wihout having to check for the hard-coded flag values.
2021-09-09 19:29:53 +02:00
George Bișoc
58c42afec2 [XDK][KMTESTS:SE] Move the auto inherit ACE flags in the right place
These bit flags are documented in CreatePrivateObjectSecurityEx API routine call in MSDN and their reasonable location should be XDK (NTIFS section more or less) and not Kernel tests suite (KMTESTs). Also assign these flags the right values.

https://docs.microsoft.com/en-us/windows/win32/api/securitybaseapi/nf-securitybaseapi-createprivateobjectsecurityex
2021-09-09 19:29:50 +02:00
Stanislav Motylkov
3f4c98a425 [ARM] Fix some compilation errors for ARM
CORE-17634 CORE-17604
2021-09-09 19:40:20 +03:00
Hermès Bélusca-Maïto
0233bb72b3 [IMM32] ValidateHwndNoErr(): Apply ReactOS-specific handle table array fixup. (#3937)
CORE-17741

This function (which should belong to the user32 helpers) depends on the
internal format of the USER handles table, that is ReactOS-specific. Its
pointer value is stored in the win32k/user32 shared info section, and
thus cannot be converted to user-space and stored back into that section.
Therefore it needs to be retrieved and manually converted when the function
is called.
2021-09-09 16:15:13 +02:00
Hermès Bélusca-Maïto
4cbc61fd02 [WIN32SS:NTUSER][USER32] NtUserProcessConnect() should return pointers in user client-space. (#3937)
- Do the kernel/server --> user/client-space pointers conversion within
  NtUserProcessConnect(), instead of having the callers of this function
  doing this job.
  This makes the behaviour Windows-compatible.

  NOTE: the gHandleEntries pointer is ReactOS-specific!

- Drop the g_ulSharedDelta global, just use instead gSharedInfo.ulSharedDelta.

- Add extra documentation aspects for NtUserProcessConnect() that are
  not yet implemented in ReactOS.
2021-09-09 16:15:12 +02:00
Hermès Bélusca-Maïto
a407cb8f10 [WIN32SS:NTUSER] Update the definition of SHAREDINFO and fix the definition of FNID_LAST. (#3937) 2021-09-09 16:15:11 +02:00
Hermès Bélusca-Maïto
103c43861b [WIN32KNT_APITEST] Add more tests for NtUserProcessConnect() (#3937)
Show that NtUserProcessConnect() should return pointers in user client-space.
2021-09-09 16:15:05 +02:00
Stanislav Motylkov
a2e9dcf0a7 [CRT_APITEST] Add tests for __i64tod/u64tod/i64tos/u64tos on ARM (#3866)
CORE-17713 CORE-17706 CORE-17604
2021-09-09 16:02:11 +03:00
Roman Masanin
9c4e3234ba [CRT/ARM] Integer to float conversion implementation (#3866)
CORE-17713 CORE-17706 CORE-17604
2021-09-09 16:02:03 +03:00
Stanislav Motylkov
6ec6233e9c [CRT_APITEST] Fix __fto64 test according to MS CRT behavior on x86 and x64
Addendum to 99ba9846. CORE-17703 CORE-17604
2021-09-09 00:56:03 +03:00
Stanislav Motylkov
83318b2c43 [CRT_APITEST] Add missing static CRT tests on ARM
Addendum to c23ce9df. CORE-17604
2021-09-08 20:10:11 +03:00
Robert Naumann
7f4158fc64 [MPR] Fix copy paste error when converting hex char to int.
Wine Commit 63737942a06183f6b2e7fa8f95a07c918c9bf29b
Original patch by Sergei Abramov. CORE-13863
2021-09-08 18:59:08 +02:00
Stanislav Motylkov
a3af97df13 [CRT_APITEST] Do not test functions that are missing on ARM
Addendum to 5f548654. ROSTESTS-374 CORE-17604
2021-09-08 19:44:56 +03:00
Roman Masanin
554bbb6bab [CRT/ARM] Floating point control functions implementation (#3870)
Implement controlfp, statusfp, fpreset, clearfp. CORE-17757 CORE-17604
2021-09-08 16:04:48 +03:00
Hermès Bélusca-Maïto
c188821f8b [SETUPLIB] Default to "ReactOS (Debug)" boot entry on debug builds, instead of "ReactOS". 2021-09-07 22:25:37 +02:00
Jose Carlos Jesus
4526848888 [TRANSLATION] Improvements to Portuguese (pt-PT) translation (#3842)
- [CALCS] Add Portuguese (pt-PT) translation
- [COMCTL32] Improve Portuguese (pt-PT) translation
- [COMDLG32] Improve Portuguese (pt-PT) translation
- [ACLUI] Improve Portuguese (pt-PT) translation
- [DEVMGR] Fix typos and improve pt-PT translation
- [SYSDM] Fix typos and improve pt-PT translation
- [CPL] Readjust objects position to fit all text

Signed-off-by: Jose Carlos Jesus <zecarlos1957@hotmail.com>
2021-09-07 19:20:18 +03:00
Gabriel Aguiar
b3a5eeb131 [TRANSLATION] Update Portuguese (pt-PT) translation (#3876)
Co-authored-by: Gabriel Aguiar <fgygh5804@gmail.com>
Reviewed-by: Joachim Henze <Joachim.Henze@reactos.org>
Reviewed-by: Jose Carlos Jesus <zecarlos1957@hotmail.com>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
Signed-off-by: Gabriel Aguiar <fgsoftwarestudio@gmail.com>
2021-09-07 16:12:01 +03:00
James Tabor
a022dc8eaf [GDI32] Fix Meta file packing recursion issues.
TextOut was looping back adding additional EMR packet to the meta file.
2021-09-06 18:37:24 -05:00
James Tabor
03516733ef [GDI32] Do not fail on path with bitmap fonts.
Patch by Dmitry Timoshkov : ExtTextOut on a path with bitmap font
selected shouldn't fail.
This just leads to empty path generated.
2021-09-06 17:53:35 -05:00
Hermès Bélusca-Maïto
4795d953c0 [NTOS:IO] Fix an ASSERT. Addendum to commit 1fd730b7. 2021-09-06 01:05:14 +02:00
Hermès Bélusca-Maïto
fe9ac14aa3 [NTOS] Move two CODE_SEG("INIT") to a better place. 2021-09-05 21:22:45 +02:00
Hermès Bélusca-Maïto
1fd730b781 [NTOS:IO] IopInitializeDriverModule(): Set the DRVO_LEGACY_DRIVER flag if the driver is not WDM. (#3749) 2021-09-05 20:31:08 +02:00
Serge Gautherie
18d15bcc8b [REACTOS] Refactor CRegKey usage (#3779)
- [MSPAINT] ReadDWORD(): Improve 'dwValue' handling
Addendum to 3185db7 (r72158).

- [DRWTSN32] Settings_GetOutputPath(): Fix 'key' handling
Addendum to 1d10606.

- [RAPPS] Remove 2 superfluous 'CRegKey::Close()' calls
Follow-up to 42e111f.
2021-09-05 20:18:23 +03:00
George Bișoc
a0bf7a05cc [NTDLL_APITEST] Write some NtDuplicateToken tests
Implement some tests for NtDuplicateToken syscall that exercises the effective only behavior when the calling thread tries to duplicate an access token but rendering it effective with enabled parts.
2021-09-05 17:01:24 +02:00
George Bișoc
c407460f6a [NTOS:SE] Implement effective token option upon duplication
This implements the EffectiveOnly option of SepDuplicateToken routine (used by NtDuplicateToken syscall and other functions alike) which makes the access token effective by removing the disabled parts like privileges and groups.
2021-09-05 17:01:21 +02:00
Mark Jansen
1105b021b3 [BOOTDATA] Update caroots.inf
* Add "Certum Trusted Root CA", "Certum EC-384 CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1707097)
* Add "ANF Secure Server Root CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1703942)
* Add "GLOBALTRUST 2020" (https://bugzilla.mozilla.org/show_bug.cgi?id=1697071)
* Add "GlobalSign Root E46", "GlobalSign Root R46" (https://bugzilla.mozilla.org/show_bug.cgi?id=1693173)
* Add "AC RAIZ FNMT-RCM SERVIDORES SEGUROS" (https://bugzilla.mozilla.org/show_bug.cgi?id=1683738)
* Add "NAVER Global Root Certification Authority" (https://bugzilla.mozilla.org/show_bug.cgi?id=1678166)
* Add "Trustwave Global ECC P384 Certification Authority", "Trustwave Global ECC P256 Certification Authority" , "Trustwave Global Certification Authority"(https://bugzilla.mozilla.org/show_bug.cgi?id=1663049)
* Add "e-Szigno Root CA 2017" (https://bugzilla.mozilla.org/show_bug.cgi?id=1645174)
* Add "Microsoft RSA Root Certificate Authority 2017", "Microsoft ECC Root Certificate Authority 2017" (https://bugzilla.mozilla.org/show_bug.cgi?id=1641716)

* Remove "LuxTrust Global Root 2" (https://bugzilla.mozilla.org/show_bug.cgi?id=1641718)
* Remove "Staat der Nederlanden Root CA - G3" (https://bugzilla.mozilla.org/show_bug.cgi?id=1687822)
* Remove "EE Certification Centre Root CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1651211)
* Remove "Trustis FPS Root CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1708307)
* Remove "Global Chambersign Root - 2008", "Chambers of Commerce Root - 2008" (https://bugzilla.mozilla.org/show_bug.cgi?id=1692094)
* Remove "Staat der Nederlanden Root CA - G2" (https://bugzilla.mozilla.org/show_bug.cgi?id=1639987)
* Remove "VeriSign Class 3 Public Primary Certification Authority - G4", "thawte Primary Root CA - G3", "thawte Primary Root CA - G2", "GeoTrust Primary Certification Authority - G3", "VeriSign Class 3 Public Primary Certification Authority - G5", "thawte Primary Root CA", "GeoTrust Primary Certification Authority", "GeoTrust Universal CA 2", "GeoTrust Universal CA", "GeoTrust Global CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1670769)
* Remove "VeriSign Universal Root Certification Authority", "GeoTrust Primary Certification Authority - G2" (https://bugzilla.mozilla.org/show_bug.cgi?id=1686854)
* Remove "OISTE WISeKey Global Root GA CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1653092)
* Remove "Taiwan GRCA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1656077)
* Remove "Sonera Class 2 Root CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1710716)
* Remove "QuoVadis Root CA" (https://bugzilla.mozilla.org/show_bug.cgi?id=1710716)
* Remove "AddTrust External Root" (https://bugzilla.mozilla.org/show_bug.cgi?id=1645199)
* Remove "Verisign Class 3 Public Primary Certification Authority - G3"

CORE-17737
ROSBE-61
2021-09-05 16:40:53 +02:00
Mark Jansen
0380684ddc [GITHUB] Automatically apply ROSTESTS label 2021-09-05 16:39:57 +02:00
Mark Jansen
821b399516 [COM_APITEST] Add mmc/certmgr tests
CORE-16429
2021-09-05 16:39:57 +02:00
Stanislav Motylkov
0de0013cec [TRANSLATION] Add and improve Russian and Ukrainian translations
[NETID]
- Add and improve Russian translation. Addendum to b9426a3f and c276681e.

[MACHINE.INF]
- Fix probably a machine translation. Addendum to 2d8274bd.
- Standardize some device names.
- Also add missing Ukrainian translation.
2021-09-05 16:22:29 +03:00
George Bișoc
a71a019c46 [NTDLL_APITEST] Implement NtAdjustPrivilegesToken testcase 2021-09-05 09:53:17 +02:00
Julen Urizar Compains
ea6e774050 [TRANSLATION] Fix minor typos and untranslated dialogs in Spanish (#3890)
- usetup: New bootsector page.
- shell32: Copy and paste, and moving elements.
  Also, some strings related to the shutdown and logoff.
- Minor Spanish grammar fix - some female words and minor latin american typos.
- First revision of the .inf, that includes the translation of the Services,
  audio, processors and other drivers and minor things.
2021-09-04 17:22:41 +03:00
Oleg Dubinskiy
d7b2280c5c [DSOUND] Improvements to DirectSound(Capture)EnumerateW (#3899)
Fix and improve DirectSoundEnumerateW and DirectSoundCaptureEnumerateW implementations in our dsound.

Use the Windows-compatible way to get the device name and pass it to callback.
- Don't use Wine-specific DSDRIVERDESC structure and DRV_QUERYDSOUNDDESC message, declared in sdk/include/dxsdk/dsdriver.h, whose are obsolete even in Wine for now.
- Instead, declare a new WAVEINCAPSW and WAVEOUTCAPSW structures (for input and output appropriately), call waveInGetDevCapsW and WaveOutGetDevCapsW for enumerated device ID and store retieved device name in these structures.
- Then pass them to a lpDSEnumCallbackW as well, without Ansi to Unicode conversion (since the retrieved string is Unicode already).
- Do this both for capture and playback functions.
- Addtionally, add MMSYSERR_BADDEVICEID status code to mmErr macro, because it also might be returned by waveIn/OutGetDevCapsW as well, in case of failure.
- And mark our dosund as forked, because it definitely will not be synced at least until we'll retarget to Vista or newer. Add an appropriate comment.

This fixes incorrect detection of DirectSound audio input and output devices, so now a lot of apps are able to detect it correctly, and can play the sound properly (e.g. AIMP 2.61 and IcyTower from RAPPS).

CORE-7535 CORE-10907 CORE-15324 CORE-15533 CORE-16340
2021-09-04 15:58:42 +03:00
Serge Gautherie
d6002f9475 [CMLIB] arm64: Define PAGE_SIZE
CORE-17518
2021-09-03 23:40:21 +03:00
Serge Gautherie
6a5472a754 [HALX86:APIC] apic.c: Use new defines some more
Follow-up to b7a149f.
2021-09-03 23:20:10 +03:00
Serge Gautherie
7f0796443b [BOOTDATA] livecd.ini: Fix 'APIC ACPI' typo
Addentum to 5ee0925.
2021-09-03 23:10:42 +03:00
Serge Gautherie
6d01afbc9d [SETUPLIB] CreateFreeLoaderReactOSEntries(): Fix 'VBoxDebug' typo
Match newer 84c2695.

Addendum to 69512e2 (r65813).
2021-09-03 23:10:42 +03:00
Doug Lyons
81358d08f0 [MSI] Fix dialog.c showing two taskbar panes on Cancel (#3861)
Only show the main dialog pane on taskbar when executing a Cancel dialog.
Assign previous window handle as a parent when creating Cancel dialog box.

CORE-17702
2021-09-03 22:54:22 +03:00
Doug Lyons
236649c626 [UXTHEME][NTUSER] Fix flashing of scrollbar when scrolling (#3868)
Based on a patch by I_Kill_Bugs.
2021-09-03 22:34:26 +03:00
Serge Gautherie
515e0cf38f [TASKMGR] Handles: Get number only, skip data 2021-09-03 22:14:07 +03:00
Katayama Hirofumi MZ
4689c8ead8 [USER32][INCLUDE] Move GetImmFileName declaration from user32.h to user32p.h
From: win32ss/user/user32/include/user32.h
To: win32ss/user/user32/include/user32p.h

CORE-11700
2021-08-31 13:42:54 +09:00
Joachim Henze
57516edb42 [WDMAUD.DRV] Improve AC97 driver from rapps by defining USE_MMIXER_LIB
By taking alternative code-paths in WdmAud and bypassing Sysaudio.
This is my 2nd attempt to commit that.

Using USE_MMIXER_LIB relies on those 2 previous patches:
0.4.15-dev-765-g b8e936a57b CORE17214 (#3148) wdmaud-racecondition-fix and
0.4.15-dev-796-g a27f0debca CORE17276 winmm:mixer-testbot-crash-fix

Defining USE_MMIXER_LIB will fix/improve:
- the test execution times of "GCCLin_x86 on Test VBox" will be dramatically improve (iirc by ~10-15min)
- CORE-8726/CORE-9986/CORE-16564 AC97 driver from rapps will work in the same session that the driver is installed, not a single reboot is needed anymore
- CORE13202 Unhandled exception from wdmaud.drv when recording sound in Scratch 1.4 leads to app-crash (gets fixed even for older builds that did not receive 0.4.15-dev-2794-g 81f8bce yet)
- CORE-13488 A deadlock in "DiabloII" character selection screen and "The Lion King II"
- CORE-9981 "DosBox + Commander Keen6" almost 100% fixed, DosBox + Commander Keen6 properly plays music instead of garbled output,
            same improvement for "ScummVM 2.0 with Monkey Island 2"

The playback is not yet *entirely* perfect, still a few hiccups now and then, but by orders of magnitude better than before.

Defining USE_MMIXER_LIB will also have some negative aspects:
- CORE-17277 crash of dsound:duplex on "GCCLin_x86 on Test VBox" gets unhidden on the bot, but was proven to be broken even beforehand already. The driver beforehand was just not found and the tests were skipped therefore.
- CORE-17278 crash of dsound:capture on "GCCLin_x86 on Test VBox" gets unhidden on the bot, but was proven to be broken even beforehand already. The driver beforehand was just not found and the tests were skipped therefore.
- It may also have a negative impact for CORE-17285 "Realtek HD Audio" but Oleg Dubinsky accepted to tolerate that and aims to approach it differently. I will resolve that as WontFix now.
2021-08-30 19:52:30 +02:00
Julio Carchi
2268b33e18 [CMAKE][BOOTDATA] Fix LiveCD does not import caroots.inf into registry CORE-17739 CORE-17735 (#3930)
It regressed by 0.4.9-dev-82-g 6158207c31

KVM https://reactos.org/testman/compare.php?ids=78729,78730 LGTM
VBox https://reactos.org/testman/compare.php?ids=78728,78731 LGTM
2021-08-30 13:07:12 +02:00
Katayama Hirofumi MZ
a8d2cd4b9d [IMM32] Rewrite ImmGetContext (#3923)
- Add ValidateHwndNoErr and Imm32GetContextEx helper functions.
- Rewrite ImmGetContext function by using the helper functions.
CORE-11700
2021-08-24 06:50:39 +09:00
Katayama Hirofumi MZ
2ab858c125 [USER32][IMM32] Improve User32InitializeImmEntryTable (#3918)
- Improve User32InitializeImmEntryTable function and related.
- Complete win32ss/user/user32/include/immtable.h table.
- Delete a hack in user32.DllMain and apply my magical tricks. This will fix some access violations in IMM32.
- Add some stubs into IMM32.
CORE-11700
2021-08-23 16:25:21 +09:00
George Bișoc
84f7bee18f [NTOS:SE] SepSinglePrivilegeCheck doesn't expect a NT status code value
Fix a wrong returned datatype of the function, as SepSinglePrivilegeCheck calls the internal private SepPrivilegeCheck function which returns a BOOLEAN value.
2021-08-22 11:31:57 +02:00
George Bișoc
8567d8145e [NTOS:SE] Annotate the remaining functions with SAL 2021-08-22 10:29:58 +02:00
George Bișoc
6413009c10 [NTOS:SE] Document the whole subsystem in Doxygen format
And update the file comment headers.
2021-08-22 10:29:47 +02:00
Katayama Hirofumi MZ
f831ec7e0a [WIN32KNT_APITEST] Add NtUserGetThreadState testcase (#3922)
CORE-17732, CORE-11700
2021-08-22 09:02:02 +09:00
Katayama Hirofumi MZ
10c9aa067f [NTUSER] Improve NtUserQueryWindow (#3915)
- Improve NtUserQueryWindow function.
- Add IMC structure.
- Modify THREADINFO structure.
CORE-11700
2021-08-21 07:31:10 +09:00
Katayama Hirofumi MZ
d78e9fbb45 [IMM32] Implement ImmWINNLSGetIMEHotkey (#3919)
- Implement ImmWINNLSGetIMEHotkey function.
- Modify imm32.spec.
CORE-11700
2021-08-21 07:24:12 +09:00
Katayama Hirofumi MZ
1d0587fc27 [IMM32] Rewrite ImmProcessKey (#3917)
- Rewrite ImmProcessKey function.
- Modify win32ss/include/imetable.h.
- Modify ImmProcessKey prototype.
CORE-1170
2021-08-21 07:22:43 +09:00
Katayama Hirofumi MZ
c59c185d1c [INCLUDE] Move WM_IME_SYSTEM from ntuser.h to undocuser.h (#3920)
CORE-11700
2021-08-19 08:18:20 +09:00
Katayama Hirofumi MZ
1f792413f0 [NTUSER][INCLUDE] s/TransMsg[1]/TransMsg[ANYSIZE_ARRAY]/
CORE-11700
2021-08-18 19:59:35 +09:00
Katayama Hirofumi MZ
d83be2e6b6 [NTUSER][INCLUDE] Trivial formatting of TRANSMSG and TRANSMSGLIST
CORE-11700
2021-08-18 19:56:47 +09:00
Katayama Hirofumi MZ
9a8049cb39 [IMM32] s/0x400/_WIN32_WINNT_NT4/
Don't use magic numbers. CORE-11700
2021-08-18 19:53:14 +09:00
Katayama Hirofumi MZ
747797fdc2 [IMM32_APITEST] s/0x287/WM_IME_SYSTEM/
Don't use magic number. CORE-11700
2021-08-18 19:48:45 +09:00
Katayama Hirofumi MZ
f4bc74edc3 [IMM32] ImmGenerateMessage and ImmTranslateMessage (#3914)
- Rewrite `ImmGenerateMessage` and `ImmTranslateMessage` functions.
- Rename `INPUTCONTEXTDX.bHasVKey` as `bNeedsTrans`.
- Move `TRANSMSG` structure into `ntuser.h`.
- Add `TRANSMSGLIST` structure into `ntuser.h`.
- Add `UNDETERMINESTRUCT` structure to `ddk/imm.h`.
- Modify `NtUserGetAppImeLevel` prototype.
CORE-11700
2021-08-18 08:42:12 +09:00
Katayama Hirofumi MZ
db8dd3b35e [IMM32] Refactor Part 2
Simplify the IMM32 code by deleting middle functions.
CORE-11700
2021-08-16 15:45:11 +09:00
Katayama Hirofumi MZ
3ff832b5d3 [IMM32_APITEST] Add ImmIsUIMessage testcase (#3908)
- Add ImmIsUIMessage testcase in IMM32_APITEST. CORE-11700
2021-08-16 15:35:25 +09:00
Katayama Hirofumi MZ
77911014f3 [IMM32] Rewrite ImmIsUIMessageA/W (#3907)
- Rewrite ImmIsUIMessageA and ImmIsUIMessageW functions.
- Modify HIMC and HIMCC handle types for strictness. Add typecasts.
- Add WM_IME_SYSTEM macro.
- Modify imm32.spec.
CORE-11700
2021-08-16 15:33:51 +09:00
Katayama Hirofumi MZ
cc097ec485 [IMM32] Rewrite ImmEnumRegisterWordA/W (#3906)
- Rewrite ImmEnumRegisterWordA and ImmEnumRegisterWordW functions.
- Modify win32ss/include/imetable.h.
CORE-11700
2021-08-16 15:31:39 +09:00
Kento Oki
3ba1d82c41 [RTL/x64] Fix a typo RtplUnwindInternal -> RtlpUnwindInternal (#3912) 2021-08-16 04:23:02 +03:00
Victor Perevertkin
6ef6fabfc5 [FREELDR][NTOS][HALPPC][SDK] Remove PowerPC code
Remove PowerPC-related code from the kernel, HAL, SDK and
Freeloader.
2021-08-15 15:35:51 +03:00
Katayama Hirofumi MZ
911fc3cf5b [IMM32] Delete Wine-specific functions (#3902)
We don't need Wine-specific functions for Japanese input.
- Delete __wine_get_ui_window, __wine_register_window and __wine_unregister_window functions.
- Modify imm32.spec.
CORE-11700
2021-08-14 10:42:02 +09:00
Katayama Hirofumi MZ
19d24143e9 [IMM32] Rewrite ImmGetRegisterWordStyleA/W (#3901)
- Rewrite ImmGetRegisterWordStyleA and ImmGetRegisterWordStyleW functions.
- Modify win32ss/include/imetable.h.
CORE-11700
2021-08-14 10:39:20 +09:00
Katayama Hirofumi MZ
1da5d7a305 [IMM32] Refactor and simplify code (#3900)
- Add Imm32WideFromAnsi, Imm32AnsiFromWide and Imm32IsCrossThreadAccess helper functions.
- Simplify the IMM32 code by using the helper functions.
CORE-11700
2021-08-14 10:38:06 +09:00
Katayama Hirofumi MZ
719823179d [IMM32] Rewrite ImmGetProperty (#3896)
Implementing Japanese input... CORE-11700
2021-08-12 12:33:12 +09:00
Katayama Hirofumi MZ
ee22951c1a [IMM32] Rewrite ImmGetConversionListA/W (#3895)
- Rewrite ImmGetConversionListA and ImmGetConversionListW functions.
- Delete useless convert_candidatelist_AtoW and convert_candidatelist_WtoA functions.
CORE-11700
2021-08-12 12:32:02 +09:00
Katayama Hirofumi MZ
9b7288df78 [IMM32] Rewrite ImmUnregisterWordW (#3894)
Implementing Japanese input... CORE-11700
2021-08-12 12:31:06 +09:00
Katayama Hirofumi MZ
1ead16de95 [IMM32] Rewrite ImmUnregisterWordA (#3893)
Implementing Japanese input... CORE-11700
2021-08-12 12:30:13 +09:00
Katayama Hirofumi MZ
94285dce4d [IMM32] Rewrite ImmRegisterWordW (#3892)
Implementing Japanese input... CORE-11700
2021-08-12 12:29:02 +09:00
Katayama Hirofumi MZ
1e62771c78 [IMM32] Rewrite ImmRegisterWordA (#3881)
- Rewrite ImmRegisterWordA function.
- Modify imetable.h.
CORE-11700
2021-08-10 08:08:23 +09:00
Katayama Hirofumi MZ
6b24e73d41 [IMM32] Rewrite ImmGetVirtualKey (#3889)
Implementing Japanese input. CORE-11700
2021-08-10 08:03:32 +09:00
Doug Lyons
ad8d8b6628 [GDI32] Revise IntTMWFixUp Raster Font List (#3808)
CORE-17662
CORE-17723
2021-08-09 13:07:04 +02:00
James Tabor
a81ad376a1 Check for PAE
Checking for PAE and set some logic later to support it.
2021-08-08 20:37:06 -05:00
Katayama Hirofumi MZ
4f2108882d [IMM32][SDK] Rename some members of INPUTCONTEXTDX
CORE-11700
2021-08-09 00:05:06 +09:00
Eric Kohl
033b6639e4 [DHCPCSVC] Make the DHCP client service stoppable
- Make all threads (pipe thread, adapter discovery thread and dispatcher thread) wait on the stop event.
- Close shared resources in the main (dispatcher) thread after the pipe thread and the adapter discovery thread have shut down.

This enables us to stop and restart the DHCP client properly.

CORE-14390
2021-08-08 14:10:25 +02:00
Katayama Hirofumi MZ
f486f87796 [IMM32] Delete useless ImmInternalSendIMENotify function
CORE-11700
2021-08-08 17:46:02 +09:00
Katayama Hirofumi MZ
7342ed1861 [IMM32] Rewrite ImmSetCompositionFontA/W (#3886)
- Rewrite ImmSetCompositionFontA and ImmSetCompositionFontW functions.
- Add INPUTCONTEXTDX structure as an extension of INPUTCONTEXT.
CORE-11700
2021-08-08 17:35:34 +09:00
Victor Perevertkin
3927ad9d47 [SFLOPPY] Move storage/floppy_new -> storage/class/sfloppy
This is a SCSI Floppy driver, which depends on classpnp.
Don't mix that with the other floppy (FDC) stack.
2021-08-08 02:42:34 +03:00
Victor Perevertkin
3088717b3f [CDROM][DISK] Remove "_new" suffix from cdrom and disk drivers 2021-08-08 02:42:34 +03:00
Victor Perevertkin
49444127fd [CDROM][CLASS2][DISK] Remove the old class drivers stack
These drivers are based on NT4 DDK sample code, were originally
started by Alexey Bragin and then constantly patched by Pierre
Schweitzer to fix compatibility with NT5+ storage stack.
Replaced with Microsoft drivers published on GitHub by an open
license.
These drivers were originally added as part of 4e7b22b216
2021-08-08 02:42:30 +03:00
Katayama Hirofumi MZ
0af58654a3 [IMM32] Rewrite ImmSetCandidateWindow (#3884)
Implementing Japanese input... CORE-11700
2021-08-08 08:34:47 +09:00
Tibor Lajos Füzi
f26614afff [TRANSLATION] Add/update Hungarian translation of deskmon, notepad, winlogon, mycomput 2021-08-07 22:57:35 +02:00
Jérôme Gardou
589016ddb9 [NTOS:MM] Implement MmFlushImageSection(MmFlushForWrite) 2021-08-07 09:34:58 +02:00
Joachim Henze
4cc2c350ef [LDR] Disable Logging when images overlap CORE-17635
We found out what we wanted to find out:
the remaining TODOs for the Python script.

So we can silence the DPRINTs again for the time being
to reduce spam from 3rd party dlls.
Paying tribute to Mark Jansen ;)
2021-08-06 19:25:14 +02:00
Jérôme Gardou
c4801ab696 [WIN32K] Do not release twice the lock on error path 2021-08-06 15:18:21 +02:00
Jérôme Gardou
6618d978cd [CMAKE] Do not disable optimisations on ntoskrnl build 2021-08-06 15:17:49 +02:00
Jérôme Gardou
0bc00267df [WIN32K] Init User part after GDI one.
But Initialize user lock first thing to avoid hitting newly introduced ASSERTS

This partly reverts commit 515d83a883.
2021-08-06 10:15:02 +02:00
Katayama Hirofumi MZ
c0c9b1445d [IMM32] Rewrite ImmSetConversionStatus (#3879)
CORE-11700
2021-08-06 07:15:19 +09:00
Hervé Poussineau
528fede034 [SETUPAPI] Add stubs for SetupDiSetDriverInstallParamsA/W 2021-08-05 23:45:23 +02:00
Hervé Poussineau
e763bec6cd [PSDK] Add DRIVER_UNTRUSTED_RANK define 2021-08-05 23:45:20 +02:00
Jérôme Gardou
0782375f8b [CRT] Add one missing entry to _syserr_list array, fix _sys_nerr definition
Partial revert of 296e07b94d
2021-08-05 15:35:19 +02:00
Katayama Hirofumi MZ
29b09d8935 [IMM32] Implement ImmGetGuideLineA/W (#3877)
Implement ImmGetGuideLineA and ImmGetGuideLineW functions. CORE-11700
2021-08-05 21:43:21 +09:00
Jérôme Gardou
acf28dbc1e [NTOS:MM] Fix the mess created by the "balancer thread"
When processing:
  Make sure that the process is not terminating.
  Make sure that the process WorkingSet is still valid
  Protect accessing & writing to PTEs by acquiring the working set lock

CORE-17595 CORE-17642
2021-08-05 10:06:19 +02:00
Jérôme Gardou
676dc4b441 Revert "[NTOS:MM] Do proper checks & acquire proper locks when sweeping user pages"
This reverts commit 7c006df7e0.
Note to self: This is what happens when you have too many branch and push the wrong one.
2021-08-04 23:57:39 +02:00
Jérôme Gardou
7c006df7e0 [NTOS:MM] Do proper checks & acquire proper locks when sweeping user pages
CORE-17595
2021-08-04 20:38:37 +02:00
Jérôme Gardou
789d7a7741 [NTOS:MM] When mapping pages for zeroing them, disable cache, enable write through
Idea from Thomas Faber
2021-08-04 17:48:39 +02:00
Jérôme Gardou
98e62b9bca [NTOS:MM] In page zeroing thread, zero more than one page at a time. 2021-08-04 17:48:39 +02:00
Jérôme Gardou
e98de5ef1f [NTOS:MM] Use KeZeroPages in zeroing thread 2021-08-04 17:48:39 +02:00
Jérôme Gardou
708dc6b7d6 [NTOS:MM] Do not zero-fill pages when not needed 2021-08-04 17:48:39 +02:00
Jérôme Gardou
42bec35f65 [NTOS:KE] Also rewrite KeZeroPages in assembly for amd64
Let's stick with "rep movsq" until we are able to have more precise benchmarks
2021-08-04 17:48:39 +02:00
Jérôme Gardou
51258295bd [NTOS:KE] Rewrite KeZeroPages in assembly
We spend a lot of time in this function, let's optimize it.
2021-08-04 17:48:39 +02:00
Marat Nagayev
240dc77e42 [NTFS] Check file isn't encrypted 2021-08-04 16:07:18 +03:00
Marat Nagayev
9be382ec98 [NTFS] Add new defines for file attributes 2021-08-04 16:07:18 +03:00
Jérôme Gardou
34662e2f6f [NTOS:MM] Copy the WorkingSet page when initializing "hand-built" process
CORE-17642
2021-08-04 11:49:38 +02:00
Katayama Hirofumi MZ
1d9542d239 [IMM32] Remove function names from TRACEs
CORE-11700
2021-08-04 09:49:41 +09:00
Katayama Hirofumi MZ
692a30a84a [IMM32] ImmCreateContext, ImmDestroyContext, DllMain etc. (#3867)
- Rewrite ImmCreateContext, ImmDestroyContext, and DllMain functions.
- Add g_hImm32Inst, g_bClientRegd, and g_SharedInfo global variables. Delete g_dwImm32Flags (that was g_psi->dwSRVIFlags).
- Implement ImmLoadIME and ImmRegisterClient functions.
- Modify CLIENTIMC and IMEDPI structures. Move CLIENTIMC definition into ntuser.h.
- Add file win32ss/include/imetable.h.
- Rename SRVINFO_METRICS macro as SRVINFO_CICERO_ENABLED.
CORE-11700
2021-08-04 09:41:59 +09:00
Timo Kreuzer
c23ce9dfad [CRT_APITEST] Add static_crt_apitest 2021-08-04 02:03:07 +02:00
Timo Kreuzer
8043628d97 [PSDK] Add some missing ARM definitions 2021-08-04 02:03:07 +02:00
Timo Kreuzer
e91f201be2 [CRT] Implement crt_process_init() 2021-08-04 02:03:07 +02:00
Timo Kreuzer
8043b76e85 [CRT] Improve CMake files 2021-08-04 02:03:07 +02:00
Timo Kreuzer
950e814377 [CRT] Fix _fmode
Remove mingw-w64 version of _fmode. _fmode should not be linked directly into the executable. Instead, the export from msvcrt should be used. On Windows 10 it's defined to *__p__fmode(), which is exported from ucrtbase.dll
Also _fmode in msvcrt.dll is initialized with 0.
2021-08-04 02:03:07 +02:00
Timo Kreuzer
296e07b94d [CRT] Fix some data exports
* Fix initialization of _commode. In msvcrt it is allocated from .bss, i.e. initialized with 0.
* _fileinfo is initialized with -1
* _aexit_rtn is a pointer, not a function
* Fix _sys_nerr
2021-08-04 02:03:07 +02:00
Timo Kreuzer
5f548654f4 [CRT_APITEST] Add tests for data exports 2021-08-04 02:03:07 +02:00
Timo Kreuzer
379957424c [CRT] Fix some _CRTIMP
Get rid of the ugly __MINGW_IMP_SYMBOL hacks.
2021-08-04 02:03:07 +02:00
Timo Kreuzer
b05cc36208 [CRT] Fix CRT headers a bit
* Remove unused internal version of float.h
* Define _STATIC_ASSERT in crtdefs.h
* Add some missing declarations
2021-08-04 02:03:07 +02:00
Timo Kreuzer
0f3d052af9 [CRT] Remove _fmode and _commode initialization
This "initialization" copies the value of the local variable to the one exported from msvcrt, which is the same. Also there shouldn't be a local version of the variable in the first place.
2021-08-04 02:03:07 +02:00
Katayama Hirofumi MZ
7507a8f192 [IMM32] Rewrite ImmInstallIMEA (#3873)
Implementing Japanese input... CORE-11700
2021-08-04 07:32:13 +09:00
Jérôme Gardou
bd6fb80867 [WIN32K:NTUSER] In debug builds, enable free & tail checking when creating heaps
Actually catches bugs
2021-08-03 23:13:19 +02:00
Jérôme Gardou
b783b16cef [WIN32K:USER] Fix potential use after free when painting child windows 2021-08-03 23:13:19 +02:00
Jérôme Gardou
d958dc9bc2 [WIN32K:NTUSER] Assert global user lock is held exclusively when using global & desktop heaps
They're explicitly not serialized because we count on this.
2021-08-03 23:13:19 +02:00
Jérôme Gardou
8c098ee8d2 [WIN32K:NTUSER] Make sure to hold User Global Lock before unmapping desktop heap 2021-08-03 23:13:19 +02:00
Jérôme Gardou
6ec0420dc6 [WIN32K:NTUSER] Allocate & free timers under global user lock 2021-08-03 23:13:19 +02:00
Jérôme Gardou
515d83a883 [WIN32K] On init, start by initializing NtUser stuff
Allocate gpsi (Global Server Info) after initializing & grabbing Userlock
2021-08-03 23:13:19 +02:00
Jérôme Gardou
be6a6b806a [NTOS:MM] Remove dead code 2021-08-03 10:57:12 +02:00
Jérôme Gardou
c6d08c4828 [CMAKE] Update DLL base addresses 2021-08-03 10:36:32 +02:00
Victor Perevertkin
f777e6bd24 [GITHUB] Build Release configuration for all compilers 2021-08-02 20:23:23 +03:00
Victor Perevertkin
5176f580e5 [CMAKE] Add memcmp to libntoskrnl for both clang and clang-cl 2021-08-02 20:23:22 +03:00
Victor Perevertkin
03506b90e0 [MSVCRTEX] Add some routines required for clang optimizations
- Include exp2* in all clang builds
- Include __aulldiv for i386 ones

Those are required, at least for clang-cl Release configuration
2021-08-02 20:23:18 +03:00
Nexware
14fbe80c4a [CONFIGURE] Make configure.sh print out an error when CMake fails 2021-08-02 01:40:43 +03:00
Robert Naumann
a0235bf877 [UXTHEME] Fix incorrect part IDs in button class map.
Wine Patch by Zhiyi Zhang. (Commit ec82a0ebe65a0bd9f41c743d301c853e77dd8b8b)
2021-08-01 12:22:58 +02:00
George Bișoc
632fa1cfbe [NTOS:SE] Handle the reference logon session of the token
When creating or duplicating an access token object, make sure that the logon session is getting referenced by the token must be inserted onto the logon reference member (a.k.a LogonSession) for proper logon session referencing tracking.

Also when a token object is about to be destroyed or that we are taking away a reference session from it, we must ensure that the referenced logon session data gets removed from the token in question.
CORE-17700
2021-07-31 17:23:05 +02:00
George Bișoc
5e51f8dad2 [NTOS:SE] Implement logon reference insertion/removal to tokens 2021-07-31 16:11:03 +02:00
George Bișoc
7692c10527 [NTOS:SE] Unify all the SRM tags in one place
And rename SEP_LOGON_SESSION_TAG and SEP_LOGON_NOTIFICATION_TAG to TAG_LOGON_SESSION and TAG_LOGON_NOTIFICATION respectively.
2021-07-31 16:10:50 +02:00
Roman Masanin
be3c532bf4 [ARM/CRT] Refactor several functions (#3865)
- Make __fto64 function more readable
- Call worker function directly for __rt_sdiv/udiv
- Adapt __rt_sdiv64/udiv64 asm shims accordingly
- Add header files to CMake source list

CORE-17607 CORE-17614 CORE-17703 CORE-17604

Addendum to f2bc1f0e, e448094e and 54406bf4.
2021-07-31 11:24:03 +03:00
Katayama Hirofumi MZ
d7f13aa696 [IMM32] Improve ImmSimulateHotKey (#3858)
- Improve ImmSimulateHotKey function.
- Modify IMEDPI structure.
CORE-11700
2021-07-31 15:56:11 +09:00
Katayama Hirofumi MZ
89cb8a38b3 [IMM32] Rewrite ImmEnumInputContext (#3859)
- Rewrite ImmEnumInputContext function.
- Modify NtUserBuildHimcList.
CORE-11700
2021-07-31 15:45:07 +09:00
Stanislav Motylkov
54406bf4f0 [CRT/ARM] __fto64: Assembly wrappers are actually not needed anymore
Addendum to e448094e. CORE-17703 CORE-17604
2021-07-30 22:48:03 +03:00
Jérôme Gardou
b0dfe20981 [NTOS:MM] Fix MiIsUserPte inline 2021-07-30 18:54:54 +02:00
Victor Perevertkin
49cfac17c5 [FFS] Remove the FFS/UFS driver
The upstream driver is not maintained and the file system itself
is in a semi-abandoned state.
Originally imported at 3a3ef631d1

The driver is written by Lee Jae-Hong, updated by Bo Brantén.
ReactOS porting made by Peter Hater and Pierre Schweitzer.
Follow updates at http://www.acc.umu.se/~bosse/

FS Recognizer code is left to keep the FS support as an
installable driver.

CORE-11040
2021-07-30 17:14:57 +03:00
Victor Perevertkin
2e2190df57 [REISERFS] Remove the ReiserFS driver
The upstream driver is not maintained and the file system itself
is in a semi-abandoned state.
Originally imported at e308102f4a

The driver is written by Mark W Piper, updated by Bo Brantén.
ReactOS porting made by Peter Hater and Pierre Schweitzer.
Follow updates at http://www.acc.umu.se/~bosse/

FS Recognizer code is left to keep the FS support as an
installable driver.

CORE-11005
2021-07-30 17:14:53 +03:00
Roman Masanin
99ba98468f [CRT_APITEST] Add tests for __dtoi64/dtou64/stoi64/stou64 on ARM (#3848)
CORE-17703 CORE-17604
2021-07-30 14:20:23 +03:00
Roman Masanin
e448094e74 [CRT/ARM] Implement __dtoi64/dtou64/stoi64/stou64 functions (#3848)
CORE-17703 CORE-17604
2021-07-30 14:20:23 +03:00
Roman Masanin
fd8baca9f2 [CRT/ARM] Fix modulus on division (#3856)
This fixes all tests added in 759bdedc. Addendum to f2bc1f0e.

CORE-17607 CORE-17614 CORE-17604
2021-07-29 13:44:16 +03:00
Stanislav Motylkov
759bdedc1e [CRT_APITEST] Add tests for __rt_sdiv/udiv/sdiv64/udiv64 on ARM
Addendum to f2bc1f0e and f1e2c6cb.

CORE-17607 CORE-17614 CORE-17604
2021-07-29 13:37:07 +03:00
Katayama Hirofumi MZ
e996662afb [IMM32] s/idThread/dwThreadId/
- Rename idThread variable as dwThreadId.
- Rename idImeThread variable as dwImeThreadId.
CORE-11700
2021-07-29 08:21:33 +09:00
Katayama Hirofumi MZ
f972a9fbd5 [IMM32] Rewrite ImmSetCompositionWindow (#3855)
Implementing Japanese input... CORE-11700
2021-07-28 23:26:02 +09:00
Katayama Hirofumi MZ
8e1dea0c8c [IMM32] Implement ImmLoadLayout (#3854)
Implementing Japanese input... CORE-11700
2021-07-28 23:25:10 +09:00
Katayama Hirofumi MZ
fb2aef9e4e [IMM32] Rewrite ImmNotifyIME (#3853)
Implementing Japanese input... CORE-11700
2021-07-28 23:24:09 +09:00
Katayama Hirofumi MZ
a71de262d3 [IMM32] Rewrite ImmSetStatusWindowPos (#3852)
Implementing Japanese input... CORE-11700
2021-07-28 23:23:09 +09:00
Timo Kreuzer
da2a5673e7 [CRT] Fix _matherror and _setusermatherror
We previously used 2 different versions: one from wine and one from mingw-w64.
The former was used in msvcrt, the latter was statically compiled into the executable. When using MS libs, there is only one _matherr, which is statically linked into the executable and does nothing (it's not really a function for users to be called).
_setusermatherror should only exist in msvcrt and not statically, which wouldn't work at all.
2021-07-27 22:08:58 +02:00
Timo Kreuzer
486a4d93ed [CRT] Define NULL in crtdefs.h 2021-07-27 22:08:58 +02:00
Jérôme Gardou
ce65553eaa [NTOS:MM] Annotate some functions with regards to MmPfnLock
Also fix MI_ASSERT_PFN_LOCK_HELD macro.
Now in debug builds, SpinLocks are always non-zero when held.
2021-07-27 15:36:55 +02:00
Jérôme Gardou
6150dc994a [NTOS:MM] Always release PFN lock in MmDereferenceSegmentWithLock
All callers release it after calling it.
CORE-17698
2021-07-27 15:36:55 +02:00
Timo Kreuzer
ecf3416f49 [VIDEOPRT] Fix updating of new registry path values
CORE-17688
When a new driver is installed for the same device (like VBoxVideo), it uses the same hardware enum registry key and thus reuses the same DisplayId and the same display registry key. Therefore we need to update the setting in that key, even when the key already exists.

This seems to work good and not cause any issues, but testing indicated that on Windows some values are only updated, when the driver has changed. If neccessary, this can be achieved by updating and querying the ActiveService value in the device enum key (e.g. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI\VEN_80EE&DEV_BEEF&SUSYS_00000000&REV_00\3&267a616a&0&10\Control: ActiveService). If that doesn't match the current device name (from DriverExtension->RegistryPath) the values should be copied over.
2021-07-27 14:44:14 +02:00
Timo Kreuzer
204626f793 [WIN32K] Fix uninitialized variable 2021-07-27 14:44:14 +02:00
Timo Kreuzer
f1e2c6cbd0 [CRT/arm] Update file headers to new format and change license to MIT
* Add Raman Masanin to copyrights
* Add some comments
* Return long long from __rt_sdiv (no functional difference, just for clarity)
2021-07-27 14:42:55 +02:00
Serge Gautherie
9a42267b06 [CPPRT] arm: Add 2 'MSVCRTEX_eh_vector_*structor_iterator' aliases
CORE-17606
2021-07-26 09:58:20 +03:00
George Bișoc
e2a8585edc [NTOS:SE] Remove redundant commented call on token duplication
When duplicating an access token, the authentication ID is already copied from the existing token to the new one anyway so there's no point on having the commented call still left in the code.
2021-07-25 18:02:32 +02:00
Stanislav Motylkov
a1ebce3aac [DRWTSN32] Fix Clang build. Addendum to bdab437f.
Also use a macro for better code readability.

Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2021-07-25 18:14:23 +03:00
Stanislav Motylkov
bdab437fa4 [DRWTSN32] Recognize STATUS_ASSERTION_FAILURE as exception number 2021-07-25 15:32:08 +03:00
Katayama Hirofumi MZ
ecb0c0963d [IMM32] Imm(Lock|Unlock)ImeDpi and ImmSetOpenStatus (#3830)
- Add IMEDPI structure to ntuser.h.
- Implement ImmLockImeDpi/ImmUnlockImeDpi functions.
- Rewrite ImmSetOpenStatus function.
- Modify some NTUSER function prototypes.
- Modify imm32.spec.
CORE-11700
2021-07-25 11:57:57 +09:00
Katayama Hirofumi MZ
97847f2078 [IMM32] Improve ImmGetImeInfoEx (#3833)
- Rewrite ImmGetImeInfoEx function.
- Implement CtfImmIsTextFrameServiceDisabled function.
- Modify imm32.spec.
CORE-11700
2021-07-25 11:56:17 +09:00
Katayama Hirofumi MZ
5afc324359 [IMM32] Improve ImmUnlockClientImc and Imm32HeapAlloc (#3834)
- Fix Imm32HeapAlloc function.
- Fix ImmUnlockClientImc function.
CORE-11700
2021-07-25 11:55:03 +09:00
Roman Masanin
f2bc1f0e11 __rt_div fixes for arm (#3843)
[CRT/arm] Fix __rt_udiv and __rt_sdiv
2021-07-24 20:23:58 +02:00
Joachim Henze
c30b1fe893 [SHELL32] Update de-DE.rc in IDD_BROWSE_FOR_FOLDER_NEW
More space for the german text in that button.
Correct the keyboard accelerator.
2021-07-24 15:11:54 +02:00
Mark Jansen
61e7ea5be5 [SHELLUTILS] Fix FAILED_UNEXPECTEDLY macro evaluating twice 2021-07-23 22:10:36 +02:00
Mark Jansen
d039653959 [SHELL32] CDefView: Respect item attributes 2021-07-23 22:10:36 +02:00
Mark Jansen
91e63ee0b5 [FONTEXT] Cache attributes, handle sorting 2021-07-23 22:10:30 +02:00
Timo Kreuzer
cb9b538725 [CMAKE] Turn all warnings into errors on MSVC x86 2021-07-23 22:03:48 +02:00
Timo Kreuzer
41bc57ddf0 [REACTOS] Silence warnings in 3r-party code 2021-07-23 22:03:48 +02:00
Timo Kreuzer
5d8e834897 [REACTOS] Fix a number of MSVC warnings 2021-07-23 22:03:48 +02:00
Timo Kreuzer
b1c6c91d1f [USETUP] Fix invalid use of character count instead of byte count 2021-07-23 22:03:48 +02:00
Timo Kreuzer
a3763c61dc [PSDK][NDK] Use hex to define MIN/MAX constants like in native SDK
This fixes use of unary minus operator on unsigned type warning.
2021-07-23 22:03:48 +02:00
Jérôme Gardou
2289deb849 [KMTESTS:NTOS_IO] Fix check of spinlocks in case of checked builds
Down back to zero failures
2021-07-23 17:40:57 +02:00
Joachim Henze
59e1b7848b [EVENTVWR] Update other languages RCs also CORE-17699
Use a capital letter for the /L parameter
because the Shells default font in the
help dialog makes a small L look like a small I.
MS also often does use that trick
to differentiate.
2021-07-23 01:37:17 +02:00
Joachim Henze
95f64a200f [EVENTVWR] Update de-DE.rc CORE-17699 2021-07-23 01:23:36 +02:00
Timo Kreuzer
7100a24fc3 [CRT] Remove checkstk_ms from build (it was unused) 2021-07-20 23:13:03 +02:00
Timo Kreuzer
8c4aff39a8 [CRT] Refactor CMake files 2021-07-20 23:13:03 +02:00
Timo Kreuzer
3e1454c739 [HAL/APIC] Make the real time clock more precise
The interval time is now calculated in 0.1ns precision and a running fraction on the 100ns interval is updated on each clock interrupt.
Also adjust minimum, maximum and default clock rate to what Windows uses.
2021-07-19 23:05:03 +02:00
Timo Kreuzer
aa3ef4c632 [HAL/APIC] Fix clock initialization
Previously we enabled the timer interrupt, before the kernel was notified of our time increment, so when a clock interrupt happened, it would increment the tick count, but add 0 to the system time, resulting in an invalid state, in which timers would be inserted into the wrong timer table slot. Fixes CORE-16253
2021-07-19 23:05:03 +02:00
Timo Kreuzer
aedb97df47 [HAL/APIC] Use APIC_CLOCK_VECTOR everywhere, instead of keeping separate definitions 2021-07-19 23:05:03 +02:00
Joachim Henze
a559d830b5 [BOOTDATA] Update readme.txt
Consistency regarding URLs:
- some URLs had the trailing slash, some had not
- moving all URLs to EOL makes it more convenient to copy-paste them
2021-07-19 01:05:00 +02:00
Joachim Henze
6e177edbad [FONTEXT] Add de-DE translation CORE-17692 2021-07-19 00:33:39 +02:00
Joachim Henze
7b98717c6a [FONTEXT] Improve it-IT.rc comments
addendum to (#831)
2021-07-18 23:56:31 +02:00
Joachim Henze
1078340f5c [SYSSETUP] Update de-DE.rc
The buttons name on the last dialog of 2nd stage
is "Fertig" and not "Beenden".
So make the help-texts consistent with that.
2021-07-18 17:51:44 +02:00
Jose Carlos Jesus
e4bfe8f78b [EVENTVWR] Add a context menu to TreeView items. (#3828)
Same as in Windows XP/2003.
+ Specify a default extension when opening or saving an event-log file.
2021-07-17 19:26:48 +02:00
Eric Kohl
4cae349811 [ADVAPI32][SERVICES] Use the context handle to encrypt and decrypt service passwords 2021-07-17 16:26:16 +02:00
Katayama Hirofumi MZ
3965c93732 [IMM32] Rewrite ImmGetStatusWindowPos (#3824)
Rewrite ImmGetStatusWindowPos function. CORE-11700
2021-07-16 07:30:55 +09:00
Katayama Hirofumi MZ
0966e32146 [IMM32] Rewrite ImmGetCandidateWindow (#3823)
Rewrite ImmGetCandidateWindow function. CORE-11700
2021-07-16 03:04:00 +09:00
Hervé Poussineau
ad370238d7 [NTOS:PS] Support using QUOTA_LIMITS_EX in NtSetInformationProcess(ProcessQuotaLimits)
Both QUOTA_LIMITS and QUOTA_LIMITS_EX are already supported in PspSetQuotaLimits,
but this was broken by a330b56787
2021-07-15 19:33:45 +02:00
George Bișoc
32a45ce15c [KMTESTS:SE] Implement initial logon session tests
This implements tests for SeMarkLogonSessionForTerminationNotification exported routine so far.
2021-07-15 19:31:46 +02:00
George Bișoc
506cee3219 [NTOS:SE] Implement logon session termination notification
Note to SELF and EVERYONE: the commit implements the initial logon session termination notification implementation, the SeMarkLogonSessionForTerminationNotification function, but as it currently stands there are several other tasks to be addressed in the future in order for the logon termination notification to be fully completed. The tasks as of which are.

1. Our SepRmDereferenceLogonSession is not fully implemented, as it doesn't inform the LSA and filesystems of logon deletion notification
2. Implement two worker routines that are actually in charge of such tasks of informing LSA and FSDs
3. Perform logon deletion
4. Do further investigations and check whatever that is left to address, if any
2021-07-15 19:31:46 +02:00
Doug Lyons
34d5d1dbd4 [DDRAW] ddraw.c ddraw7_FlipToGDISurface() to Wine-6.8 (#3827) CORE-15128
fixes CORE-15128 "Fall 0.1.3, black controls all over the desktop after exiting the game"
which regressed by 0.4.9-dev-155-g 9987f02917
(the sync to Wine Staging 3.3)

the patch on top of 0.4.15-dev-2923-g2210d23:
KVM: https://reactos.org/testman/compare.php?ids=78290,78295 LGTM
VBox: https://reactos.org/testman/compare.php?ids=78291,78294 LGTM
2021-07-15 19:04:46 +02:00
Eric Kohl
228dab60da [SAMSRV] SamrQueryInformationDomain: Older functions should call new functions 2021-07-15 17:25:06 +02:00
Katayama Hirofumi MZ
b06b628f30 [IMM32] Rewrite ImmGetIMEFileNameA/W (#3822)
- Rewrite ImmGetIMEFileNameA and ImmGetIMEFileNameW functions. CORE-11700
2021-07-15 23:01:50 +09:00
Katayama Hirofumi MZ
3714ee269b [IMM32] Rewrite ImmGetDefaultIMEWnd (#3821)
- Rewrite ImmGetDefaultIMEWnd function.
- Add g_dwImm32Flags global variable.
- Add Imm32QueryWindow helper function.
- Implement CtfImmIsCiceroEnabled function.
- Modify imm32.spec.
CORE-11700
2021-07-15 21:59:53 +09:00
Timo Kreuzer
77e891b8ab [WIN32K] Check if a graphics device already exists before trying to add it
This avoids DPRINTs alleging a failure to open a device.
Also improve another DPRINT.
2021-07-15 08:32:46 +02:00
Timo Kreuzer
39d8a822d2 [WIN32K] Fix detection of multiple display devices on VBox 2021-07-15 08:32:46 +02:00
Eric Kohl
2210d23fc7 [NETAPI32] Return the old values for NetGetJoinInformation() to fix Chrome Installer regression
Should fix CORE-17679
2021-07-14 15:22:17 +02:00
Katayama Hirofumi MZ
5a9c77b3be [IMM32_APITEST] Add clientimc testcase (#3815)
- Add clientimc testcase to imm32_apitest.
- Add "precomp.h".
CORE-11700
2021-07-14 01:19:35 +09:00
Katayama Hirofumi MZ
192981a1fe [IMM32] Rewrite ImmGetCompositionWindow (#3820)
Rewrite ImmGetCompositionWindow function. CORE-11700
2021-07-13 21:13:39 +09:00
Katayama Hirofumi MZ
1558e6d0b3 [IMM32] Rewrite ImmGetCompositionFontA/W (#3813)
- Rewrite ImmGetCompositionFontA and ImmGetCompositionFontW functions.
- Add INIT_* macro definitions in <ddk/imm.h>.
CORE-11700
2021-07-13 20:51:28 +09:00
Katayama Hirofumi MZ
ee3b5b44c1 [IMM32] Rewrite ImmGetCandidateListCountA/W (#3812)
Implement ImmGetCandidateListCountA and ImmGetCandidateListCountW functions by using newly defined ImmGetCandidateListCountAW function. CORE-11700
2021-07-13 20:17:17 +09:00
Joachim Henze
a5365194f4 [COMCTL32] Listview: Only apply horizontal offset when setting header position CORE-17674
This imports
Wine commit d92906249f (diff-7f0ae6301b1f6ea1128640b76cd831308e24466f15399de6d5040557b79f0f16)
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Thanks to Doug Lyons who picked the fix for us from Wine 6.0

It fixes for us CORE-17674 "Corruption of the listview header"
which regressed by 0.4.14-dev-150-g 00f14ee1f2
when we synced to Wine Staging 4.18

Testbot results of the patch:
KVM https://reactos.org/testman/compare.php?ids=78225,78270 LGTM
VBox https://reactos.org/testman/compare.php?ids=78226,78271 LGTM

I intend to port this back into 0.4.14RC94 also, so no official reactos release
will ever be affected by it.
2021-07-13 07:38:45 +02:00
Hervé Poussineau
a6005299c6 [DESK] Only try to restart graphic device after installation
If it fails, require a reboot.

CORE-17675
2021-07-12 23:51:39 +02:00
Timo Kreuzer
a9a22aeffe [GITHUB] Add MSVC Release builder 2021-07-11 21:45:29 +02:00
Timo Kreuzer
aea4cfba55 [CRT] Add some missing #pragma function 2021-07-11 21:45:29 +02:00
Timo Kreuzer
db41787951 [CRT] Fix handling of intrinsics and inline functions 2021-07-11 21:45:29 +02:00
Timo Kreuzer
f4de12e9f4 [CMAKE] Don't turn C4101 (unreferenced local variable) into an error on release builds 2021-07-11 21:45:29 +02:00
Timo Kreuzer
47372e2ac9 [NTOS:MM] Fix MiSetSystemCodeProtection
CORE-16387 CORE-17638
Windows only makes the header RO for session space mapped drivers (win32k, dx and display drivers)
2021-07-11 21:43:07 +02:00
Eric Kohl
ccde294b24 [SAMSRV] Older functions should call newer functions 2021-07-11 12:54:28 +02:00
Katayama Hirofumi MZ
e2d8837986 [BROWSEUI] Multithreaded auto-completion (#3794)
- Make auto-completion multi-threaded.
CORE-9281
2021-07-11 13:00:00 +09:00
Katayama Hirofumi MZ
92393a7517 [IMM32] Add some candidate handlings (#3799)
- Implement ImmGetCandidateListA and ImmGetCandidateListW, by using newly added ImmGetCandidateListAW function.
- Implement ImmLockClientImc and ImmUnlockClientImc functions.
- Modify imm32.spec.
- Remove #ifdef's.
CORE-11700
2021-07-11 09:48:15 +09:00
Hervé Poussineau
8379c87b0b [VIDEOPRT] Write correct MaxObjectNumber to registry
VideoPortMaxObjectNumber variable will be updated later in the function, if everything went fine.
2021-07-10 19:03:37 +02:00
Timo Kreuzer
9e6b0b16e9 [GDI32_APITEST] Clean up loaded fonts 2021-07-10 18:41:12 +02:00
Timo Kreuzer
8a437ac528 [ROSTESTS] Skip some test on x64 2021-07-10 18:41:12 +02:00
Timo Kreuzer
699041b221 [NTDLL_WINETEST] Unhack exception test and include it in x64
This removes the use of a precompiled header, as it causes problems with different usages of NONAMELESSUNION, which had to be hacked already, but this is still causing problems with GCC x64. It's just not worth the hassle to keep reactos specific hacks to save a few ms of compile time.
2021-07-10 18:41:12 +02:00
Timo Kreuzer
a656d23deb [RPCRT4_WINETEST] Fix 64 bit build
"Should be sent to wine"(tm)
2021-07-10 18:41:12 +02:00
Hervé Poussineau
0f6b9664cd [WIN32K] HACK: create a DC on all display devices and display wallpaper 2021-07-10 16:27:44 +02:00
Timo Kreuzer
49c16e661a [VIDEOPRT] Do not attach secondary devices to the device stack
This fixes display on the primary screen.
2021-07-10 16:27:44 +02:00
Hervé Poussineau
e9b5b22a8c [VIDEOPRT] Implement VideoPortCreateSecondaryDisplay 2021-07-10 16:27:44 +02:00
Timo Kreuzer
545352c655 [VIDEOPRT] Fix adapter id 2021-07-10 16:27:44 +02:00
Timo Kreuzer
af314557c0 [VIDEOPRT] Use new registry path 2021-07-10 16:27:44 +02:00
Timo Kreuzer
066337dc84 [VIDEOPRT] Refactor device map key creation 2021-07-10 16:27:44 +02:00
Hervé Poussineau
c3da00c42c [DESK] Start video card after its installation + let win32k detect it 2021-07-10 16:27:44 +02:00
Hervé Poussineau
6739fb1bc3 [WIN32K] Move detection of available display devices a new fonction EngpUpdateGraphicsDeviceList
- rewrite InitVideo() to call this new function
- also call it at the start of UserEnumDisplayDevices, to detect new potential devices
2021-07-10 16:27:44 +02:00
Hervé Poussineau
b5966977ac [VBEMP] Remove too verbose log, when debug is enabled in videoprt 2021-07-10 16:27:44 +02:00
Katayama Hirofumi MZ
d066dae7d9 [IMM32_APITEST] Add imm32_apitest test program (#3810)
Add a test program for imm32.dll as a proof of concept. CORE-11700
2021-07-10 00:05:43 +09:00
Katayama Hirofumi MZ
2fa0436372 [SDK][INCLUDE] Add offset info to INPUTCONTEXT (#3809)
Add offset and size information to INPUTCONTEXT structure for information help. CORE-11700
2021-07-09 23:31:42 +09:00
Robert Naumann
65387805a0 Add/Update German translation (#3805)
Add translations for:

- [CHARMAP_NEW]
- [COMP]
- [EVENTCREATE]
- [TIMEOUT]
- [WHERE]
- [UTILMAN]
- [CHKDSK]
- [SHELLEXT]: cryptext, devcpux, mycomp, netplwiz
- [MSXML3R]
- [THEMES]: Blackshade, Lunar

Update translations for:

- [CLIPBRD]
- [SHORTCUTS.INF]
2021-07-09 11:15:34 +02:00
Eric Kohl
7faca935e6 [SETUPAPI] PNP_RegisterNotification: Parameter 8 seems to be a process ID 2021-07-08 10:58:47 +02:00
Eric Kohl
f4033b02e4 [IDL] Formatting: Add a missing space 2021-07-08 10:55:13 +02:00
Katayama Hirofumi MZ
5c624d40e7 [IMM32] Rewrite ImmGetOpenStatus (#3804)
- Rewrite ImmGetOpenStatus function. CORE-11700
2021-07-08 14:24:27 +09:00
Katayama Hirofumi MZ
211de1257e [IMM32] Rewrite ImmIsIME (Retry) (#3803)
- Rewrite ImmIsIME function.
- Fix enum IMEINFOEXCLASS.
CORE-11700
2021-07-08 14:23:25 +09:00
Eric Kohl
4339ae8c7e [DDK] Add missing types DOMAIN_DISPLAY_USER, DOMAIN_DISPLAY_MACHINE and DOMAIN_DISPLAY_GROUP 2021-07-07 12:26:44 +02:00
Katayama Hirofumi MZ
6eeea92530 [IMM32] Rewrite IMCC handling functions (#3788)
Rewrite ImmCreateIMCC, ImmDestroyIMCC, ImmReSizeIMCC, ImmGetIMCCLockCount, ImmUnlockIMCC, ImmLockIMCC, and ImmGetIMCCSize functions. CORE-11700
2021-07-07 10:04:30 +09:00
Joachim Henze
7962db4cc1 [NETSHELL] Fix MSVC compiler warning in de-DE.rc
MSVC2010 compiler warning shellext\netshell\lang/de-DE.rc(118) : warning RC4206 : title string too long; truncated at 256
introduced by SVN r71434 == git 6ce8ee357a

The string was displayed properly and was not truncated even before this patch.
2021-07-07 01:51:33 +02:00
Joachim Henze
2cbb3ebdcb [SHELL32] EOL-white-space-fixes dialogs.cpp
Exclusively touching code that was recently
added during 0.4.15-dev'ing.
2021-07-06 23:27:32 +02:00
Doug Lyons
33c7c91b36 [SHELL32] Improve Start-Run Dialog Box Features (#3797) CORE-17351 CORE-16898
Improve performance of Start-Run Dialog Box Options

This will fix:
CORE-17351 'RunDlg fails calling URL without http'
and
CORE-16898 'RunCommand "iexplore" fails to open Wine IE'
Both regressed by 0.4.10-dev-419-g bfcbda227f
2021-07-06 19:36:15 +02:00
Serge Gautherie
76ce08dcec [WIN32U_2KSP4] Remove it (#3786)
ReactOS does not target 2000 SP4 anymore.
2021-07-06 21:05:01 +09:00
Serge Gautherie
64a72787f2 [VIDEOPRT] Fix 'Irp->IoStatus.Information' copypasta (#3777)
Addendum to 25eae4b (r54237).
CORE-17651
2021-07-06 12:32:23 +03:00
Joachim Henze
728f90dd18 [DESK] Update de-DE.rc regarding IDC_ADVAPPEARANCE_DISCLAIMER
It was recently added during 0.4.15-dev'ing.
2021-07-06 10:59:03 +02:00
Serge Gautherie
513f3d179c [NTDLL] LdrpWalkImportDescriptor(): Fix 'Status' copypasta
Addendum to f6cd52a (r70646).
2021-07-06 08:26:26 +02:00
Victor Perevertkin
4359f48838 [BTRFS] Do not rely on mountmgr when mounting volumes
This turns off mountmgr listening on new devices. Now
BTRFS will only be mounted on demand when OS asks for it. RAID
is not going to work this way probably (have anybody checked it at all?)

This is a temporary workaround for CORE-17469
2021-07-06 02:37:34 +03:00
Hervé Poussineau
93f986463a [VBEMP][VGAMP] Correctly fill VdmPhysicalVideoMemoryAddress/VdmPhysicalVideoMemoryLength
These variables must be filled by miniport if miniport is VGA-compatible.
2021-07-05 23:46:16 +02:00
Hervé Poussineau
8d24de7805 [BOOTDATA][VBEMP] Merge duplicated registry settings to vbemp_reg.inf 2021-07-05 23:44:35 +02:00
Hervé Poussineau
9b5d029c7a [FRAMEBUF] Early return if we got 0 available mode from video driver
This prevents allocating 0 bytes of memory a few lines later.
2021-07-05 23:44:35 +02:00
Hervé Poussineau
f26fe3f1f8 [PSDK] Add missing field 'pdo' in VIDEO_MONITOR_DEVICE structure 2021-07-05 23:44:35 +02:00
Jérôme Gardou
7448f4b807 [CMAKE] Turn ENABLE_ROSAPPS, ENABLE_ROSTESTS & ENABLE_WALLPAPERS into options
Enabling UI tools to toggle them easily
2021-07-05 15:24:46 +02:00
Katayama Hirofumi MZ
c238b554b1 [IMM32] Rewrite ImmGetConversionStatus (#3790)
Implementing Japanese input... CORE-11700
2021-07-05 21:20:20 +09:00
George Bișoc
6b0cdceda0 Merge branch 'se-qos' of https://github.com/GeoB99/reactos into GeoB99-se-qos 2021-07-05 11:01:49 +02:00
Jérôme Gardou
6e0d8de013 [KDGDB] Support "int 0x2c" for x86 & amd64 targets 2021-07-05 10:55:47 +02:00
Jérôme Gardou
e278b59d3a [CMAKE] Cache compiler paths to make some utilities happy
VS code being one of them
2021-07-05 09:56:41 +02:00
George Bișoc
7fb0d13a46 [NTOS:SE] Move SQOS capturing in its own file
* Quality of service kernel stuff bears nothing with security descriptors in anyway, so just have a file specifically for it
* Annotate the function arguments parameters with SAL
* Document the functions
2021-07-05 09:39:06 +02:00
Eric Kohl
fb8edf90a0 [SAMSRV] Start work on the display cache
Initialize the cache and fill it on demand
2021-07-04 12:45:19 +02:00
Eric Kohl
556cef5be3 [SAMLIB] Add function names to trace messages 2021-07-04 12:31:22 +02:00
George Bișoc
aa59e3ad00 [NPFS] The function call expects a pool type value, not a boolean value 2021-07-04 11:02:05 +02:00
George Bișoc
ff0a325116 [NTOS:SE] Allocate pool memory for security descriptor based on the caller pool type request
We're indiscriminately allocate the pool as non paged all the time, thus further ignoring the pool type parameter of the function.
2021-07-04 11:01:54 +02:00
Katayama Hirofumi MZ
89f5f5bb95 [IMM32] Rewrite ImmGetDescriptionA/W (#3780)
CORE-11700
2021-07-04 08:18:15 +09:00
Doug Lyons
e068c68452 [WORDPAD] Fix icons for toolbar and formatbar (#3792) CORE-5823
* CORE-5823 Fix icons for toolbar and formatbar in Wordpad.
which regressed by SVN r47776 == git 5dbfbb5201

* Add wordpad_ros.diff noting toolbar.bmp and formatbar.bmp are not wine-synced
2021-07-03 22:55:05 +02:00
Jose Carlos Jesus
879dd8f207 [SERVMAN] Add Portuguese (pt-PT) Translation 2021-07-03 21:50:13 +02:00
Jose Carlos Jesus
06e2d82bc3 [BOOTDATA] Add Portuguese translation to shortcuts.inf 2021-07-03 21:50:13 +02:00
Jose Carlos Jesus
217835648b [MSCUTILS][EVENTVWR] Add Portuguese PT translation 2021-07-03 21:50:13 +02:00
Jose Carlos Jesus
2ccca7fe30 [USETUP] Update Portuguese PT translation 2021-07-03 21:50:13 +02:00
Oleg Dubinskiy
94054a5735 [NTOS:IO] OpenRegistryHandlesFromSymbolicLink: Use REG_OPTION_NON_VOLATILE
Use REG_OPTION_NON_VOLATILE instead of REG_OPTION_VOLATILE in all ZwCreateKey calls of OpenRegistryHandlesFromSymbolicLink, since the keys created/opened by this function, should be non-volatile (in other words, be saved after reboot).
Also Device Parameters subkey that is created in IoOpenDeviceInterfaceRegistryKey (which uses that routine as well), is non-volatile too, so the parent keys whose contain it, cannot be volatile.
It will fix an error with status 0xc0000181 (STATUS_CHILD_MUST_BE_VOLATILE) occuring during loading kernel mode audio drivers from Windows XP/2003, especially checked (debug) versions, with my IoGetDeviceInterfaceAlias implementation. Also it may fix other error cases.
CORE-17361
2021-07-03 21:44:33 +02:00
George Bișoc
c869c4778d [NTOS:SE] Assign the control flag bits to the newly created security descriptor
We allocate memory pool for a new security descriptor with specific info filled by the caller but we don't set the control flag bits for the newly allocated descriptor, which is wrong. Originally spotted by Vadim Galyant.
CORE-17650
2021-07-03 17:20:48 +02:00
Eric Kohl
bf05fcbd29 [SAMSRV] Older functions should call newer functions 2021-07-03 14:46:32 +02:00
Joachim Henze
ae2ad29ad5 [RAPPS] Kill 2x EOL white-space in loaddlg.cpp
Both were introduced during 0.4.15-dev'ing
and were not in any earlier rls branches.
They were the only 2 in here btw.
2021-07-03 13:49:48 +02:00
Timo Kreuzer
adc86c2442 [NETAPI32] Zero out lpNameBuffer in NetGetJoinInformation
This is needed, because for some reason, otherwise RPCRT4 will assume that whatever value is in there is already the buffer and copy the string there.
Fixes exception in Chrome 48.
2021-07-03 12:56:48 +02:00
Timo Kreuzer
d24700f82e [RTL/x64] Properly handle UNW_FLAG_CHAININFO 2021-07-03 12:56:48 +02:00
Timo Kreuzer
6a9a739185 [ROSAUTOTEST] Run tests with current dir set to the test dir 2021-07-03 12:54:50 +02:00
Doug Lyons
847b037fe9 [WIN32K] Revert NtGdiStretchDIBitsInternal to Previous Logic (#3774)
Fixes gdi32:dib / gdi32:bitmap tests and SIMS graphics.
JIRA issue: CORE-16236
2021-07-03 00:34:43 +02:00
Katayama Hirofumi MZ
650cd77234 [IMM32] ImmDisableIME calls NtUserDisableThreadIme (#3776)
- Just call NtUserDisableThreadIme in ImmDisableIME directly. CORE-11700
2021-07-01 18:03:42 +09:00
Katayama Hirofumi MZ
561fa8d29b [SHELL32] Implement PathResolveA function (#3771)
- Follow-up of #3762.
- Add PathResolveA implementation by ANSI/Unicode string conversion.
CORE-12665
2021-07-01 08:42:29 +09:00
Jérôme Gardou
0ffbbab5a2 [CRT] Revert unwanted part of f30136bc79 2021-06-29 12:48:25 +02:00
Jérôme Gardou
37d0a9c3f4 [NTOS:KE] Unconditionally check IRQL when acquiring & releasing spinlock at DISPATCH_LEVEL 2021-06-29 11:49:20 +02:00
Jérôme Gardou
f30136bc79 [NTOS:KE] Test spinlock ownership on both UP & MP build
There is no reason not to, and this avoids introducing bugs stupidly.
2021-06-29 11:49:20 +02:00
Jérôme Gardou
835c30232e [NTOS:KD][NTOS:KD64][NTOS:KDBG] Fix IRQL & spinlock use
KD64: Raise to HIGH_LEVEL when entering trap
KDBG: lower to DISPATCH_LEVEL when applying IRQL hack & use a worker thread to load symbols
KD&KDBG: Actually unload symbols when required
2021-06-29 11:49:20 +02:00
Jérôme Gardou
54ecf703f2 [CMAKE:GCC] Produce RosSym data even when building with separate debug symbols 2021-06-29 11:49:20 +02:00
Jérôme Gardou
79c2972035 [NTOS:KD] Release lock before calling KdpPrint
Avoiding resursive spinlock acquisition
2021-06-29 11:49:20 +02:00
Jérôme Gardou
608032bd08 [NTOS:KD64][NTOS:KDBG] Fix spinlocks use
Raise IRQL before entering debugger, so that KeAcquireSpinLockAtDpcLevel works as expected.
 - HIGH_LEVEL since we don't know where we are coming from.

Do not try to read debug symbol from files in KDBG.
 - There is no reason that this works if Mm didn't map it in the first place.
2021-06-29 11:49:20 +02:00
Jérôme Gardou
5c332f6d36 [CMAKE] Get rid of freeldr_pe_dbg target
objcopy bug is now solved and I can't remember how this used to work anyway.
Use strip instead.
If you need to debug freeldr
 - set SEPARATE_DBG cmake var to TRUE
 - use qemu GDB stub
 - In GDB : add-symbol-file <build_dir>/symbols/freeldr_pe.exe
2021-06-29 11:49:20 +02:00
Jérôme Gardou
66dea86d68 [NTOS:KDBG] Use internal KdpDPrintf instead of DbgPrint
DbgPrint is implemented through a breakpoint, and then KD tries to recursively
lock its own spinlock. Call a lower level routine instead.
2021-06-29 11:49:20 +02:00
Jérôme Gardou
813d9cd2cc [WIN32K:NTUSER] Do not pass NULL keyboard layout to IntToUnicodeEx
There's an ASSERT on that
2021-06-29 11:49:20 +02:00
Jérôme Gardou
8d665f8959 [KMTESTS] Fix tests for uniprocessor checked build 2021-06-29 11:49:20 +02:00
Jérôme Gardou
e312a40ae2 [NTOS:KE] Implement KeAcquireInStackQueuedSpinLockForDpc & KeReleaseInStackQueuedSpinLockForDpc 2021-06-29 11:49:20 +02:00
Jérôme Gardou
56d0bc31ce [HAL] Hack KeTryToAcquireQueuedSpinlock & KeTryToAcquireQueuedSpinLockRaiseToSynch into a somewhat working implementation 2021-06-29 11:49:20 +02:00
Jérôme Gardou
91587a432b [NTOS:MM] Fix another instance of reentrant spinlock acquisition 2021-06-29 11:49:20 +02:00
Hermès Bélusca-Maïto
31322f5df9 [CONUTILS:PAGER][MORE] Implement text line caching + fix some bugs.
- Implement caching of individual (newline-separated) text lines; this
  behaviour can be enabled with a flag (enabled by MORE):
  CON_PAGER_CACHE_INCOMPLETE_LINE.
  This feature is necessary when reading a text file, whose text lines
  may span across two or more successive temporary read buffers, and is
  required for correctly determining whether the lines being read are
  blank and may be squeezed.

- When squeezing blank lines, the blank-line check must be done for each
  line segment corresponding to the screen line (and following) that
  need to be displayed. This matches the behaviour of MS MORE.COM.

- Fix the IsBlankLine() check to not consider FORM-FEEDs as being blank
  characters: This is necessary for correctly handling FORM-FEED
  expansion. Also note that MS MORE.COM only checks for spaces and TABs,
  so we are slightly overdoing these checks (considering other types of
  whitespace).

- Get rid of ConCallPagerLine() and the intermediate CON_PAGER_DONT_OUTPUT
  state flag that were used repeatedly for each and every small line
  chunks. Instead, call directly the user-specified 'PagerLine' callback
  when we are about to start treating the next line segment to be
  displayed (see comment above).

- Fix the exit return condition of ConPagerWorker(): it should return
  TRUE whenever we displayed all the required lines, and FALSE otherwise.
  Otherwise, the previous (buggy) condition on the data being read from
  the text file, may lead to the prompt not showing when a screenful of
  text has been displayed, if it happened that the current text buffer
  becomes empty at the same time (even if, overall, the text file hasn't
  been fully displayed).

- In MorePagerLine(), when we encounter for the first time a blank line
  that will be squeezed with other successive ones, display a single
  blank line. But for that, just display one space and a newline: this
  single space is especially needed in order to force line wrapping when
  the ENABLE_VIRTUAL_TERMINAL_PROCESSING or DISABLE_NEWLINE_AUTO_RETURN
  console modes are enabled. Otherwise the cursor remains at the
  previous line (without wrapping), and just outputting one newline will
  not make it move past 2 lines as one would naively expect.
2021-06-28 21:26:32 +02:00
Hermès Bélusca-Maïto
aff90f530c [CONUTILS:PAGER] Extract the character-specific handling out of the character-loop.
This also allows to factor out the ConCallPagerLine() call for outputting the pending text.
2021-06-28 21:26:32 +02:00
Hermès Bélusca-Maïto
ff445ca184 [CONUTILS:PAGER][MORE] Fix the default paging region.
- The column extent should cover the whole width of the console screenbuffer.
  On the contrary, the line extent covers only the number of lines that
  cover the current displayed console window.

- Since the console can be resized while the pager is prompting, we need
  to actually recalculate in the prompt routine the default number of
  lines for a screen.

- Reset s_nNextLineNo when paging a new file.
2021-06-28 21:26:31 +02:00
Hermès Bélusca-Maïto
f74a3f6e29 [CONUTILS:PAGER][MORE] Code style/formatting.
- Shorten the names of the flags: CON_PAGER_FLAG_*** --> CON_PAGER_***.
- Reorder few members in the CON_PAGER pager structure where they make sense.
- ScreenColumns, ScreenRows --> PageColumns, PageRows: keeping the open
  possibility for having a pager controlling a region of different size
  than the screen.
- Add doxygen documentation for ConWritePaging().
2021-06-28 21:26:30 +02:00
Victor Perevertkin
1c7f3476a0 [CMAKE] Use BUILD_MP CMake option correctly 2021-06-28 17:54:09 +03:00
Jérôme Gardou
ada609bdbc [PSDK] Alias _Check_return_ annotation to warn_unused_result attribute 2021-06-28 10:20:57 +02:00
Jérôme Gardou
e10892e4f4 [CRT] Put __MINGW_EXTENSION (whatever that means) in front of function declarations
Needed for next commit
2021-06-28 10:20:57 +02:00
Jérôme Gardou
d1f5c31820 [SDK] Add GCC overrides for SAL annotations
GCC has some functions, variables & type attributes which can be used as aliases
for some of the SAL annotations. Although it's not as rich & precise, it's still useful
since we actually enable -Werror on GCC builds whereas we don't use such an option
on MSVC builds.

For now, _Must_inspect_result_ is aliased to warn_result_unused attribute.
2021-06-28 10:20:57 +02:00
Jérôme Gardou
a28a34f108 [NDK][XDK] Remove _Must_inspect_result_ from RtlTimeFieldsToTime & RtlTimeToSecondsSince1970
WDK doesn't have it and it causes more mess than anything.
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
28c5f7538a [DDK] Do not put _Must_inspect_result_ on function returning void & without _Out_ parameters 2021-06-28 10:20:57 +02:00
Jérôme Gardou
46af941c4c [NTOS:FSRTL] Check return status of FsRtl locking functions
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
e55eeb2d9c [WDF] Synchronize function attributes between declaration & definition
Addendum to 1f377076d7
2021-06-28 10:20:57 +02:00
Jérôme Gardou
d924cb8271 [NTOS:CONFIG] Do not ignore Rtl*String functions return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
3ad38f29b5 [NTOS:OB] Use RtlInitUnicodeString for constant string
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
8178996559 [NTOS:SE] Do not ignore SepAccessCheckAndAuditAlarmWorker return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
07d38cd4c5 [NTOS:PO] Do not ignore IoRegisterPlugPlayNotification return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
230e6b9492 [NTOS:INBV] Do not ignore RtlUnicodeStringToOemString return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
838abc475c [NTOS:IO] Do not ignore RtlDuplicateUnicodeString return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
cf1a95a588 [NTOS:EX] Do not ignore PsCreateSystemThread return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
93c0d324e0 [NTOS:EX] Do not ignore RtlAnsiStringToUnicodeString return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
376fbc5242 [NTOS:MM] Check result of RtlCreateUnicodeString in MmGetFileNameForAddress
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
3f16c8615c [NTOS:IO] Check RtlCreateUnicodeString return value when initializing PnP services
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
24a4e12a76 [NTOS:IO] Check RtlAnsiStringToUnicodeString return value when initializing Arc names
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
293f823053 [NTOS:IO] Check RtlAnsiStringToUnicodeString return value when initializing ramdisk
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
e961958823 [NSLOOKUP] Check WSAStartup return value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
6bf64780e4 [NET] Properly check return value of EnumServicesStatusW on first call 2021-06-28 10:20:57 +02:00
Jérôme Gardou
5aafeb473f [FLTMC] Do not ignore failures of some functions
Also reduce use of magic values.

CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
46394ab80d [RTL] In RtlReleasePrivilege, raise exception if restoring old privileges fails
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
fb9ebe17bf [RTL] When taking system volume ownership, assert that we succeeded to restore privileges
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
9c5b39e25a [RTL] Check and cascade down RtlGUIDFromString value
CORE-17637
2021-06-28 10:20:57 +02:00
Jérôme Gardou
900b6a5d56 [FREELDR] Check HwInterrupt return value
_Must_inspect_result_ is there for a reason
CORE-17637
2021-06-28 10:20:57 +02:00
Timo Kreuzer
8a68820429 [SDK] Add missing sal annotations in driverspecs.h and kernelspec.h
CORE-6706
2021-06-28 08:48:59 +02:00
Hermès Bélusca-Maïto
e7a5850d65 Revert "[SHELL32] Don't check for link files being targets for other link files. Addendum to 3a822e4f."
This reverts commit 3249a00364.
2021-06-28 04:11:00 +02:00
Hermès Bélusca-Maïto
3199fdbd44 [SHLWAPI] Fix a trivial bug in PathFileExistsDefExtW() that seems to exist since 16+ years in Wine.
Suppose dwFlags == 1 | 4 (i.e. skipping the flag 2).
Then the while-loop would only run once, because at the second iteration
(after dwWhich >>= 1; has been executed once), dwWhich value == 2, but
dwWhich & 0x1 == 0, which makes the while-loop condition false.
Instead the loop should run, but the handling of the extension should be
skipped.
2021-06-28 02:19:31 +02:00
Hermès Bélusca-Maïto
8ec3580123 [SHELL32] Add the handy WHICH_DEFAULT value to the list of flags in shlwapi_undoc.h.
- Add as well the undocumented 0x40 dwFlags value from shlwapi!PathFileExistsDefExtW()
  to the list.

- Fix a bug (also present in Win2k3) in PathResolveW() where, specifying
  the PRF_DONTFINDLNK flag, would also erroneously exclude checking for
  the .cmd extension as well (which was obviously NOT the original
  intention, from the name of the flag and the documentation as well:
  https://docs.microsoft.com/en-us/windows/win32/api/shlobj_core/nf-shlobj_core-pathresolve
  ).

Addendum to 3a822e4f.
2021-06-28 02:19:30 +02:00
Hermès Bélusca-Maïto
3249a00364 [SHELL32] Don't check for link files being targets for other link files. Addendum to 3a822e4f. 2021-06-28 02:19:30 +02:00
Joachim Henze
adee5ca255 [COMCTL32] Addendum to last commit (#3674) CORE-17199
Keep that section like we had it to
support compilation on VS2010.
It does still work like that.

Addendum to commit 0.4.15-dev-2796-g e382b7bc35
2021-06-28 02:05:56 +02:00
Doug Lyons
e382b7bc35 [COMCTL32] Sync datetime.c to Wine-6.0 (#3674) CORE-17199
Fix automatic toggling of date display on second stage setup
Update comctrl from Wine with fix.

Sync datetime.c to Wine-6.0
2021-06-28 01:18:10 +02:00
Katayama Hirofumi MZ
3a822e4f74 [SHELL32] Implement PathResolveW function (#3762)
- Implement PathResolveW function.
- Implement PathQualifyA/W functions using newly-defined PathQualifyExW function.
CORE-12665
2021-06-28 07:53:26 +09:00
Joachim Henze
81f8bcea8c [DSOUND][WAVE] Workaround crash when recording sound in Scratch 1.4 CORE-13202
It regressed by SVN r44721 == git 356d4bab16092de335705e02b0e87698ec35c393
when #define USE_MMIXER_LIB was removed.

Thanks to the patches author Doug Lyons.

VBox https://reactos.org/testman/compare.php?ids=77914,77919 LGTM
 KVM https://reactos.org/testman/compare.php?ids=77913,77918 LGTM
2021-06-27 23:04:36 +02:00
Hervé Poussineau
979b7d4d8e [TCPIP] Fix bugcheck when using fragmented datagrams
Memory was allocated from paged pool, and freed at DISPATCH_LEVEL,
leading to the following bugcheck:

*** Fatal System Error: 0x000000c2
                       (0x00000009,0x00000002,0x00000001,0xB7C8A268)

Entered debugger on embedded INT3 at 0x0008:0x8058324B.
kdb:> bt
Eip:
<ntoskrnl.exe:18324c (sdk/lib/rtl/i386/debug_asm.S:56 (RtlpBreakWithStatusInstruction))>
<ntoskrnl.exe:89b21 (ntoskrnl/ke/bug.c:1066 (KeBugCheckWithTf))>
<ntoskrnl.exe:8a08b (ntoskrnl/ke/bug.c:1413 (KeBugCheckEx))>
<ntoskrnl.exe:abb1d (ntoskrnl/mm/ARM3/expool.c:431 (ExFreePoolWithTag))>
<tcpip.sys:13e42 (sdk/lib/drivers/ip/network/receive.c:114 (FreeIPDR))>
<tcpip.sys:14e09 (sdk/include/ddk/wdm.h:11462 (IPDatagramReassemblyTimeout))>
<tcpip.sys:11604 (sdk/lib/drivers/ip/network/ip.c:135 (IPTimeoutDpcFn))>
<ntoskrnl.exe:8b7d0 (ntoskrnl/ke/dpc.c:282 (KiTimerExpiration))>
<ntoskrnl.exe:8c2c8 (ntoskrnl/ke/dpc.c:592 (KiRetireDpcList))>
<ntoskrnl.exe:1420b2 (ntoskrnl/ke/i386/thrdini.c:294 (KiIdleLoop))>
<ntoskrnl.exe:23a54a (ntoskrnl/ke/i386/kiinit.c:687 (KiSystemStartupBootStack))>
2021-06-27 17:45:53 +02:00
Joachim Henze
cb408102cc [EXT2] Fix filesystem corruption regressions CORE-17572 CORE-17195
It regressed when we upgraded Ext2Fsd to version 0.69 from version 0.68
via CORE-13980 in 0.4.8-dev-117-g a1d7e9936d

The fix is a partial revert of that.
Thanks to the patches author Doug Lyons.

VBox https://reactos.org/testman/compare.php?ids=77904,77908 LGTM
KVM https://reactos.org/testman/compare.php?ids=77903,77907 LGTM
2021-06-27 16:21:32 +02:00
Timo Kreuzer
16e988d108 [HAL:APIC] Improve code
- Use an enum for the APIC registers
- Add support routine for SMP.
2021-06-26 21:10:43 +02:00
George Bișoc
e8277e51e2 [CSRSS] Fix MSVC AMD64 build 2021-06-25 12:42:02 +02:00
George Bișoc
03636df1e3 [CSRSS] Enable compilation of raise hard error function call code
With introduction of 74e527b, a330b56 and subsequently 2791ecd ReactOS can now properly set IOPL (I/O privilege level) for user mode trusted processes. With that said, enable the compilation of raise hard error function call code back.
2021-06-25 11:55:35 +02:00
George Bișoc
f144ba8d8b [CSRSS] Do not give IOPL to the Client/Server native process if ran on a AMD64 system
ProcessUserModeIOPL is strictly implemented for 32-bit architecture so it doesn't make any sense for CSRSS to gather user mode I/O privilege when that won't work anyway.
2021-06-25 10:33:28 +02:00
George Bișoc
2791ecd303 [NTOS:PS] Fix several issues within info classes in AMD64 build
ProcessUserModeIOPL, ProcessWow64Information and ThreadZeroTlsCell classes fail on AMD64 build because of wrong IQS values assigned to them. Also explicitly tell the compiler that ProcessUserModeIOPL is strictly for x86 as user mode I/O privilege level is 32-bit stuff.
In addition to that, implement IQS_NO_TYPE_LENGTH macro which it'll be used for classes such as ProcessUserModeIOPL where type length is not required and that it should be 0. With that said, we indirectly fix a size length mismatch issue with ProcessUserModeIOPL on 32-bit of ReactOS as well.
2021-06-25 10:33:18 +02:00
Jérôme Gardou
59cddd15e2 [NTOS:MM] Implement MmFlushImageSection(MmFlushForDelete)
CORE-17544
2021-06-25 10:28:51 +02:00
Jérôme Gardou
b3e9c89725 [NTOS:MM] Simplify refcounting when adding/deleting a page in a shared segment
CORE-17544
2021-06-25 10:28:51 +02:00
Jérôme Gardou
bec42b6530 [NTOS:MM] Do not call ExAllocatePool* with PFN lock acquired
Unsurprisingly, it actually might acquire it
2021-06-25 10:28:51 +02:00
He Yang
42e111f26b [ATL] Close m_hKey in CRegKey destructor and when attaching to a new key (#3764) 2021-06-24 23:50:01 +02:00
Jérôme Gardou
aa2697df2d [NTOSKRNL] Enforce -fno-common on GCC & CLang builds 2021-06-24 18:48:31 +02:00
Jérôme Gardou
c6e9fea844 [NTOSKRNL] Deduplicate some symbols 2021-06-24 18:48:31 +02:00
Jérôme Gardou
1c5ce8d11c [NTOS:MM] Fix-up call site of traced PFNs when serving a page fault 2021-06-24 18:48:31 +02:00
Jérôme Gardou
146337cc50 [NTOS:MM] Save caller address when tracing PFNs 2021-06-24 18:48:31 +02:00
Jérôme Gardou
aae161d061 [CMD] Do not use an intermediate buffer when reading lines from batch files
This is easier on the heap and improves cmd:batch winetest nicely
2021-06-24 15:03:36 +02:00
Jérôme Gardou
5ca83e516c [CMD] Improve performance a bit
Do not use custom alloc/free functions by default.
Do not free resources at process exit.
 - You're doing it brick by brick while the OS  & CRT do that with a bulldozer better than you do.
2021-06-24 15:03:36 +02:00
Joachim Henze
4130f0b1c5 [WIN32K] CreateDIBPalette addendum to #3758 CORE-17626
Fix compilation on older GCC4.7.2 toolchain
to not warn about universal zero initializer.
See
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119
https://stackoverflow.com/questions/13746033/how-to-repair-warning-missing-braces-around-initializer
2021-06-23 21:37:53 +02:00
Joachim Henze
c596fd3ef6 [WIN32K] CreateDIBPalette SEH Simplification #3758 CORE-17626
Enter an SEH2_TRY one time and do all testing within it instead of entering the SEH_TRY multiple times.

The commit is an addendum to 0.4.15-dev-2734-g 514147776a

Thanks to patches author Doug-Lyons

This is 1:1 the final approved content of #3758, but I committed
by hand and closed the PR to avoid squash+rebase.
2021-06-23 19:59:42 +02:00
Jérôme Gardou
c8ce0cc434 [NTOS:MM] Fix one occurrence of MiDeletePte instead of MiDeletePde 2021-06-22 12:05:20 +02:00
Serge Gautherie
c2e454b439 [NTOS:CC] CcRosFlushVacb(): Fix Iosb annotation
Addendum to 2ba1926.
2021-06-22 10:33:45 +02:00
Serge Gautherie
eab2bb4b20 [NTOS:MM] MmFlushSegment(): Fix Iosb annotation
Addendum to 90c6a65.
2021-06-22 10:33:45 +02:00
Stanislav Motylkov
6d441f7d65 [XBOX][FREELDR] Initialize PCI-AGP bridge BAR values
This fixes problem with Xbox GPU not being detected as a children device.

CORE-17600 CORE-16216
2021-06-22 02:42:04 +03:00
Eric Kohl
13073e1acb [UMPNPMGR] PNP_GetDeviceStatus: Add status checks as documented in MS-PNPR
CORE-17527
2021-06-22 00:02:56 +02:00
Eric Kohl
37f38a80de [SAMSRV] Fix call to SamrCloseHandle in SamrGetDomainPasswordInformation 2021-06-21 21:38:42 +02:00
Eric Kohl
830e15b622 [UMPNPMGR] Add missing parameter checks to PNP_GetDeviceStatus 2021-06-21 21:33:24 +02:00
Jérôme Gardou
41de1bd724 [NTOS:KE] Do not allow waiting at IRQL >= DISPATCH_LEVEL when providing a timeout in KeWaitForMultipleObjects
CORE-6473
2021-06-21 11:42:01 +02:00
Jérôme Gardou
27fcfe66a2 [TCPIP][IP] Use an ERESOURCE as mutex for address files & connection end points
Spinlocks are not reentrant (and this is done a lot), using them forces us to have
an horrible hack in the kernel, which unschedules threads which are at DISPATCH_LEVEL
thus allowing another thread to take ownership of the spinlock while the unscheduled
thread should already hold it.

CORE-6473
2021-06-21 11:42:01 +02:00
Joachim Henze
10e48faf1d [USETUP] Update de-DE
Translate the Copying-bootloader status bar text
that was added during 0.4.15-dev'ing
2021-06-21 07:37:58 +02:00
Stanislav Motylkov
5697b48583 [NE2000] Add description for Realtek RTL8019AS (emulated by 86Box) 2021-06-20 20:20:16 +03:00
Stanislav Motylkov
6924b8ff39 [NE2000] Combine two INF files into one for ISA and PCI cards 2021-06-20 20:16:33 +03:00
Stanislav Motylkov
7b3691df8a [INF] machine.inf: Improve Russian translation 2021-06-20 16:58:07 +03:00
Stanislav Motylkov
c81e06ddc2 [INF] machine.inf: Minor whitespace fixes 2021-06-20 16:56:42 +03:00
Dmitry Borisov
18b4cc1479 [ISAPNP] Start the driver early in the boot
Because our child devices can have boot-start drivers
2021-06-20 19:24:32 +06:00
Dmitry Borisov
adac7dc2e5 [ISAPNP] Implement device configuration 2021-06-20 19:24:32 +06:00
Dmitry Borisov
8939abf113 [ISAPNP] Disable bus scan on unsupported platforms
This speeds up boot a bit and also decreases binary size.

- Introduce a new CMake define ISAPNP_ENABLE that defined only in x86 platform
  when ISA PnP is supported.
2021-06-20 19:24:32 +06:00
Dmitry Borisov
e318d22940 [ISAPNP] Disable I/O range check before activation
See Table A-2 of "Plug and Play ISA Specification 1.0a"
2021-06-20 19:24:31 +06:00
Dmitry Borisov
367f4b1581 [ISAPNP] Map configuration states to PnP states
Rework the hardware support code to avoid unneeded transitions
between configuration states.
- Only call WaitForKey when needed.
- Each PnP state transition causes the bus to move to WaitForKey state.

Besides, deactivate logical device during processing remove request.
2021-06-20 19:24:31 +06:00
Dmitry Borisov
d6dca83baf [ISAPNP] Reduce software delay 2021-06-20 19:24:31 +06:00
Dmitry Borisov
8ed43b6907 [ISAPNP] Fix descriptors and support alternative configurations
- Fix empty resource descriptors being created.
- Properly support IRQ descriptors.
- Introduce four helpers made to help search descriptors
  in the logical device's requirements.
- Implement support for memory descriptors and alternative configurations.
- DMA descriptors are always DMA_8.
2021-06-20 19:24:31 +06:00
Dmitry Borisov
b29a3ac524 [ISAPNP] Read all resources when detecting devices 2021-06-20 19:24:31 +06:00
Dmitry Borisov
ca42de9c31 [ISAPNP] Rewrite the tag parser
- Support all resource descriptors.
- Optimize card identification.
- Detect cards that is no longer present on the bus.
- Deactivate cards after the identification phase; they will be activated
  by start device IRP.
- Provide a device description and compatible IDs to the device manager.
- Prevent duplicate IDs across multiple logical devices.
- Suppress warning about the usage of literals in port addresses.
2021-06-20 19:24:31 +06:00
Dmitry Borisov
7c897dfbd1 [ISAPNP] Use the correct types for helper functions 2021-06-20 19:24:31 +06:00
Dmitry Borisov
c4b6330b14 [ISAPNP] Implement the Read Port resource management
Currently disabled until the kernel is ready
2021-06-20 19:24:31 +06:00
Dmitry Borisov
f15de15554 [ISAPNP] Fixes and improvements for IRP handling
- Implement device removal.
- Finish the Read Port special handling
  introduced in 21514e473f.
- Gracefully handle low memory situations.
- Implement IRQ translator.
- Correctly stub power IRP handling.
- Remove unneeded dispatch routines; implement WMI IRP handling.
- Do not handle requests like WRITE_CONFIG.
- Add a signature member to device extensions to make checks clearer.
2021-06-20 19:24:26 +06:00
Dmitry Borisov
e19595572a [ISAPNP] Implement querying bus information 2021-06-20 19:24:25 +06:00
Dmitry Borisov
8f36dee6ff [ISAPNP] Properly count descriptors
Fixes random pool corruptions
2021-06-20 19:24:25 +06:00
Dmitry Borisov
2d367001bd [ISAPNP] Fix device capabilities
- The bus does not supply an address.
- Read Port ID is always unique.

This reverts commit fc0a0b9f84.
See also commit 21514e473f.

CORE-17034
2021-06-20 19:24:19 +06:00
Dmitry Borisov
21514e473f [ISAPNP] Make Read Data Port PDO unique
This PDO is created only once during start of first FDO.
Other buses will remain in an inactive state until
the first FDO receives a remove request.

CORE-17034
2021-06-20 19:22:32 +06:00
Dmitry Borisov
c92bec609b [ISAPNP] Refactor string handling
- Don't allocate string buffers twice.
2021-06-20 19:22:32 +06:00
Dmitry Borisov
70ba96f164 [ISAPNP] Make the driver pageable 2021-06-20 19:22:31 +06:00
Dmitry Borisov
66c195755c [ISAPNP] Use pool tagging 2021-06-20 19:22:31 +06:00
Dmitry Borisov
8f44930f91 [ISAPNP] Code formatting
- Add SAL2 annotations.
- Use RTL_NUMBER_OF macro in kernel mode.
- Use better function/member names.
- Less hardcoded values.
- Add license information. See commit
  d9face83c6 for details.

No functional changes.
2021-06-20 19:22:31 +06:00
Serge Gautherie
ba77a09c04 [UNIATA] Workaround random crashes on Virtual PC (#3377)
I am not sure why this line was added.
I don't know how I could improve that case.
Then, disable it, for the time being.

Addendum to 4b9cf2e (r71252). CORE-12441 CORE-17371
2021-06-20 00:44:09 +03:00
Serge Gautherie
d65d4137d3 [UNIATA] BusMasterAdapters[]: 8086:7111 is really PIIX4, not PIIX3
Reverts a part of deaba45 (r57265).
2021-06-20 00:34:23 +03:00
Eric Kohl
be65a8568b [SAMLIB] Check the server name in the binding routine 2021-06-19 21:51:06 +02:00
Eric Kohl
5b6e8af1bd [SAMLIB] SamConnect: Pass a zero-terminated server name to SamrConnect 2021-06-19 20:29:24 +02:00
Stanislav Motylkov
a4405f9610 [PCI] Filter out devices with null vendor and device ID
Some virtual machines errorneously expose null PCI device function
on PIIX4 chipset where an USB controller should normally reside.

Windows pci.sys driver does not enumerate these devices.

Affected virtual machines:
- Connectix Virtual PC 5.1.370
- Connectix Virtual PC 5.2.418
- Microsoft Virtual PC 2004 SP1 (5.3.582.27)
- Microsoft Virtual PC 2007 SP1 (6.0.156.0)

Non-affected virtual machines:
- Connectix Virtual PC 4.0
- Microsoft Hyper-V

Fixes CORE-17636.
2021-06-19 20:58:27 +03:00
Doug Lyons
c7954134d0 [WIN32K] Revert incorrect part of R50928 for RealizePalette. (#3678)
Revert incorrect code for Realize Palette
Revert part of SVN R50928 that causes Durak card suites to have wrong colors.
SVN r50928 == git 5de8339cd1

JIRA issue: CORE-13748 <= Durak Example
JIRA issue: CORE-16510 <= GDIProg Example

The patch also fixes 2 crashes on each bot, although
it was not targeted for that explicitly:
KVM: https://reactos.org/testman/compare.php?ids=77304,77308 LGTM
VBox: https://reactos.org/testman/compare.php?ids=77305,77309 LGTM
2021-06-19 18:25:03 +02:00
Joachim Henze
514147776a [NTGDI] Fix potential BSOD 0x1E CORE-17626
in CreateDIBPalette() when passing invalid arguments to CreateDIBSection.
This could be triggered by using the broken test-application "GDIProg".

After this patch not only the BSOD is fixed but also the app does
properly start up, like it is the case on 2k3sp2.

Thanks to the patches author Doug Lyons.
2021-06-19 17:41:49 +02:00
Mark Jansen
560fdd150a [SDK] Add script to check includes with modified struct packing 2021-06-19 16:30:21 +02:00
Timo Kreuzer
b627352815 [NTOS][SETUP] Add x64 SMP kernel and make SMP the default boot mode on x64 2021-06-19 12:17:18 +02:00
Timo Kreuzer
400af0cfc5 [HAL] Add smp component and build x64 smp hal
Like the up component it contains the spinlock code and now also the HalpBuildType variable.
2021-06-19 12:17:18 +02:00
Timo Kreuzer
396167bc7e [NTOS:MM] Improve an ASSERT 2021-06-19 12:17:18 +02:00
Timo Kreuzer
33949028fb [NTOS:MM] Fix PFN lock usage 2021-06-19 12:17:18 +02:00
Timo Kreuzer
f4d47faeb7 [NTOS:KE] Fix usage of KTHREAD::SwapBusy 2021-06-19 12:17:18 +02:00
Timo Kreuzer
a011d19ed2 [NTOS:KE] Fix some locking issues 2021-06-19 12:17:18 +02:00
Timo Kreuzer
62f62da8ba [NTOS:KE] Fix KxReleaseSpinLock for 64 bit SMP builds 2021-06-19 12:17:18 +02:00
Timo Kreuzer
2ed56fa794 [NTOS] Fix build with CONFIG_SMP 2021-06-19 12:17:18 +02:00
Timo Kreuzer
a0fb02f7f3 [HAL] Fix build with CONFIG_SMP 2021-06-19 12:17:18 +02:00
Timo Kreuzer
d0f6d2cf6e [FREELDR/x64] Allow using memory above 4GB on x64
This splits MM_MAX_PAGE into the maximum addressable PFN (which is 2^20-1 on x86, 2^26-1 on x86PAE and 2^36-1 on x64) and the maximum mapped/accessible virtual memory MM_MAX_PAGE_LOADER (which is 4 GB on x86, since paging is disabled, but only 1 GB on x64, since only that much is identity-mapped).
2021-06-19 12:01:24 +02:00
Timo Kreuzer
e6fa62a8d2 [NTOS:MM/x64] Fix Interlocked(Compare)ExchangePte and PAGE_FROM_SSE for x64
This fixes using PFNs with more than 20 bits.
2021-06-19 12:01:24 +02:00
George Bișoc
5912c11650 [NTOS:SE] Minor refactor on NtOpenThreadTokenEx
- Remove a redundant call of ObReferenceObjectByHandle. Not only it didn't make much sense (we reference the object from thread handle and the new thread object referencing the same handle!), specifying a request access of THREAD_ALL_ACCESS for the thread object is kind of suspicious and all of these access rights are unwanted.
- Add some failure checks involving the CopyOnOpen code paths
- Add some DPRINT1 debug prints (concerning the CopyOnOpen code paths as usual)
2021-06-18 18:38:12 +02:00
Timo Kreuzer
5ee09256de [HAL] Add APIC hals to setup and livecd 2021-06-17 23:27:44 +02:00
Timo Kreuzer
64e52088d1 [HAL:APIC] Fix interrupt assignment
This is probably not how it is supposed to work, but the results are somewhat similar to what Windows has.
2021-06-17 23:27:44 +02:00
Timo Kreuzer
235d7472ba [HAL:APIC] Remove obsolete hacks
These hacks were used to work around broken VBox. VBox works fine without the hacks these days.
2021-06-17 23:27:44 +02:00
Timo Kreuzer
b7a149fcec [HAL:APIC] Code fixes
* Fix some broken code
* Add some ASSERTs
* Use ApicWriteIORedirectionEntry where appropriate
* Use KeQueryInterruptHandler/KeRegisterInterruptHandler to save/restore the old handler instead of saving the KIDTENTRY
* Move HalpProfileInterruptHandler to apictimer.c and implement it
* Use READ/WRITE_REGISTER macros
* Add some symbolic names
2021-06-17 23:27:44 +02:00
Timo Kreuzer
ee514e954b [MINIHAL] Compile less stuff 2021-06-17 23:27:44 +02:00
Timo Kreuzer
7243503916 [HAL] Rename apic.h to apicp.h and move it back to the apic folder 2021-06-17 23:27:44 +02:00
Hermès Bélusca-Maïto
4864c874a2 [NTOS:IOPNP] Both PNP_PROPERTY_REMOVAL_POLICY_OVERRIDE and PNP_PROPERTY_LOCATION_PATHS are unimplemented, return such status.
Fixes CID 1441387: Uninitialized scalar variable (UNINIT),
in the case of PNP_PROPERTY_LOCATION_PATHS.
2021-06-17 00:35:22 +02:00
Hermès Bélusca-Maïto
f2645e48b9 [NTOS:IO] Comment out (and explain why it is there) an unused LdrEntry assignment in IopInitializeBootDrivers(). CID 1237114 2021-06-17 00:35:22 +02:00
Hermès Bélusca-Maïto
fe416b67dc [NTOS:IO] Revert part of commit a82ff90b2: don't do direct ULONG data access: it might be unaligned.
Requested by Victor.
2021-06-17 00:35:21 +02:00
Hermès Bélusca-Maïto
32a82eb123 [NTOS:IO] Fix driverName.Buffer leak in some failure paths in IopGetDriverNames().
driverName.Buffer leaked when the "(!NT_SUCCESS(status) || ServiceName != NULL)"
case is taken because ServiceName != NULL, and some of the functions fail.
2021-06-16 22:18:02 +02:00
Hermès Bélusca-Maïto
e09d1dec7a [NTOS:IO] Fix basicInfo handling in IopGetDriverNames().
- Fix CID 1477246: Uninitialized pointer read (UNINIT) (happens in
  the last ExFreePoolWithTag(basicInfo, TAG_IO) call when the
  "(!NT_SUCCESS(status) || ServiceName != NULL)" case is not taken).

- Centralize all the ExFreePoolWithTag(basicInfo, TAG_IO) cleanups
  at the end of the function.

- Both cases "(driverName.Buffer == NULL)" and "(ServiceName != NULL)"
  can only be taken when basicInfo != NULL, so assert on this fact.
2021-06-16 22:18:02 +02:00
Hermès Bélusca-Maïto
0d28f27156 [NTOS:IO] Fix similar bugs in IopGetDriverNames(), IopInitializeBuiltinDriver() and IopLoadDriver().
- As they are initialized, some registry string values must be NULL-terminated.
- When retrieving REG_DWORD registry values, validate their length.
2021-06-16 22:14:01 +02:00
Hermès Bélusca-Maïto
a82ff90b21 [NTOS:IO] Minor code style changes...
- Fix/add comments;
- Reduce indentation level;
- Direct copy for registry integer values;
- Use for-loops for linked lists;
- Use ULONG when the API uses it (sizes for Ob, or REG_DWORD data in registry).
2021-06-16 22:14:01 +02:00
Joachim Henze
d042f51838 [LDR] Restore Logging when images overlap CORE-17635
This reverts
0.4.13-dev-284-g 74be88ac47

The logging is helpful to alert us when we should really
recalculate the base addresses for performance reasons.
Spams a bit sometimes, sure, but it's worth it!
2021-06-16 13:38:51 +02:00
Victor Perevertkin
3f601122bc [NTOS:MM] Fix placing entries into MmNonPagedPoolFreeListHead
When freeing pages, free page entries with pages num == 3 were
incorrectly treated as entries with pages num >= 4 and thus
their re-insertion was not triggered. That lead to non paged pool
fragmentation (can be triggered by kmtest:ExPools, for example)

Also, altered the index acquisition code for MmNonPagedPoolFreeList
entries so it looks more clear
2021-06-16 12:14:27 +02:00
Joachim Henze
a3cadf630a [COMCTL32] Strip EOL whitespace within ifdef __REACTOS__ section
no functional change.
Make that look beautiful before porting it back further.

Addendum to 0.4.15-dev-534-g 887764e607
(CORE-17062)
2021-06-16 11:41:56 +02:00
Joachim Henze
d5265b07bb [MSI] Enumerate only type DRIVE_FIXED CORE-17623 (& CORE-14432)
MSI on 2k3sp2 hides empty CD-ROM, and hides CD-ROM with iso mounted.
MSI on 2k3sp2 hides VBox shares, both: writable and read-only-ones.
MSI on 2k3sp2 hides floppy drives with a floppy img mounted.
MSI on XPSP3 hides a mounted writable USB stick.

Thanks to the patches author Doug Lyons.

This patch supersedes
0.4.15-dev-2651-g 864e20b881 (CORE-14432)
and we are also better than Wines
0dd0d879a1
2021-06-13 15:30:49 +02:00
Victor Perevertkin
05fb0f1c39 [GITIGNORE] Add compile_commands.json and .cache folder for clangd cache 2021-06-13 01:55:52 +03:00
Adam Słaboń
9764fde2d9 [WIN32K] Add x64/arm exports
Checked against Windows XP x64 and Windows 8 ARM.
2021-06-12 14:11:14 +02:00
Victor Perevertkin
34593d933b [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
Hermès Bélusca-Maïto
4b4ffa92f5 [NTOS:IO] Modify when 'PartitionBuffer' and how 'DriveLayout' are freed in IopCreateArcNamesDisk().
- Manage the lifetime of the temporary 'PartitionBuffer' buffer where
  it is locally used only, and free it as soon as possible, just after
  calculating the sector checksum. No need to then free it outside of
  the main for-loop.

- When the 'DriveLayout' buffer is freed, ensure the pointer is NULL-ed
  (and assert this at the top of the main for-loop), since it can also
  be freed at cleanup outside this for-loop, and in this case a NULL
  check is performed.
  This will avoid the scenario of possibly double-freeing a pointer,
  in the case the 'DriveLayout' was previously freed (when e.g. reading
  the sector for checksum calculation failed), then the for-loop goes to
  the next disk and stops early.
2021-06-11 02:21:48 +02:00
Hermès Bélusca-Maïto
fdd74eb97e [NTOS:IO/FSTUB] Fix the determination of 'SingleDisk' in IoGetBootDiskInformation().
The purpose of 'SingleDisk' is the same as in the IopCreateArcNames()
function. It is an optimization for that when looking up the
firmware-recognized ARC disks list, in order to match one of these with
the current NT disk being analysed (see e.g. also in IopCreateArcNamesDisk()),
we avoid a possible IopVerifyDiskSignature() call and directly build a
corresponding ARC name NT symbolic link for it.

'SingleDisk' will actually be TRUE, whether the DiskSignatureListHead
list is empty or contains only one element: Indeed in only both these
cases, 'DiskSignatureListHead.Flink->Flink' will refer to the list head.
(If the list is empty but 'SingleDisk' is TRUE, this does not matter,
because the DiskSignatureListHead looking-up loop never starts.)
2021-06-11 02:21:47 +02:00
Hermès Bélusca-Maïto
99078646c3 [NTOS:IO] Avoid hardcoding variable types in sizeofs when possible. 2021-06-11 02:21:47 +02:00
Hermès Bélusca-Maïto
6e65e6b28d [NTOS:IO] Minor code style fixes (typos; improve comments/DPRINT; IN vs. OUT parameter). 2021-06-11 02:21:47 +02:00
Katayama Hirofumi MZ
afd349a93e [SHELL32_APITEST] Improve ShellExecCmdLine testcase more (#3736)
- Simplify code.
- Loose the condition of success.
- Add some missing tests.
- Close newly opened windows gracefully.
CORE-17351, CORE-16898, CORE-17612
2021-06-11 08:09:18 +09:00
Serge Gautherie
c2317d773e [CMAKE] host-tools: Define ROS_SAVED_* for MSVC_IDE only
Addendum to 18e95f5.
ROSBE-174
2021-06-11 02:08:12 +03:00
Oleg Dubinskiy
6e29107f31 [SOUNDS] Add new Recycle Bin system sound
Add new sound for Recycle Bin sound event.
Since this sound event is now working properly after some fixes in shell32 code, it's now possible for user to set the sound for this sound event manually.
But don't enable it by default, since it is also disabled on Windows Server 2003.
CORE-15868
2021-06-11 02:06:11 +03:00
Mark Jansen
675edad96f [RAPPS] Fix double free when closing rapps 2021-06-10 21:25:34 +02:00
Timo Kreuzer
9229e73f03 [HIDPARSER] Don't include pshpack1.h before including other headers
NEVER DO THIS! It is guaranteed to be wrong. Instead always individually pack single structures that need packing.
This fixes USB mouse on 64 bit builds.
2021-06-10 08:52:22 +02:00
Hermès Bélusca-Maïto
2dbbfe86ab [MORE] Use positional elements to build the MORE prompt, whose state is controlled by flags. 2021-06-10 04:10:55 +02:00
Hermès Bélusca-Maïto
558908e709 [MORE] Update and complete MORE's help usage.
And add french translation.
2021-06-10 02:36:12 +02:00
Jérôme Gardou
e70df4c633 [WIN32K:ENG] In EngLockDriverObj, properly return NULL when locking failed
CORE-15958
2021-06-09 18:27:12 +02:00
Katayama Hirofumi MZ
b552901df5 [MORE][CONUTILS] Implement missing features of the MORE command (#3658)
Implement missing features of the MORE command. Special thanks to @HBelusca. CORE-4019
2021-06-09 23:30:30 +09:00
Jérôme Gardou
afc27ab1aa [NTOS:MM] Handle PT references for page table faults in MmAccessFault
Idea from Timo Kreuzer
2021-06-09 11:27:18 +02:00
Jérôme Gardou
c7e09061ca [NTOS:MM] Get rid of MiQueryPageTableReferences 2021-06-09 11:27:18 +02:00
Timo Kreuzer
6a2eeaa5ae [NTOS] Implement MiIsPageTablePresent as a replacement for the abused MiQueryPageTableReferences 2021-06-09 11:27:18 +02:00
Jérôme Gardou
678923bf4b [NTOS:MM] In MiMakePdeExistAndValid, do not overly check PDE validity
It's "okay" to not #ifdef, but it's useless and confusing.
2021-06-09 11:27:18 +02:00
Jérôme Gardou
c8fb3f7514 [NTOS:MM] Implement proper refcounting of page tables on amd64
CORE-17552
2021-06-09 11:27:18 +02:00
Jérôme Gardou
3aa346c21f [NTOS:MM] Make MiIsEntireRangeCommitted 64-bits aware 2021-06-09 11:27:18 +02:00
Jérôme Gardou
8bfba59b3e [NTOS:MM] Add some DPRINTs when incrementing or decrementing PFN share count 2021-06-09 11:27:18 +02:00
Jérôme Gardou
a80ae8f2ea [NTOS:MM] Make MiCalculatePageCommitment 64-bits aware 2021-06-09 11:27:18 +02:00
Jérôme Gardou
b48e27ada1 [NTOS:MM] Add a few MiP*eToP*e helpers
And turn some of the existing ones into inline functions for the sake of type checking
2021-06-09 11:27:18 +02:00
Jérôme Gardou
ed1038ff9c [NTOS:MM] Properly initialize initial process address space on amd64
By applying the same kludge on the relevant MMPFNs than on x86
2021-06-09 11:27:18 +02:00
Jérôme Gardou
f9ea58dc97 [NTOS:MM] Unconditionally delete the PFN in MiDeletePte when PTE is in transition
When we will have a modified page writer, it will have to know if the written
page is stale when being done, and act accordingly.

CORE-8552
2021-06-09 11:27:18 +02:00
Jérôme Gardou
82dd1afe33 [NTOS:MM] Remove some dead code from legacy Mm 2021-06-09 11:27:18 +02:00
Jérôme Gardou
521d330d04 [CMD] Use GetFullPathName instead of copying buffers when resolving executable names
This properly strips spaces & dots at the end of the file.

Fixes the infinite loop with CreateProcess calling cmd over and over with e.g. 'cmd /c "some_script.bat   "'
Uncovered by recent ShellExecuteEx tests
Dedicated to Katayama for the trigger & Hermès for the tests
2021-06-09 11:23:39 +02:00
Katayama Hirofumi MZ
94d9e9c2a8 [USER32_APITEST] Add SetFocus testcase (#3732)
Investigate about setting keyboard focus. CORE-17550
2021-06-09 16:14:31 +09:00
Victor Perevertkin
d220ea3e3c [HIVESYS] Use "Primary Disk" writing for this driver load order group 2021-06-08 17:29:47 +03:00
George Bișoc
7ca6bfb994 [NTOS:SE] Use IQS_NONE for the first class which is not existent and barely used 2021-06-08 09:26:11 +02:00
George Bișoc
672c9068bb [NTOS:PS] Use IQS_NONE for classes that do not exist 2021-06-08 09:26:11 +02:00
George Bișoc
bbdb4d6340 [NTOSKRNL] Use CHAR for non existent classes
An alignment of 1 means no alignment required and the class doesn't exist. 0 shouldn't be used for alignment requirement in IQS_NONE!
2021-06-08 09:25:30 +02:00
Katayama Hirofumi MZ
c35a84985a [SHELL32_APITEST] Strengthen ShellExecuteEx testcase (#3731)
Investigate shell32!ShellExecuteEx function more. CORE-17351, CORE-16898, CORE-17612
2021-06-08 08:07:37 +09:00
Jérôme Gardou
a5ea259b28 [NTOS:MM] Fix remnants of CORE-17587 2021-06-07 17:04:18 +02:00
Jérôme Gardou
4ddc66f224 [NTOS:MM] Make MI_MAKE_HARDWARE_PTE_KERNEL actually respect the protection it is given
This one would set a page as writable & dirty even if MM_READONLY was passed
CORE-17587
2021-06-07 17:04:18 +02:00
Katayama Hirofumi MZ
46c84779b6 [CPL][APPWIZ] Follow-up of #3726
Sorry, #3726 doesn't fix CORE-5737. CORE-17550
2021-06-07 18:03:49 +09:00
Piotr Hetnarowicz
ab1f844189 [USETUP] Polish translation update (#3715) 2021-06-07 10:31:32 +02:00
Eric Kohl
4db8b82aeb [VIDEOPRT] Fix monitor ID decoding issues 2021-06-06 21:27:00 +02:00
George Bișoc
a330b56787 [NTOS:PS] Enable alignment probing for thread/process information classes
In addition to that, here are some stuff done in this commit whilst testing:

- ICIF_QUERY_SIZE_VARIABLE and friends were badly misused, they should be used only when an information class whose information length size is dyanmic and not fixed. By removing such flags from erroneous classes, this fixes the STATUS_INFO_LENGTH_MISMATCH testcases.

- Use CHAR instead of UCHAR for classes that do not need alignment probing, as every other class in the table do, for the sake of consistency.

- ProcessEnableAlignmentFaultFixup uses BOOLEAN as type size, not CHAR. This fixes a testcase failure on ROS.

- Check for information length size before proceeding further on querying the process' cookie information.

- ProcessHandleTracing wants an alignment of a ULONG, not CHAR.

- Move PROCESS_LDT_INFORMATION and PROCESS_LDT_SIZE outside of NTOS_MODE_USER macro case. This fixes a compilation issue when enabling the alignment probing. My mistake of having them inside NTOS_MODE_USER case, sorry.

- On functions like NtQueryInformationThread and the Process equivalent, complete probing is not done at the beginning of the function, complete probing including if the buffer is writable alongside with datatype misalignment check that is. Instead such check is done on each information class case basis. With that said, we have to explicitly tell DefaultQueryInfoBufferCheck if we want a complete probing or not initially.
2021-06-06 17:14:22 +02:00
Joachim Henze
d30a1673d4 [SHELL32_APITEST] ShellHook testcase Fix compiler error (addendum to #3289)
addendum to 0.4.15-dev-1123-g 0089291751

Fix a compiler error on RosBE2.1.6 GCC4.7.2
that I got when I merged this test back to 0.4.14RC:

C:/0414rls/reactos/modules/rostests/apitests/shell32/ShellHook.cpp: In function
'LRESULT WindowProc(HWND, UINT, WPARAM, LPARAM)':
C:/0414rls/reactos/modules/rostests/apitests/shell32/ShellHook.cpp:339:26: error
: comparison between signed and unsigned integer expressions [-Werror=sign-compa
re]
cc1plus.exe: all warnings being treated as errors
ninja: build stopped: subcommand failed.
2021-06-06 16:40:28 +02:00
Eric Kohl
6ae7fc2b04 [LSASRV] Notify all authentication packages of a session to be deleted 2021-06-06 11:38:26 +02:00
Katayama Hirofumi MZ
9eb566e707 [SHELL32_APITEST] Follow-up of #3723
Strengthen FindExecutable testcase. CORE-17351, CORE-16898, CORE-17612
2021-06-06 08:25:27 +09:00
Mark Jansen
64d3a54de9 [HOST-TOOLS] Block sending telemetry when spawning a new shell 2021-06-06 00:43:05 +02:00
Katayama Hirofumi MZ
fccea84dd4 [SHELL32_APITEST] Add FindExecutable testcase (#3723)
Investigate the implementation of shell32!FindExecutable function.
CORE-17351, CORE-16898, CORE-17612
2021-06-06 06:51:42 +09:00
Hervé Poussineau
08e9000496 [VBE] Check if DDC is supported before trying to read EDID
Also set Edx to 0 when reading Edid, as per specification.

CORE-16695
2021-06-05 23:38:05 +02:00
Hervé Poussineau
fa54704158 [VIDEOPRT] Report monitor name instead of the generic 'Monitor' string 2021-06-05 23:38:05 +02:00
Hervé Poussineau
2ae6bd7453 [VIDEOPRT] Give to each device its own entry in HKLM\SYSTEM\CurrentControlSet\Services
This is required if you have two graphic cards using the same driver.
2021-06-05 23:38:05 +02:00
Mark Jansen
e8902450bc [ATL_APITEST] Add some testcases for CString 'operator !=' 2021-06-05 23:28:38 +02:00
Mark Jansen
5ea3814a22 [ATL] Implement CString 'operator !=' 2021-06-05 23:28:38 +02:00
Mark Jansen
1d68fe209f [SYSSETUP] Use the calculated full path 2021-06-05 22:14:34 +02:00
Joachim Henze
864e20b881 [MSI] setup should not enumerate read-only CDRoms as install-targets CORE-14432
We decided to check a bit different than Wine currently does.
Wine checks for
if (GetVolumeInformationW(ptr, NULL, 0, NULL, 0, &flags, NULL, 0) && flags & FILE_READ_ONLY_VOLUME)
to exclude read-only-media while we (for now) check for
if (GetDriveTypeW(ptr) == DRIVE_CDROM)

For now this gives us the benefit of covering also CDROM drives, that do not have
a CD put into it.
That does not work properly for us with the Wine patch yet, but it does for Wine!
So this maybe points to some other bug in ros, maybe in our CDROM(FS)-drivers?

In the future we should also test this on other read-only-media in Windows e.g.
a read-only USB stick to decide whether we want to stick with our current solution
or whether we want to switch to Wines solution or whether we want to logically OR
both conditions!

Thanks to Doug Lyons for providing what *currently* does work best for us!

VBox https://reactos.org/testman/compare.php?ids=77537,77546 (no change)
KVM https://reactos.org/testman/compare.php?ids=77531,77541 (no change)
2021-06-05 21:27:40 +02:00
Serge Gautherie
83fcd65700 [MPR] spec: Add stubs, document parameter types, stub-enable 2 functions (#3696)
* Add 20 stubs from mpr.dll v5.2.3790.3959.
* Document some parameter types from https://github.com/Microsoft/winfile/
* Change WNetGetDirectoryType[A|W] to no-op stubs

CORE-14376
2021-06-05 20:49:41 +02:00
Timo Kreuzer
1f5f614c7a [RAPPS] Implement support for architecture specific sections
See CORE-17616
2021-06-05 19:17:05 +02:00
Timo Kreuzer
20c1da7963 [RTL][KMTEST] RtlPcToFileHeader doesn't handle user mode images in kernel mode 2021-06-05 14:39:29 +02:00
Timo Kreuzer
3cf2bea0de [RTL] Fix RtlWalkFrameChain and wrap it in SEH 2021-06-05 13:52:42 +02:00
Timo Kreuzer
e6af7d9dfe [RTL] Simplify RtlRaiseException 2021-06-05 13:52:42 +02:00
Timo Kreuzer
3ec1ca9b46 [RTL] Implement RtplUnwindInternal and wrap RtlUnwindEx and RtlDispatchException around it
Based on the description in this blog article: http://www.nynaeve.net/?p=106
2021-06-05 13:52:42 +02:00
Timo Kreuzer
1d58e84736 [RTL] Improve RtlVirtualUnwind
* Add support for version 2 unwind info
* Implement UnwindOpSlots() and use it (based on https://github.com/dotnet/coreclr/blob/master/src/unwinder/amd64/unwinder_amd64.cpp)
* Fix handling of UWOP_PUSH_MACHFRAME
2021-06-05 13:52:42 +02:00
Timo Kreuzer
5075f7d746 [RTL] Move exception handling code to except.c 2021-06-05 13:52:42 +02:00
Timo Kreuzer
65c3911ffc [RTL] Improve / fix the SList code
Don't push a register in the middle of a an asm function. Instead add a proper prolog and store rbx in a home param slot.
2021-06-05 13:52:42 +02:00
Timo Kreuzer
0520c75aaf [CRT] Implement __C_specific_handler 2021-06-05 13:52:42 +02:00
Katayama Hirofumi MZ
2106bc4a81 [CPL][APPWIZ] Make gecko download cancellable by keyboard (#3726)
We shouldn't disable nor hide the control with focus. CORE-17550, CORE-5737
2021-06-05 18:21:25 +09:00
Joachim Henze
ae574e16f8 [WINETESTS] Workaround crashes in riched20:richole on VBox/KVM bots CORE-16799
The crashes began when those tests were synced to Wine Staging 4.18 in
0.4.14-dev-419-g 76cf09cfea

WHS 2k3sp2 Before the revert implies the tests were actually ok:
https://reactos.org/testman/compare.php?ids=77492

Disabling some of the tests is very unsatisfying of course,
but at least allows us to observe again
the results of the other tests from that suite.

VBox https://reactos.org/testman/compare.php?ids=77504,77506
KVM https://reactos.org/testman/compare.php?ids=77502,77505
2021-06-04 20:04:20 +02:00
Timo Kreuzer
7f2e0ece5a [NTOS:KE/x64] Handle shared interrupts 2021-06-04 09:19:13 +02:00
Timo Kreuzer
ce537f1ae9 [EXPLORER] Check m_Position for -1 before using it as an index
This fixes a crash on x64.
2021-06-04 09:15:55 +02:00
Timo Kreuzer
11ffa31155 [BROWSEUI] Fix broken code 2021-06-04 09:15:55 +02:00
Katayama Hirofumi MZ
55345930ad [SHELL32_APITEST] ShellExecCmdLine: Don't copy Notepad.exe
On Windows 10, when I copyed Notepad.exe to the desktop and double-clicked it, it won't start Notepad. This is probably because there is a security protection mechanism (or some mechanism) at work. Tests that assume this mechanism will not work properly on ReactOS. Thus, I had to delete some tests. CORE-17351
2021-06-04 06:16:07 +09:00
Katayama Hirofumi MZ
f37b94ba39 [SHELL32_APITEST] ShellExecCmdLine: Close Notepad windows
By using newly added CloseNotepads function, close the Notepad window.
CORE-17351
2021-06-03 14:49:49 +09:00
Timo Kreuzer
e8496b4fbf [NTOS:PS/x64] Fix PspGetOrSetContextKernelRoutine
It now uses KiSetTrapContext to set the non-volatile context on the stack and the volatile context in the trap frame.
2021-06-02 18:25:36 +02:00
Timo Kreuzer
f1ed97d6cc [NTOS:KE/x64] Implement KiSetTrapContext
KiSetTrapContext is an asm wrapper around RtlSetUnwindContext, which first stores an exception frame to assure that all non-volatile registers were put on the stack, then calls RtlSetUnwindContext to update their first saving positions on the stack and finally restore the exception frame to potentially load any updated registers, that haven't been saved elsewhere on the stack.
2021-06-02 18:25:36 +02:00
Timo Kreuzer
e801b7dda2 [RTL/x64] Implement RtlpCaptureNonVolatileContextPointers and RtlSetUnwindContext
RtlpCaptureNonVolatileContextPointers walks the stack and captures the addresses of all non-volatile registers on the stack, when they have been saved first. This is needed to be able to fix up the non-volatile on a system call, which doesn't capture non-volatiles, but relies on them to be restored by the callees.

Instead of only checking for the TargetFrame, also check for a mode change, i.e. RIP went from kernel to user, in which case the target frame was not reached yet, because it was too large, but processing can't continue here.

RtlSetUnwindContext uses RtlpCaptureNonVolatileContextPointers to set the non-volatile registers in the the stack. They will be picked up, when returning back or unwinding, e.g. to the system call handler.
2021-06-02 18:25:36 +02:00
Serge Gautherie
80b54b8026 [BOOT] CMakeLists.txt: Compare ARCH to arm64, not aarch64
This aarch64 was introduced first,
but arm64 was preferred everywhere else since then.

CORE-17518
2021-06-02 13:26:08 +03:00
Serge Gautherie
7e43c2610d [CMAKE] CMakeLists.txt: Fix 'omap-zoom2' typo
Addendum to fae2044 (r51783).
CORE-17604
2021-06-02 13:24:39 +03:00
Stanislav Motylkov
11687e9e43 [CRT][ARM] Fix uninitialized variables caught by RTC
CORE-17613
2021-06-02 13:18:40 +03:00
Piotr Hetnarowicz
0175e8f8dd [EXPLORER] Polish translation update (#3704) 2021-06-02 11:54:12 +02:00
Piotr Hetnarowicz
4771551c74 [BROWSEUI] Polish translation update (#3703) 2021-06-02 11:53:07 +02:00
Piotr Hetnarowicz
0e18985e56 [WINLOGON] Polish translation update (#3702) 2021-06-02 11:52:10 +02:00
Piotr Hetnarowicz
d05a20e7b3 [SHELL32] Polish translation update (#3701) 2021-06-02 11:50:54 +02:00
George Bișoc
06b0d2e380 [NTOS:SE] Implement logon session deletion
And declare a prototype for SepCleanupLUIDDeviceMapDirectory and annotate it with SAL.
2021-06-02 11:09:01 +02:00
Serge Gautherie
2dcc40fb3e [CMAKE] CMakeLists.txt: Remove NO_UNDERSCORE_PREFIX leftovers
And switch to add_compile_definitions().

Addendum to 9efafd6.
2021-06-02 10:04:21 +02:00
Katayama Hirofumi MZ
59d4c11203 [WIN32SS][NTUSER] ShowWindow.SW_MINIMIZE should show window (#3700)
- user32!ShowWindow.SW_MINIMIZE should show the window.
- Fix the return value of ShowWindow function on invalid parameter.
CORE-15669
2021-06-01 11:11:23 +09:00
Serge Gautherie
5ce9e2ec8e [GITHUB] build.yml: Define CLANG_VERSION for clang only
Addendum to a66214c.
2021-05-31 16:04:49 +02:00
Serge Gautherie
4d00a5653a [GITHUB] build.yml: Properly define LLVM_VERSION
Addendum to a66214c.
2021-05-31 16:04:49 +02:00
Katayama Hirofumi MZ
32b0cf6fc6 [WIN32SS][NTUSER] Improve HSHELL_WINDOWCREATED condition (#3697)
Modify the condition of generating HSHELL_WINDOWCREATED, especially on WS_CHILD window style. CORE-15669
2021-05-31 13:08:06 +09:00
Eric Kohl
7b970c67a8 [NETCFGX] Create unique network connection names 2021-05-30 21:12:58 +02:00
Katayama Hirofumi MZ
a8ed286c86 [USER32_APITEST] Add ShowWindow testcase (#3689)
Investigate the implementation of user32!ShowWindow. CORE-15669
2021-05-30 09:37:38 +09:00
Timo Kreuzer
0c3812eb7e [RTL/x64] Implement RtlRestoreContext 2021-05-29 21:20:48 +02:00
Timo Kreuzer
abb338b13d [RTL/x64] Improve RtlCaptureContext
Use movaps instead of movdqa, it does the same thing, but is one byte shorter.
Shuffle instructions around a bit to maximize parallel execution.
2021-05-29 21:20:48 +02:00
Timo Kreuzer
3831c0ca31 [RTL/x64] Improve RtlInitializeContext 2021-05-29 21:20:48 +02:00
George Bișoc
3140dac3fe [NTOS:SE] Do some cleanup on ICIF flags in token information classes
A few of these classes have fixed size lengths, the rest are arbitrary. Also the TokenAuditPolicy class hasn't a size length type specified in the table, which is wrong (and move the corresponding TOKEN_AUDIT_POLICY_INFORMATION structure into the private header).
2021-05-29 12:44:03 +02:00
Katayama Hirofumi MZ
d21adc9b31 [SHELL32_APITEST] Strengthen and improve ShellHook testcase (#3687)
- Add tests to find the missing parameters against HSHELL_WINDOWCREATED conditions.
- Improve code readability. CORE-15669
2021-05-29 09:33:46 +09:00
Timo Kreuzer
e693d5ffc0 [USBPORT] Make unload work 2021-05-28 22:29:44 +02:00
Timo Kreuzer
db0c59cbd4 [CRT] Use the asm version of sqrt on amd64 2021-05-28 11:52:42 +02:00
Timo Kreuzer
90a0e426ed [NTOS:KE] Add IRQL checks and fix KiInitiateUserApc 2021-05-28 11:52:42 +02:00
Timo Kreuzer
3d18831c19 [NTOS:KE] Improve KiSystemCallEntry64 2021-05-28 11:52:42 +02:00
Timo Kreuzer
69e8cb635a [NTOS:KE] Fix stack alignment issues 2021-05-28 11:52:42 +02:00
Timo Kreuzer
2a2d0903bf [NTOS:KE] Remove duplicated EFlag definitions 2021-05-28 11:52:42 +02:00
Timo Kreuzer
42e1fefcc6 [ASM] Clear interrupt flag in ExitTrap before returning 2021-05-28 11:52:42 +02:00
Timo Kreuzer
d07203ecb7 [WIN32K][USER32] Change mechanism for storing dialog info pointer
DLGWINDOWEXTRA is 30 (both on win32 and win64). This has storage for the following entries: DWLP_MSGRESULT (0), DWLP_DLGPROC (8), DWLP_USER (16)
We used to store the dialog info pointer using SetWindowLongPtr (DWLP_ROS_DIALOGINFO == DWLP_USER+sizeof(ULONG_PTR) == 24), which was fine on win32, but failed on win64, since there wasn't enough space left (24 + 8 = 32 > 30).
Rewrite the way the DLGINFO pointer is stored, by adding an additional field to the WND structure and set it using NtUserxSetDialogPointer (which is what it is for).
Also fix too small cbWndExtra for the button class.
2021-05-28 08:26:36 +02:00
Timo Kreuzer
50c9dab6c9 [WIN32K] Fix wrong calculation in DIB_32BPP_BitBltSrcCopy
Using an unsigned integer will cause the calculations to be unsigned, which on x64 leads to wrong results, when adding it to a pointer.
2021-05-27 15:53:24 +02:00
Mark Jansen
f0bee6c4bc [SHELL32] CDefView: Prevent use after free
While updating the item, the LVIF_STATE would be requested,
for which the old lParam would be accessed.
2021-05-26 22:57:43 +02:00
Katayama Hirofumi MZ
949e3a9cec [REGEDIT] Use InitCommonControlsEx instead of InitCommonControls (#3686)
NOTE: Windows sets 0xFFFF to icce.dwICC but we use better value.
2021-05-26 21:11:10 +09:00
Jérôme Gardou
b0ebf68d98 [NTOS:IO] Be more specific for chasing CORE-17587
Addendum to 42ec1388d7
2021-05-26 11:03:34 +02:00
Jérôme Gardou
42ec1388d7 [NTOS:IO] Break on IoRaiseInformationalHardError
This one will eventually be reverted. For now, this will help debugging CORE-17587
2021-05-26 10:48:29 +02:00
Hermès Bélusca-Maïto
53bd132cec [CMD] Reset the current thread UI language at startup, and when updating the local code page cache.
CORE-17601
2021-05-26 01:42:12 +02:00
Hermès Bélusca-Maïto
0483063b69 [MODE] Reset the current thread UI language and streams codepage after changing the console codepage. Add extra error handling.
CORE-17601
2021-05-26 01:42:11 +02:00
Hermès Bélusca-Maïto
a8ef85ad71 [CHCP] Reset the current thread UI language and streams codepage after changing the console codepage.
CORE-17601
2021-05-26 01:42:11 +02:00
Hermès Bélusca-Maïto
7c3aabc088 [CONUTILS] Implement ConSetThreadUILanguage() as a wrapper for kernel32!SetThreadUILanguage().
CORE-17601

Dynamically load SetThreadUILanguage(), so as to support systems where this API is not present.

Hopefully implemented in a thread-safe manner.
2021-05-26 01:42:10 +02:00
Hermès Bélusca-Maïto
35f499e52f [CONUTILS][CMD] Add and use a helper ConStdStreamsSetCacheCodePage() macro instead of repeatedly calling ConStreamSetCacheCodePage() on the standard streams. 2021-05-26 01:42:09 +02:00
Hermès Bélusca-Maïto
f268430c05 [CONUTILS] Update some documentation. 2021-05-26 01:42:09 +02:00
Hervé Poussineau
831cad3410 [NTOS:MM] Remove wrong cleaning of PDEs at session cleanup 2021-05-25 21:13:32 +02:00
Hervé Poussineau
1a1dac04c7 [SMLIB] Implement SmStartCsr and SmStopCsr 2021-05-25 19:02:16 +02:00
Hervé Poussineau
735d2b4c93 [SMSS] Implement SmpStartCsr 2021-05-25 18:48:16 +02:00
Hervé Poussineau
98882fb089 [NTOS:MM] Finish implementation of MmSessionDelete 2021-05-25 18:48:16 +02:00
Hervé Poussineau
eac0afc6fe [NTOS:MM] MiDereferenceSession: return as soon as session is destroyed
This leads to some simplifications in the following code.
2021-05-25 18:48:16 +02:00
Timo Kreuzer
dd08ae2c0f [NTOS:CC] Fix use of unintialized variable (caught by RTC1) 2021-05-24 22:00:11 +02:00
Timo Kreuzer
184d3a6849 [NTOS:MM] MiIsPdeForAddressValid is NOT an INIT function! 2021-05-24 18:45:47 +02:00
Mark Jansen
c1538a82b8 [GITHUB] Add ARM builder
This only builds rapps for now
CORE-17517
2021-05-24 17:34:49 +02:00
Mark Jansen
5f94b23d2b [HOST-TOOLS] Configure environment for MSVC cross-compiling
This makes ARM builds on a non-arm host work again.

CORE-17542
CORE-17517
2021-05-24 17:34:49 +02:00
Mark Jansen
a555892027 [SDK] Remove duplicate definition 2021-05-24 17:34:49 +02:00
Mark Jansen
0911e8f457 [CMAKE] Add some arm/arm64 specific paths
CORE-17517 CORE-17518
2021-05-24 17:34:28 +02:00
Stanislav Motylkov
dcc1506af5 [FREELDR][HALXBOX] Initialize PCI bridge secondary & subordinate bus values
This fixes the recursion when pci.sys attempts to get PCI bridge children
devices, which in fact are non-existing.

Note that the problem in pci.sys itself also deserves a separate fix.

CORE-16319 CORE-16216
2021-05-24 18:12:02 +03:00
Stanislav Motylkov
f1410d2b09 [FREELDR] Replace CONFIG_CMD macro with a straightforward bitfield struct
Also fix magic values related to PCI registers.
2021-05-24 18:02:16 +03:00
Stanislav Motylkov
5caa59b31a [HAL] HalpDebugPciDumpBus: Fix parsing bugs
- Bridge devices don't have Subsystem ID and Subsystem Vendor ID
- Also they have only two BARs, don't parse data outside of bounds

Addendum to b232efe1. CORE-16319 CORE-16216
2021-05-24 17:24:24 +03:00
Eric Kohl
2047cf3613 [DHCPCSRV] Send an ARP request to check if an automatic private address is available 2021-05-24 15:18:58 +02:00
Eric Kohl
894cc4ac0c [dnsapi][dnsrslvr] Implement DnsFlushResolverCacheEntry_A/_UTF8/_W 2021-05-24 14:43:30 +02:00
Stanislav Motylkov
b232efe12a [HAL] HalpDebugPciDumpBus: Print details about PCI bridges
CORE-16319 CORE-16216
2021-05-23 15:48:21 +03:00
Mark Jansen
18e95f5a4e [CMAKE] Store and re-use M4 and BISON_PKGDATADIR env variables
ROSBE-174
2021-05-22 16:38:17 +02:00
Mark Jansen
9fcdc68182 [SHELL32] Include the folder path in logging 2021-05-22 16:34:54 +02:00
Mark Jansen
b58c3d73ca [RTL][KERNEL32] Move the STUB printing code to a place where it's actually called 2021-05-22 16:33:19 +02:00
Mark Jansen
1c97b84600 [WIN32SS] Skip . and .. when enumerating fonts 2021-05-22 16:31:31 +02:00
Jérôme Gardou
0395049986 [NTOS:KE] Do not call MmSetPageProtect for the Pentium Lock Errata
CORE-17589
2021-05-21 10:52:55 +02:00
Mark Jansen
9f549dba1e [USBHUB] Mute debug spam 2021-05-20 08:35:39 +02:00
Mark Jansen
17acec6d13 [USBCCGP] Mute debug spam 2021-05-20 08:35:39 +02:00
Jérôme Gardou
7eff8a36d5 Revert "[NTOS:MM] Add private pages to process working sets"
This is so full of bugs, I don't know what to say.
This reverts commit 374fef2d59.
2021-05-20 00:19:43 +02:00
Jérôme Gardou
969e60a06d [NTOS:MM] Move software PTE specific check after it's been tested for being one
Caught by The_DarkFire, only soul on earth actually *running* our SMP kernel
2021-05-19 23:56:21 +02:00
Jérôme Gardou
7d0d14965e [NTOS:MM] Do not map Process Working Set List in kernel space
This is not needed anymore and causes havoc on amd64
2021-05-19 23:17:27 +02:00
Jérôme Gardou
a3629ab08b [RTL] SAL-annotate RtlUnicodeStringToCountedOemString
Brought to you by Hermès
2021-05-19 22:50:29 +02:00
Jérôme Gardou
8d1e01be0e [NLS] Use files provided by Microsoft to generate most of our NLS files
Instead of binary blobs coming from who-knows-where
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
79b2d9c2ff [TXT2NLS] Rewrite the tool
With support for multibyte codepages & glyph tables
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
1549f0837f [SDK] Turn txt2nls into a host tool 2021-05-19 22:50:29 +02:00
Jérôme Gardou
30f2ad7949 [RTL] Properly truncate 8dot3 names when using a MultiByte OEM code page
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
49fcbe7cd8 [RTL] Fix RtlIsValidOemCharacter implementation for Multibyte code pages
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
1b08836338 [RTL] Properly implement RtlUnicodeToOemN
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
4e0ce779d7 [NTDLL_APITEST] Add some tests for RtlUnicodeToOemN
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
53a6c44f74 [NTDLL_APITEST] Add some tests for RtlUnicodeStringToCountedOemString
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
0a8b51da80 [NTDLL_APITEST] Add tests for RtlxUnicodeStringToAnsiSize & RtlxUnicodeStringToOemSize
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
50e0b006e7 [NTDLL_APITEST] Add some Japanese to RtlGenerate8dot3Name test case
CORE-17571
2021-05-19 22:50:29 +02:00
Dmitry Borisov
999345a4fe [XDK] Update the prototype of IO_COMPLETION_ROUTINE 2021-05-19 20:14:29 +02:00
Dmitry Borisov
2193031133 [NTOS:PO] Check for optional parameter in the completion routine
The CompletionFunction parameter is really optional.
This fixes a bugcheck caused by shutdown with IDE driver stack.

CORE-17401
2021-05-19 20:14:29 +02:00
Jérôme Gardou
0f723105c6 [CMAKE] Allow compiling amd64 port with GCC on Windows
Dedicated to Daniel
2021-05-19 14:13:51 +02:00
Serge Gautherie
eae3db10ae [GITHUB] build.yml: Remove superfluous '${{github.workspace}}' 2021-05-19 09:37:07 +02:00
Serge Gautherie
9b783ce07a [GITHUB] build.yml: Sync' 'if:' syntax
Addendum to 3644f3e.
2021-05-19 09:37:07 +02:00
Jérôme Gardou
826aec48de [NTOS:MM] Fix build on whatever MSVC version triggered this
There is no real need to put static or extern "C" function in a special namespace anyway
2021-05-19 00:12:05 +02:00
Jérôme Gardou
374fef2d59 [NTOS:MM] Add private pages to process working sets 2021-05-18 23:42:19 +02:00
Jérôme Gardou
6a5fd8f487 [NTOS:MM] Relax requirements with regards to PFN lock when adding & removing entries in Working Sets
Once a page is used, holding the WS lock is enough until you want to free it.
2021-05-18 23:42:19 +02:00
Jérôme Gardou
aeffd16b38 [NTOS] Introduce KiQueuedSpinLockGuard, similar to std::lock_guard for Queued Spin lock
And use it in Mm as MiPfnLockGuard
2021-05-18 23:42:19 +02:00
Stanislav Motylkov
ffa7cfc1ff [INF] Remove remnants of XboxVmp driver which has its own INF file 2021-05-18 20:22:22 +03:00
Dmitry Borisov
f7d825e620 [PC98VID] Fix MSVC 2015 build for PC-98 target
Addendum to 3adf450867

Also isolate the constant structures into page section
and restore the previous sections for start IO and entrypoint routines.
2021-05-18 19:30:29 +03:00
Stanislav Motylkov
0bd8a2110b [WIN32SS] Always build all video miniport drivers
But include registry changes and INF files depending on SARCH variable.
This commit is expected to uncover pc98vid build error on MSVC 2015.

Addendum to 8c475e4. CORE-17529
2021-05-18 19:24:57 +03:00
Stanislav Motylkov
81987761d9 [PC98VID] Use unique target name but rename as vga.sys
This allows building pc98vid driver without conflict with vga_new.
2021-05-18 19:24:35 +03:00
Piotr Hetnarowicz
07ad5eb338 [DISK_NEW] Add Polish (pl-PL) translation (#3660)
Addendum to f144b8c1 and da4ee18c. CORE-17129
2021-05-18 14:58:34 +03:00
Piotr Hetnarowicz
3a7cd6256b [CDROM_NEW] Add Polish (pl-PL) translation (#3659)
Addendum to 83b85e21. CORE-17129

Co-authored-by: Adam Słaboń <asaillen@protonmail.com>
2021-05-18 14:54:05 +03:00
Serge Gautherie
255807f768 [LOCALSPL] InitializePrinterDrivers(): Fix LocalGetPrinterDriverDirectory) call
Fix Clang-Cl
'...\printerdrivers.c(97,98): warning: variable 'cbBuf' is uninitialized when used here [-Wuninitialized]'

Addendum to 62c4b82.
CORE-14306
2021-05-18 10:49:20 +02:00
George Bișoc
99d776894a [NTOS:SE] Capture the groups length when creating a token
The groups length is already returned by SeCaptureSidAndAttributesArray, it doesn't make sense to not use it.
2021-05-16 17:18:29 +02:00
Hermès Bélusca-Maïto
90b3a9c09b [MORE] Add code to load the current 'command extensions' enable status from the registry. 2021-05-15 19:41:16 +02:00
Joachim Henze
cf6c191f69 [SHELL32] *.rc Whitespace fixes just, no functional change
Motivation to fix them in master is to avoid having to also port them back
when porting back nearby code.
2021-05-15 03:44:48 +02:00
Serge Gautherie
eba00d1b5e [CMAKE] winetests/: Move '/wd4334' to 3 sub-modules only
Addendum to 42d2d5e.
2021-05-12 12:50:48 +02:00
Jérôme Gardou
1e01afab99 [GITHUB] Make sure things get compiled with MSVC 2015 & 2017
Also unify again ISO artifacts and upload debug symbols
for MSVC builds while we're at it

Also don't fail early in case things go wrong, which helps fixing build errors in one go
instead of incremental trial & error
2021-05-12 11:04:29 +02:00
Jérôme Gardou
3adf450867 [REACTOS] Addendum to 5c7ce4475e - Fix MSVC 2015 build
Put data into PAGEDATA or INITDATA sections
Keep section declaration for prototypes

CORE-17540
2021-05-12 11:04:29 +02:00
Serge Gautherie
03e824641e [CMAKE] winetests/: Move '/wd4101' to kernel32/ only
Also add matching remove_target_compile_option().

Addendum to 42d2d5e.
2021-05-11 14:13:21 +02:00
Jérôme Gardou
9930eeca76 [KDGDB] Implement TIB address retrieval 2021-05-11 11:00:49 +02:00
George Bișoc
ac97662619 [KMTESTS:SE] Remove erroneous tests regarding impersonation level
These tests didn't make much sense. The captured token from the subject context is not an impersonation token and both Windows and ReactOS ultimately fail on those tests.
2021-05-11 09:20:28 +02:00
Katayama Hirofumi MZ
55060911e4 [CMDUTILS][WHERE] Implement WHERE command (#3642)
WHERE is a Windows command that finds the file location from a executable file name. This PR implements it in ReactOS. CORE-17443
2021-05-11 14:37:49 +09:00
Jérôme Gardou
04e9251612 [NTOS:PS] Use KD routine to safely read memory from thread stack
Should fix a crash when hitting TAB+(Whatever I typed that triggerred this)
2021-05-10 19:11:21 +02:00
Dmitry Borisov
0fb3c1e91e [PCIIDE] Make the resource section not discardable. CORE-17401 (#3594)
[PCIX] Make the resource section not discardable.

These drivers need to be able to access their message resources at any time.
2021-05-10 00:36:38 +02:00
Dmitry Borisov
6e33c8ffd3 [PEFIXUP] Fixup of resource sections in GCC builds. (#3594)
Make resource sections discardable for kernel-mode drivers and DLLs.
2021-05-10 00:36:38 +02:00
George Bișoc
0fe7fdbdea [NDK][NTOS:SE] Fix the member offsets in TOKEN, again...
The member offsets in comments were wrong again, whoops....
2021-05-09 18:17:53 +02:00
George Bișoc
f5dc1c77b5 [NDK][NTOS:SE] Add the missing "LogonSession" member to TOKEN structure
And also fix the wrong member offsets in comments. The said offset values are based upon the ones retrieved with WinDBG.
2021-05-09 17:34:02 +02:00
Hermès Bélusca-Maïto
9e0a3cdf6c [PEFIXUP] Add support for overriding the attributes of specific PE sections. (#3598)
Use a syntax identical to the one from the EDITBIN tool:
--section:name[=newname][,[[!]{CDEIKOMPRSUW}][A{1248PTSX}]]

https://docs.microsoft.com/en-us/cpp/build/reference/section-editbin?view=msvc-160
2021-05-09 01:39:21 +02:00
Mark Jansen
ae426744a9 [RAPPS] Restore event logging of install/uninstall actions 2021-05-08 19:25:16 +02:00
Mark Jansen
264aaa9e05 [RTL] Implement RtlGetLengthWithoutLastFullDorOrNtPathElement
CORE-17248
2021-05-08 19:24:23 +02:00
Mark Jansen
3e7e4ee360 [RTL] Implement RtlpApplyLengthFunction
CORE-17248
2021-05-08 19:24:23 +02:00
George Bișoc
11f239373d [NTOS:SE] Add further remarks in SeQueryInformationToken
Explicitly mention under remarks that some classes are not implemented for that function, for documentation purposes. No code changes.
2021-05-08 18:11:42 +02:00
Stanislav Motylkov
4d8b9e1d61 [SDBINST] Minor quick fixes after merge 2021-05-08 18:36:15 +03:00
Mark Jansen
23b6397ae9 [FONTEXT_APITEST] Test more cases for GetDisplayNameOf 2021-05-08 15:53:43 +02:00
Mark Jansen
20c98b3144 [SDBINST] Restore file attributes before deleting 2021-05-08 15:49:28 +02:00
Max Korostil
c4181f534c [SDBINST] Add remove Layers call 2021-05-08 14:24:21 +02:00
Max Korostil
dd34a8a731 [SDBINST] Update according to review
Replace macroses with unicode functions
Minor fixes
Replace dynamic allocations
Add GUID string validation

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Mark Jansen <mark.jansen@reactos.org>
2021-05-08 14:24:20 +02:00
Max Korostil
d4a9879583 [SDBINST] Add uninstall by guid and name 2021-05-08 14:24:20 +02:00
Max Korostil
7fd004e50b [SDBINST] Add uninstall option 2021-05-08 14:24:20 +02:00
Max Korostil
4e4328ac8a [SDBINST] Add sdbinst uility.
It can install sdb to the system
2021-05-08 14:24:20 +02:00
Max Korostil
b1dfdc95af [APPHELP] Add api functions declaration.
Add define
2021-05-08 14:24:20 +02:00
Katayama Hirofumi MZ
941dfd2dee [INCLUDE][XDK] Add FILE_ATTRIBUTE_VIRTUAL macro into winnt_old.h (#3649)
PR #3642 needs it. CORE-17443
2021-05-08 21:08:34 +09:00
Catalin Gabriel Draghita
2636cff09f [SHELL32] Show Product version on About dialog bmp (#3621)
The About dialog banner will now show the correspondent Product version selected on install.
This will make it easier to tell which edition of ReactOS is installed.
2021-05-08 15:54:32 +09:00
Stanislav Motylkov
83dbb6b27e [NTOS:PS] Do not leak the Thread. Addendum to 0c8f0785 2021-05-08 00:32:14 +03:00
Stanislav Motylkov
0c8f07854b [NTOS:PS] Fix misplaced Thread variable reference caught by RTC
Addendum to 2e88e2b9.
2021-05-07 21:54:10 +03:00
Serge Gautherie
2b52f3bb56 [SDK] wine/typeof.h: Remove duplicate ImeGetRegisterWordStyle line
Fix msbuild amd64
'...\sdk\include\reactos\wine/typeof.h(50,64): error C2059: syntax error: '<parameter-list>' [D:\a\reactos\reactos\build\dll\win32\msxml3\msxml3.vcxproj]'

Addendum to 32072cf (r42469).
2021-05-06 22:09:03 +03:00
Serge Gautherie
b62f0d0fa3 [CMAKE] CMakeLists.txt: Print CMAKE_CONFIGURATION_TYPES
Follow-up to d10728a.
2021-05-06 16:13:05 +02:00
George Bișoc
9f3ed60ea4 [USETUP] Loop over MUI entries of the same ID
MUI entries can have the same ID pointed by TextID member of MUI_ENTRY structure. For this matter, altering a certain entry such as deleting a portion of text with MUIClearStyledText() only removes that portion of text when the given ID argument and the retrieved ID match.

However, MUIClearStyledText() only removes the first instance of text in the console leaving other entries with the same ID as is. Therefore we must ensure that we also iterate over other entries with the same ID as well. Besides the aforementioned function, do the same with MUIClearText(), MUISetText() and MUISetStyledText() too.
2021-05-05 19:30:53 +02:00
Hermès Bélusca-Maïto
eb29a33169 [PEFIXUP] Section names are case-sensitive, so we can just use strncmp() instead of the non-standard strncasecmp() for names comparisons. (#3598) 2021-05-05 19:15:02 +02:00
Hermès Bélusca-Maïto
ea26767353 [PEFIXUP] Avoid multi-level nesting of code with the error handling done at the very end. Use size_t variables for file sizes. (#3598) 2021-05-05 19:15:01 +02:00
Hermès Bélusca-Maïto
88b933330d [PEFIXUP] Only recalculate the PE checksum if the image is not from a reproducible build (original checksum == 0). (#3598) 2021-05-05 19:15:01 +02:00
Hermès Bélusca-Maïto
7ad33940c2 [PEFIXUP] Use vfprintf() with the va_args list. (#3598) 2021-05-05 19:14:57 +02:00
Hermès Bélusca-Maïto
abd4c818dc [CSRSRV] Fix uninitialized variable warning detected by Clang. (#3619)
CORE-17545

subsystems/win32/csrsrv/api.c:63:9: warning: variable 'ServerDll' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized]
    if ((ServerId >= CSR_SERVER_DLL_MAX) ||
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
subsystems/win32/csrsrv/api.c:67:76: note: uninitialized use occurs here
        DPRINT1("CSRSS: %lx is invalid ServerDllIndex (%08x)\n", ServerId, ServerDll);
                                                                           ^~~~~~~~~
2021-05-05 17:24:14 +02:00
Hermès Bélusca-Maïto
c5b87ac6ac [CSRSRV] Display some other DPRINTs only when CSRSRV is compiled in debugging mode.
Addendum to 835f3ef1.
2021-05-05 17:24:13 +02:00
Hermès Bélusca-Maïto
f9aca9f7d2 [CONSRV] wcwidth.c: Fix out-of-range comparisons Clang warnings for wchar_t's, that are only 2 bytes long on NT. (#3619)
CORE-17545

win32ss/user/winsrv/consrv/frontends/wcwidth.c:203:30: warning: result of comparison of constant 262141 with expression of type 'wchar_t' (aka 'unsigned short') is always true [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x30000 && ucs <= 0x3fffd)));
                         ~~~ ^  ~~~~~~~
win32ss/user/winsrv/consrv/frontends/wcwidth.c:203:12: warning: result of comparison of constant 196608 with expression of type 'wchar_t' (aka 'unsigned short') is always false [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x30000 && ucs <= 0x3fffd)));
       ~~~ ^  ~~~~~~~
win32ss/user/winsrv/consrv/frontends/wcwidth.c:202:30: warning: result of comparison of constant 196605 with expression of type 'wchar_t' (aka 'unsigned short') is always true [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x20000 && ucs <= 0x2fffd) ||
                         ~~~ ^  ~~~~~~~
win32ss/user/winsrv/consrv/frontends/wcwidth.c:202:12: warning: result of comparison of constant 131072 with expression of type 'wchar_t' (aka 'unsigned short') is always false [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x20000 && ucs <= 0x2fffd) ||
       ~~~ ^  ~~~~~~~
2021-05-05 17:24:13 +02:00
Hermès Bélusca-Maïto
db089c517e [PSDK] Remove a buggy GNU-specific "PACKED" attribute in KEY_EVENT_RECORD structure declaration. (#3619)
CORE-17545

No other public header out there (in MS PSDK, MinGW, Wine, etc...) does have
this hack (that was introduced back in the days in r15141 / commit 01df92bc).

Add static assert on KEY_EVENT_RECORD's uChar member to ensure it's properly aligned.

May fix Clang warning:

win32ss/user/winsrv/consrv/lineinput.c:457:62: warning: taking address of packed member 'uChar' of class or structure '_KEY_EVENT_RECORD' may result in an unaligned pointer value [-Waddress-of-packed-member]
            LineInputEdit(Console, (Overstrike ? 1 : 0), 1, &KeyEvent->uChar.UnicodeChar);
                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~
and whatnot...
2021-05-05 17:24:12 +02:00
Hermès Bélusca-Maïto
9a93d2fe3a [CONSRV] Fix uninitialized variables warnings detected by Clang. (#3619)
CORE-17545

Fix 3 warnings:

win32ss/user/winsrv/consrv/alias.c:648:16: warning: variable 'Status' is used uninitialized whenever 'while' loop exits because its condition is false [-Wsometimes-uninitialized]
        while (CurEntry)
               ^~~~~~~~
win32ss/user/winsrv/consrv/alias.c:693:12: note: uninitialized use occurs here
    return Status;
           ^~~~~~

win32ss/user/winsrv/consrv/alias.c:715:9: warning: variable 'Status' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    if (Header)
        ^~~~~~
win32ss/user/winsrv/consrv/alias.c:727:12: note: uninitialized use occurs here
    return Status;
           ^~~~~~

win32ss/user/winsrv/consrv/alias.c:771:16: warning: variable 'Status' is used uninitialized whenever 'while' loop exits because its condition is false [-Wsometimes-uninitialized]
        while (RootHeader)
               ^~~~~~~~~~
win32ss/user/winsrv/consrv/alias.c:807:12: note: uninitialized use occurs here
    return Status;
2021-05-05 17:24:12 +02:00
Hermès Bélusca-Maïto
ab8d7f2548 [SYSDM] Fix uninitialized variables warnings detected by Clang. (#3619)
CORE-17545

Addendum to commit d635ce0c.

dll/cpl/sysdm/general.c:156:25: warning: variable 'hCreditsDC' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
                    if (hDC == NULL)
                        ^~~~~~~~~~~
dll/cpl/sysdm/general.c:216:25: note: uninitialized use occurs here
                    if (hCreditsDC != NULL) DeleteDC(hCreditsDC);
                        ^~~~~~~~~~

and the same for hLogoDC:

dll/cpl/sysdm/general.c:215:25: note: uninitialized use occurs here
                    if (hLogoDC != NULL) DeleteDC(hLogoDC);
                        ^~~~~~~
2021-05-05 17:24:11 +02:00
Hermès Bélusca-Maïto
cba0d64645 [SYSDM][USERINIT] Fix uninitialized variables warnings detected by Clang. (#3619)
CORE-17545

Addendum to commit d635ce0c.

- Move the HDC variables initialization via function calls, out of
  the variables declaration block.

- Fix warnings (and identical for base/system/userinit/livecd.c):

dll/cpl/sysdm/general.c:72:9: warning: variable 'hLogo' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    if (hDC == NULL || hDCLogo == NULL || hDCMask == NULL)
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dll/cpl/sysdm/general.c:130:9: note: uninitialized use occurs here
    if (hLogo != NULL) DeleteObject(hLogo);
        ^~~~~

and similar for hMask too:

dll/cpl/sysdm/general.c:129:9: note: uninitialized use occurs here
    if (hMask != NULL) DeleteObject(hMask);
        ^~~~~
2021-05-05 17:24:10 +02:00
Hermès Bélusca-Maïto
89860ab543 [SYSDM][USERINIT] Rewrite a if-condition in order to fail early, and save one level of code indentation. 2021-05-05 17:24:10 +02:00
Hermès Bélusca-Maïto
33c210da37 [USETUP] Fix letter encoding in translation. (#3619)
CORE-17545

Fix Clang warning:

base/setup/usetup/lang/de-DE.h:1099:24: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
        "die Partition <E4>ndern, die derzeit als aktiv markiert ist.",
                       ^~~~
2021-05-05 17:23:57 +02:00
Mas Ahmad Muhammad
fd4d8f550c [TRANSLATION] indonesian add and update apps/shell translation 2021-05-05 11:34:28 +02:00
Katayama Hirofumi MZ
7b27e7c4ff [CMDUTILS][FC] Implement FC wildcard handling (#3640)
Implement wildcard handling on FC (file comparison) command. And fix the bugs on zero-sized files. CORE-17500
2021-05-05 12:23:16 +09:00
Jérôme Gardou
3644f3efca [GITHUB] Improve logic to cache RosBE build
+ Minor implrovements:
  Use cmake args instead of forcing command working directory
  Give specific names to artifacts - bootcd/livecd
2021-05-04 16:26:20 +02:00
Jérôme Gardou
f421bccbcc [NTOS:MM] First shot for Working Set list support
- Initialize
- Add private page (no shared page support yet)
- Remove pages
- Trim

Yes, this is C++ in the kernel.
2021-05-04 12:02:41 +02:00
Jérôme Gardou
5466fc13a3 [NDK] Make kefuncs.h C++ aware 2021-05-04 12:02:41 +02:00
Jérôme Gardou
31afbf1054 [NTOS] Make some internal headers C++ aware 2021-05-04 12:02:41 +02:00
Jérôme Gardou
8df48f9876 [NTOS:MM] Introduce MI_IS_PROCESS_WORKING_SET helper function 2021-05-04 12:02:41 +02:00
Jérôme Gardou
6b2f05f9dd [NTOS:MM] Implement turning working set shared lock to exclusive 2021-05-04 12:02:41 +02:00
Jérôme Gardou
cd085ac12f [NTOS/MM] Implement Mi(Un)lockWorkingSetShared
Also fix checks when exclusively locking
2021-05-04 12:02:41 +02:00
Katayama Hirofumi MZ
d2c47132ad [CMDUTILS][FC] Implement text file comparison (#3625)
Implement text file comparison by using file mappings (both Unicode and ANSI). CORE-17500
2021-05-04 18:05:57 +09:00
George Bișoc
5dd93a8a5b [NTOS:SE] Get the session ID and assign it to the new token
SeExchangePrimaryToken doesn't assign the session ID to the new token, which could lead to incorrect behaviour in the long run. Let's fix that.
2021-05-04 10:08:26 +02:00
Justin Miller
0d9020634a [HALX86] Disable Lazy IRQL in APIC HAL (#3609)
Lazy IRQL feature has issues with interrupt delivery on VirtualBox, so disable it for now.
For the feature description, see commit d28eae967a

Meanwhile, merge and clean up APIC headers a bit
2021-05-04 04:29:50 +03:00
Victor Perevertkin
239266640f [GITHUB] Use full paths on build-linux, as RosBE.sh overwrites them
Addendum to 167c60a5c8 and 823ddc3d82
2021-05-04 01:32:21 +03:00
Victor Perevertkin
823ddc3d82 [GITHUB] Remove working-directory for configure
Addendum to 167c60a5c8
2021-05-04 01:21:40 +03:00
Victor Perevertkin
167c60a5c8 [GITHUB] Use cmake's -S and -B options explicitly 2021-05-04 01:10:22 +03:00
Jérôme Gardou
e9cef3f216 [GITHUB] Add clang-cl amd64 build to CI
As before, use a matrix for Ninja+Msvc build
2021-05-03 22:00:57 +02:00
Jérôme Gardou
bc92234ea4 [FDEBUG] Use VK_ identifiers with VIRTKEY 2021-05-03 22:00:57 +02:00
Jérôme Gardou
d312ef234b [PSEH] Fix use of dummy implementation in C++ 2021-05-03 22:00:57 +02:00
Jérôme Gardou
07dcec0325 [PSEH] Use dummy PSEH for clang(-cl) amd64 build 2021-05-03 22:00:57 +02:00
Jérôme Gardou
d0bb775774 [NOTEPAD] Fix resource file
VIRTKEY can't be preceded with ^
and is useless anyway
2021-05-03 22:00:57 +02:00
Jérôme Gardou
aa51bcfbcb [CMAKE] Do not use a flag which clang doesn't know 2021-05-03 22:00:57 +02:00
Jérôme Gardou
523912536e [KERNEL32] Sync NLS RC files with wine 6.7
Mostly for having them UTF-8 encoded
2021-05-03 22:00:57 +02:00
Jérôme Gardou
802665a4ac [CRT] Also use alias _rot functions for clang-cl amd64 build 2021-05-03 22:00:57 +02:00
Jérôme Gardou
4ae4590b66 [CMAKE] Do not define _M_AMD64 when using amd64 clang-cl 2021-05-03 22:00:57 +02:00
Jérôme Gardou
8aea84dab7 [CRT] Do not define builtin functions if not needed 2021-05-03 22:00:57 +02:00
Jérôme Gardou
7197620b89 [CMAKE] Always use cl to build host tools 2021-05-03 22:00:57 +02:00
Jérôme Gardou
a66214c020 [GITHUB] Enable GCC+clang amd64 build
Use github cache to build & retrieve RosBE on linux,
for now using a custom build script until Next RosBE is out

Use a matrix to manage linux gcc + clang build
2021-05-03 22:00:57 +02:00
Jérôme Gardou
061c7ecb1a [FRAMEDYN] Fix the whole situation with regards to wchar_t
Alias CHSTRING_WCHAR to unsigned short and use inline wrappers
to be able to use the thing with modern compilers

Put the GCC aliases into the public header.

Enable build with clang-cl
2021-05-03 22:00:57 +02:00
Jérôme Gardou
a8255233f8 [SPEC2DEF] Fix imports of C++ stdcall exports
Too much mangling mangles it too much
2021-05-03 22:00:57 +02:00
Jérôme Gardou
ec68a3311f [CMAKE] Use SEH exceptions for c++ in clang amd64 build 2021-05-03 22:00:57 +02:00
Jérôme Gardou
976c4c10aa [CRT] Fix SEH macros for clang x64 2021-05-03 22:00:57 +02:00
Jérôme Gardou
b52ab2493b Revert "[CMAKE] Disable SSE instruction on GCC amd64 builds"
The right fix is to ensure that the stack is properly 16-bit aligned
This reverts commit 63944988a2.
2021-05-03 22:00:57 +02:00
Oleg Dubinskiy
58daf942fe [GDI32] Fix wrong ordering of parameters in NtGdiDdGetDC call (#3637)
It allows to properly pass the surface handle (and palette entry pointer) from MS ddraw into win32k.
Otherwise, they are passing into the wrong parameters of actual NtGdi* function, and due to this,
since they're detected as invalid, they become NULL, and that function does not work correctly.

See https://docs.microsoft.com/en-us/windows/win32/devnotes/-dxgkernel-ntgdiddgetdc for the reference
(and confirmed by our headers).

Required by MS DirectDraw stack (ddraw.dll & dxg.sys).
CORE-17561
2021-05-03 18:11:18 +02:00
George Bișoc
11a60cebea [NTOS:PS] Add some data structures
These are needed for API tests. The following structures are taken from Process Hacker.
2021-05-02 21:03:09 +02:00
George Bișoc
207543429b [NTOSKRNL] Use IQS_SAME instead of ICI_SQ_SAME
And remove the redundant ICI_SQ_SAME macro as it's no longer needed in the codebase.
2021-05-02 21:00:51 +02:00
George Bișoc
efaa7b6a24 [NTDLL_APITEST] Add alignment probing tests for Query/Set information thread related routines 2021-05-02 20:58:40 +02:00
George Bișoc
3b53b3d07f [NTDLL_APITEST] Add alignment probing tests for Query/Set information process related routines 2021-05-02 20:56:14 +02:00
George Bișoc
74e527b452 [NTOS:PS] Bring the threads/processes information classes table back
These were removed in bf493b9, for whatever apparent reason. It's time to import them back.
2021-05-02 20:52:18 +02:00
George Bișoc
39b266b728 [NTOSKRNL] Move the ICIF related code and stuff into a separate header file
For easier accessibility for the APITESTs and whatnot.
2021-05-02 20:49:06 +02:00
George Bișoc
ae8ebe45d2 [NTDLL_APITEST] Implement alignment probing library code
The probing library code only probes data types for threads/processes information classes in Process Structure subsystem for now.
2021-05-02 20:45:57 +02:00
George Bișoc
66007dee2b [NTDLL_APITEST] Include the internal headers from the kernel and the probing library file 2021-05-02 20:42:19 +02:00
George Bișoc
242efae9a2 [NTOS:PS] Make sure we can impersonate the given token first
PsImpersonateClient blindly impersonates the requested client even though it doesn't know if the actual token given to the call can be impersonated for the thread of the client which we are going to begin impersonation. In the case where impersonation is not possible, make a copy of the given token and assign the newly one for impersonation instead.
CORE-17539
2021-05-02 16:55:20 +02:00
George Bișoc
18ddb6ba92 [NTOS:SE] Implement SeTokenCanImpersonate routine
SeTokenCanImpersonate ensures whether the client impersonation can occur, and if not, the call signals this to the caller.
2021-05-02 16:55:19 +02:00
Eric Kohl
a7d6483e65 [NTOS:PS] Revert 4d7062abb6 on request 2021-05-02 16:26:11 +02:00
Eric Kohl
9fa31e0f9b [NTOS:PS] Add the missing privilege check to NtSetInformationThread:ThreadPriority
This fixes the remaining failure in the NtSetInformationThread test.
2021-05-02 15:28:26 +02:00
Eric Kohl
4d7062abb6 [NTOS:PS] Add ThreadInformation probing to NtSetInformationThread
Also get rid of unused buffer check code.
This fixes two test failures.
2021-05-02 13:55:29 +02:00
Eric Kohl
2e88e2b904 [NTOS:PS] Rewrite NtSetInformationThread to match NtQueryInformationThread
The Information length must always be checked before referencing the thread object. This fixes a test failure.
2021-05-02 13:46:22 +02:00
Eric Kohl
5585767460 [NTOS:PS] Rewrite NtQueryInformationThread to match NtQueryInformationProcess
The information length must always be checked before referencing the thread object. This fixes the remaining test failure.
2021-05-02 12:46:55 +02:00
Serge Gautherie
249f2388bd [REACTOS] Fix parameter types on some exports (#3217)
Fix some wrong parameter types on some exports in NTDLL, KERNEL32, WTSAPI32, and NTOSKRNL.
2021-05-01 21:11:34 +02:00
Serge Gautherie
5d89643311 [NTOS:OB] ObQueryDeviceMapInformation(): Fix annotations 2021-05-01 11:26:07 +02:00
Serge Gautherie
f1689cdcea [PSDK] UnlockResource(): Improve definition
Sync' with
a9e50da352
2021-05-01 09:48:02 +02:00
Katayama Hirofumi MZ
92e3b426b3 [CMD_APITEST] Follow-up of #3632 (0c2230a)
CORE-17500
2021-04-30 10:48:33 +09:00
Hermès Bélusca-Maïto
bb467003b7 [INF] Remove stray file. Addendum to commit a1fc312a. 2021-04-30 02:42:35 +02:00
Serge Gautherie
8a61e4f08c [NTOS:PS] NtQueryInformationProcess(): Fix ProcessDeviceMap case
Fix Clang-Cl
'...\ntoskrnl\ps\query.c(583,33): warning: variable 'Status' is uninitialized when used here [-Wuninitialized]'

Addendum to 1074a9a.
2021-04-29 21:40:58 +02:00
Serge Gautherie
c0961cac10 [NTOS:PS] NtQueryInformationProcess(): Sync' annotations 2021-04-29 21:40:58 +02:00
Katayama Hirofumi MZ
91dc5eac7d [FC] Fix typo s/IDS_RESYNCH_/IDS_RESYNC_/ s/Resynch/Resync/
CORE-17500
2021-04-29 16:59:20 +09:00
Katayama Hirofumi MZ
0c2230ad64 [CMD_APITEST] Add FC testcase (#3632)
Add a testcase for FC (file comparison) command to investigate FC command. CORE-17500
2021-04-29 16:39:13 +09:00
Hervé Poussineau
a1fc312a89 [NE2000] Use the real MAC address instead of a fake one
These lines were added 15 years ago, in r18445.
2021-04-28 17:28:38 +02:00
Jérôme Gardou
b97d5fd2f7 [NTOS:KDBG] Fix invalid DBG print 2021-04-28 15:58:01 +02:00
Jérôme Gardou
0ab44664b6 [KDGDB] Remove debugging leftover 2021-04-28 14:52:05 +02:00
Jérôme Gardou
3726b992ed [NTOS:KDBG] Begin port for amd64.
Not really functional, but it prints debug output.
Take this as an opportunity to add consistancy between some i386 & amd64 intrinsics
2021-04-28 13:10:23 +02:00
Jérôme Gardou
439aefb31d [CRT] Sync tlssup.c with mingw-w64
This allows amd64 built binary to be loaded.
2021-04-28 13:10:23 +02:00
Jérôme Gardou
fe3278d4d6 [CRT] We never use the mthread library 2021-04-28 13:10:23 +02:00
Jérôme Gardou
3ee1eb42a5 [KDGDB] Avoid looping for ever when something unexpected happens 2021-04-28 13:10:23 +02:00
Jérôme Gardou
2413530acf [SDK] Use GAS SEH capabilities instead of CFI
Also remove a hack for x86 GAS which no longer holds
2021-04-28 13:10:23 +02:00
Jérôme Gardou
5e29e98f91 [NTOS:KE] Explicitly use sysretq instruction 2021-04-28 13:10:23 +02:00
Jérôme Gardou
63944988a2 [CMAKE] Disable SSE instruction on GCC amd64 builds
Except for user-mode modules
2021-04-28 13:10:23 +02:00
Jérôme Gardou
ba74a05a17 [PSEH] Add implementation for GCC amd64
Also, put include directory next to the library and use
target_include_directories(.. INTERFACE ..) to get this right.
This is because :
 - Having includes & implementation in two different places buggers me
 - This makes sure that there is no "if it compiles everything is fine" behaviour from anyone
   because now even static libraries need it for GCC amd64 build
Also add __USE_PSEH2__ define for the non SEH-aware compilers out there and use it in a few headers
where we define macros involving __try
2021-04-28 13:10:23 +02:00
Jérôme Gardou
d31856cda1 [CRT] Do not include unneeded PSEH header 2021-04-28 13:10:23 +02:00
Jérôme Gardou
e470b58376 [REACTOS] Explicitly link against pseh & include pseh headers in a few places 2021-04-28 13:10:23 +02:00
Jérôme Gardou
37bc01f42b [CMAKE] Introduce a GCC plugin for helping with amd64 SEH implementation
\#pragma REACTOS SEH(except)
\#pragma REACTOS SEH(finally)
What it does is counting the number of SEH __try blocks and emit the proper assembly statements at function prologue
It also checks for mixing C++ & SEH exception handling, which wouldn't work
2021-04-28 13:10:23 +02:00
Jérôme Gardou
8abcd18742 [RTL] Use addressing relative to rip 2021-04-28 13:10:23 +02:00
Jérôme Gardou
96a2b18903 [PSEH] Make the dummy PSEH at least usable.
Not screwing the code flow when no exception happens would be the least
2021-04-28 13:10:23 +02:00
Jérôme Gardou
617c7cc377 [HALX86] Use addressing relative to RIP 2021-04-28 13:10:23 +02:00
Jérôme Gardou
6f000979eb [BTRFS] Use addressing relative to RIP 2021-04-28 13:10:23 +02:00
Jérôme Gardou
0eea78648c [KDGDB] Adapt to amd64 2021-04-28 13:10:23 +02:00
Jérôme Gardou
97858f3c87 [REGEDIT] Fix declaration of DbgPrint 2021-04-28 13:10:23 +02:00
Jérôme Gardou
955b5c27b1 [CRT] Fix __ll_lshift, __ll_rshift and __ull_rshift intrinsics on gcc-amd64 2021-04-28 13:10:23 +02:00
Jérôme Gardou
97a8953538 [CMAKE:GCC] Enforce file alignment on driver & kernel images 2021-04-28 13:10:23 +02:00
Jérôme Gardou
382426f02e [NDK] Add some missing defines for EFLAGS on amd64 2021-04-28 13:10:23 +02:00
Jérôme Gardou
662774bca3 [NTOS] Do not force-align an integer value 2021-04-28 13:10:23 +02:00
Jérôme Gardou
d55276aad9 [FREELDR] Save used register when calling PNPBIOS 2021-04-28 13:10:23 +02:00
Jérôme Gardou
2bf116359b [FREELDR] Force alignment of .text section on disk
Fixes boot for clang & GCC-amd64 build
Also rename freeldr_i386.lds to freeldr_gcc.lds for better clarity
2021-04-28 13:10:23 +02:00
Jérôme Gardou
7513cc9fca [PSDK] Do not compare to max value if we can make sure that the value fits in target type
This fixes clang warning -Wtautological-constant-out-of-range-compare
2021-04-28 13:10:23 +02:00
Jérôme Gardou
a4138329a1 [CRT] Add macros to disable diagnostics from GCC and clang
Instead of disabling them globally, this will help making finer grained decisions
2021-04-28 13:10:23 +02:00
Jérôme Gardou
1d1a21a920 [SDK] Make sure we build pefixup with AMD64 definitions 2021-04-28 13:10:23 +02:00
Jérôme Gardou
b513c61cd1 [SDK] Fix definition of IMAGE_NT_HEADERS64 in host tools 2021-04-28 13:10:23 +02:00
Jérôme Gardou
79bc62f206 [COMPILER_APITEST] Disable SEH tests for GCC amd64 build 2021-04-28 13:10:23 +02:00
Jérôme Gardou
0995b35bac [KERNEL32_APITEST] Fix compilation & global wut?? with SSE exception test 2021-04-28 13:10:23 +02:00
Stanislav Motylkov
4959ccc8df [ACPI] Improve Russian translation INF file
Also some minor whitespace fixes
2021-04-27 23:58:53 +03:00
Stanislav Motylkov
ea1f724928 [FC] Add Russian (ru-RU) translation
Addendum to 2db87ebd.
2021-04-27 18:40:23 +03:00
George Bișoc
5222eae730 [NTDLL_APITEST] Implement NtImpersonateAnonymousToken testcase 2021-04-27 12:25:03 +02:00
George Bișoc
44fb528fcc [NTOS:SE] Implement the NtImpersonateAnonymousToken system call
Implement SepImpersonateAnonymousToken private helpers, which is necessary for the complete implementation of NtImpersonateAnonymousToken function and thus finally we're able to impersonate the anonymous logon token.
2021-04-27 12:25:03 +02:00
George Bișoc
12c69e6d63 [NTOS:SE] Add the declaration prototype of SepRegQueryHelper in the internal header 2021-04-27 12:25:03 +02:00
George Bișoc
b68216e503 [NTOS:SE] Annotate the function parameters of SepRegQueryHelper with SAL
And add a documentation comment header
2021-04-27 12:25:03 +02:00
George Bișoc
d28d2eb5f8 [BOOTDATA] Include EveryoneIncludesAnonymous registry value on Lsa system key
For further information
https://docs.microsoft.com/en-us/windows/win32/api/securitybaseapi/nf-securitybaseapi-impersonateanonymoustoken
2021-04-27 12:25:03 +02:00
Jérôme Gardou
9ef5a7eb7a [CMAKE] Fix compilation with newer windres versions
Also use clang as preprocessor when using it
Also, use *our* headers instead of the platform ones
2021-04-27 11:54:12 +02:00
Jérôme Gardou
ba9a7decba [PSDK] Import winuser.rh from wine 6.7 2021-04-27 11:54:12 +02:00
Katayama Hirofumi MZ
c3adff41b4 [CMDUTILS][FC] Forgot to add a line break to IDS_RESYNCH_FAILED
CORE-17500
2021-04-27 18:45:24 +09:00
Piotr Hetnarowicz
622c226e2e [FC] Add the Polish translation (#3629) 2021-04-27 11:20:56 +02:00
Omer Itzic Schwartz
5582fb30a5 [JOY] Update Hebrew (he-IL) translation (#3563) 2021-04-27 10:52:09 +03:00
Serge Gautherie
b8ae966634 [CRT] exp2*.c: Add an explicit type for 'TWO' variable
Addendum to 199adee.
2021-04-27 10:36:54 +03:00
Serge Gautherie
b6493654a3 [CRT] intrin_x86.h: Fix '_InterlockedIncrement64' copypasta
Addendum to bc3a471.
2021-04-27 10:36:54 +03:00
Serge Gautherie
c41007624f [CMAKE] config.cmake: Fix 'STEQUAL' typo, in a comment
Addendum to e90b6bb.
2021-04-27 10:36:54 +03:00
George Bișoc
f9c603db6e [NTOS:OB] Do not close the handle if it's granted access to ObpAccessProtectCloseBit
As of now the Object Manager private service, ObpCloseHandleTableEntry, looks for OBJ_PROTECT_CLOSE attribute if a handle should not be closed. However, in ObDuplicateObject if an attribute of OBJ_PROTECT_CLOSE is found as it's been filled to the caller (see L2466) this attribute is removed from the attributes list of the new handle and ObpAccessProtectCloseBit access is granted to the newly duplicated object handle.

With that being said ObpCloseHandleTableEntry indiscriminately closes the object handle albeit it shouldn't do so. As a matter of fact in Windows Server 2003 SP2 this service indeed checks for ObpAccessProtectCloseBit flag bit and if the condition is met then it returns STATUS_HANDLE_NOT_CLOSABLE as it should. Therefore we should do the same.

Now NtClose can properly warn the calling thread the object handle can't be closed which fixes a testcase failure within NtDuplicateObject NTDLL APITEST where this function gives handle close protection bit as requested by the caller.
2021-04-26 19:36:38 +02:00
Serge Gautherie
710acab83d [NTOS:MM] MiSetPagingOfDriver(): Add an explicit #if around unreachable code 2021-04-26 10:27:20 +02:00
Hermès Bélusca-Maïto
869a914cfd [SYSSETUP] Forgot to update the ROS banner after 2021. Addendum to b570fac1. 2021-04-26 02:21:59 +02:00
Katayama Hirofumi MZ
2db87ebde3 [FC][TRANSLATION] FC: Enable localization (#3626)
Enable localization on FC (file comparison) command. CORE-17500
2021-04-26 09:08:06 +09:00
Katayama Hirofumi MZ
9404bac5ee [CMDUTILS][FC] Follow-up of #3622 (8bf4711)
CORE-17500
2021-04-26 08:52:22 +09:00
Stanislav Motylkov
eff05c34b7 [USETUP] Update Russian (ru-RU) translation
Addendum to 3ee9535e. CORE-17523
2021-04-26 02:06:14 +03:00
Konrad Dybcio
d5421d5a3d [HHPCOMP] Add ARM64/AArch64 types
These were missing... not anymore!

Addendum to 4c7b71ac. CORE-17518

Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2021-04-25 21:08:17 +03:00
Stanislav Motylkov
58a3928571 [WINLOGON] Update Russian (ru-RU) translation
Addendum to 7ca90b50, 9a6d4bf0, ec2bfa2e and 5f033392.
2021-04-25 20:22:45 +03:00
Eric Kohl
9cdd53ffeb [MMSYS] Implement ShowAudioPropertySheet() and ShowFullControlPanel() 2021-04-25 19:04:35 +02:00
George Bișoc
ffea5152e6 [WIN32SS][NTUSER] Fix an integer underflow within scrollbar info setting
Thanks goes to I_Kill_Bugs for the patch (and partly to Kyle Katarn for the PR) and Hermes for tweaking the patch code. Had to make a commit myself as the PR author's account is deleted.

Signed-off by: I_Kill_Bugs (original patch author)
Signed-off by: Kyle Katarn <contact@kcsoftwares.com>
Signed-off by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2021-04-25 15:56:39 +02:00
Katayama Hirofumi MZ
66f6abfc4a [SDK][INCLUDE] Fix offsetof and CCSIZEOF_STRUCT for Clang-CL build (#3624)
Clang-CL was failing with "error: function declaration cannot have variably modified type". This PR will fix the Clang-CL build. CORE-17547
2021-04-25 13:38:22 +09:00
Katayama Hirofumi MZ
8bf471105e [CMDUTILS][FC] Initial implement FC command (#3622)
Implement FC (file comparison) command. As a starting point, we support binary mode comparison at first. Text mode comparison and wildcard are not supported yet. CORE-17500
2021-04-25 13:06:13 +09:00
alexpavlovic
db269c85e6 [TRANSLATION][CACLS] Add Serbian translation (#859) 2021-04-24 20:38:20 +02:00
Serge Gautherie
db416e3914 [REACTOS] InitImageList(): Fix error checks
And simplify code a bit.
2021-04-24 20:35:48 +02:00
Serge Gautherie
a120d67d0e [USRMGR] Increase name sizes to 'UNLEN + 1' 2021-04-24 20:30:58 +02:00
George Bișoc
1cf1892b14 [COMCTL32] Fix an incorrect returned value for ImageList_Remove
Thanks goes to Kyle Katarn. Had to make a commit myself due to author's account being deleted.

Signed-off-by: Kyle Katarn <contact@kcsoftwares.com>
2021-04-24 20:13:56 +02:00
Abdulganiev Rafael
48d9c07894 Fix start logo resource 2021-04-24 18:17:41 +02:00
Eric Kohl
0f27609813 [UMPNPMGR] Fix DPRINT in PNP_GetDeviceStatus() 2021-04-24 17:06:08 +02:00
Eric Kohl
b24f463a33 [UMPNPMGR] Start the device in SetupDeviceInstance 2021-04-24 17:04:11 +02:00
Eric Kohl
d5b20cb118 [UMPNPMGR] Implement PNP_SetDeviceProblem
CORE-17527
2021-04-24 11:59:22 +02:00
George Bișoc
c0c431b0ee [TRANSLATION][WINLOGON] Small Romanian & Italian translation update
Small translation update as per the pushed 5f03339 commit.
2021-04-22 18:12:22 +02:00
George Bișoc
84b3fecb26 [MSGINA] Determine which kind of dialog box is before terminating it
Do a sanity check onto the dialog box type before terminating it. As it stands now, a call of PostQuitMessage() is invoked even when the dialog box is modal. This is illegal due to the fact that the shutdown dialog box is initiated by the "Security" main window thus WlxDialogBoxParam.

A call to PostQuitMessage onto a modal dialog box leads to a undefined behaviour, as it'll not just terminate the thread but also eventually killing the Winlogon process whose the thread belongs to.
CORE-17535
2021-04-22 13:30:55 +02:00
Victor Perevertkin
246dbd3384 [GITHUB] Update LLVM version to 12 and fix indentation 2021-04-22 13:48:43 +03:00
Eric Kohl
32428a39ed [NEWDEV] Set the CM_PROB_FAILED_INSTALL problem code on failed install
CORE-17527
2021-04-20 22:00:41 +02:00
Hervé Poussineau
1ff3d1c395 [DHCPCSVC] Change automatic address assignment to use hardware address
According to RFC 3927, the pseudo-random number generation algorithm MUST be chosen
so that different hosts do not generate the same sequence of numbers, and that the
pseudo-random number generator SHOULD be seeded using a value derived from the
IEEE 802 MAC address, so that a host will usually select the same IPv4 Link-Local
address each time it is booted.
2021-04-20 18:28:36 +02:00
Serge Gautherie
0dedb9b474 [WINLOGON][MPR][SDK] WNetClearConnections: Fix function parameter type (#3480)
Addendum to 62f79fae93.

Signed-off-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
2021-04-18 21:58:44 +03:00
Arnav Bhatt
5f03339239 [WINLOGON] Show "Restarting..." message when restarting (#3593)
Signed-off-by: Arnav Bhatt <arnavbhatt288@gmail.com>
2021-04-18 21:48:30 +03:00
George Bișoc
3d8dd932b1 [NTOS:SE] Lock the token in SeQueryInformationToken and do some cleanup
* Guard the token in a lock whilst querying stuff
* Remove the piece of code that checks if the information class provided is above the maximum information class threshold. That code literally duplicates the inner functionality of the default case in the switch block, where the code falls in that case if an invalid information class is provided anyway.
* Remove the redundant information classes. Internally, this function in Windows has 12 switch case blocks (11 token info classes + the default case) and the other classes are supported in NtQueryInformationToken only so it doesn't make any logical sense to keep them in the codebase.
* Annotate the argument parameters with SAL and add documentation header
2021-04-18 13:56:37 +02:00
Mark Jansen
3feb0cfb9f [CONFIGURE] Fix warnings shown when parsing cmdline 2021-04-18 13:40:30 +02:00
Hervé Poussineau
af9df93274 [WS2_32] Create registry keys Protocol_Catalog9/NameSpace_Catalog5 if needed
This fixes networking in LiveCD and installation in 2nd stage.
CORE-17514
2021-04-17 23:57:41 +02:00
Eric Kohl
9e947e2b2b [DEVMGR] Get rid of the unknown device class hack
Treat the unknown device class like any other device class.

CORE-17527
2021-04-16 23:45:08 +02:00
Serge Gautherie
7d77ec28f7 [CMAKE] winetests/: Move '/wd4133' to gdiplus/ only
Addendum to 42d2d5e.
CORE-7538
2021-04-16 15:00:03 +03:00
Eric Kohl
3fa57b8ff7 [NEWDEV] When a device install fails, set the 'Unknown' device class for that device
CORE-17527
2021-04-15 21:49:32 +02:00
George Bișoc
0e3fce082e [TRANSLATION][RAPPS] Fix the unrecognised escape sequence in the Hungarian translation
This is an addendum to ea04edc. The author has forgotten the newline escape sequence, whoops...
2021-04-15 17:23:25 +02:00
Victor Perevertkin
7194f2f044 [UDFS] Remove /Gz flag from options on MSVC 2021-04-15 06:45:54 +03:00
Victor Perevertkin
d10728a645 [CMAKE] Rely less on CMAKE_BUILD_TYPE variable
Having conditional statements with CMAKE_BUILD_TYPE is an antipattern
See https://stackoverflow.com/questions/66079007/having-conditional-statements-on-build-type-variable-a-good-design

We use both single- and multi-config generators (Ninja and VS), so we
can't really rely on CMAKE_BUILD_TYPE, because it's not always set.

This commit alters some conditional flags to use <$CONFIG:...>
generator expression, but is still not complete. Also, our default
optimization level (4) now has what was always a de-facto flags
2021-04-15 06:44:56 +03:00
Victor Perevertkin
f0b53998c8 [CMAKE] Require ARCH variable to be specified explicitly
Also, use CMAKE_TRY_COMPILE_PLATFORM_VARIABLES in toolchain files
to solve issues with ARCH not being passed during try_compile
2021-04-15 06:44:55 +03:00
Victor Perevertkin
72ad37c1cd [CMAKE] Unify configs for architectures
config*.cmake files are constantly getting out of sync between
each other. Besides that, the parameters are not really dependent
on a target architecture, but rather on a compiler (except *ARCH)

This approach seems to be more future-prone, and allows to see
all the options in one file (there are really not that many of them)
2021-04-15 06:44:52 +03:00
Serge Gautherie
1758c3831b [MSHTML] MSVC: There is no 'error C4028' anymore
MSVC amd64
'...\dll\win32\mshtml\nsio.c(3755): error C4028: formal parameter 3 different from declaration'
was fixed by 5ed1867.

CORE-7538
2021-04-14 20:55:57 +02:00
Tibor Lajos Füzi
ea04edce2d [TRANSLATION] Add/update Hungarian translation for solitaire, spider solitaire, rapps, usetup, cpl/timedate, shell32, user32 2021-04-14 16:16:24 +02:00
Serge Gautherie
8ddbfdeb57 [BOOTDATA][CMAKE] Sort 2 directories out
winsxs\x86_reactos.newapi_6595b64144ccf1df_1.0.0.0_none_deadbeef:
removed: silently added on 8d30456 and never used.

bin\suppl:
moved: to 60 from 80.
2021-04-12 17:40:18 +02:00
Hervé Poussineau
e044df8736 [SETUPAPI] Correctly enumerate non-installed devices in SetupDiGetClassDevsExW
Always try to read the correct device GUID from registry, even if GUID filter is disabled.

CORE-17527
2021-04-11 15:12:02 +02:00
Hervé Poussineau
f9df7af28a [SETUPAPI] Reimplement SetupDiBuildClassInfoListExW using CM_* functions
We can now enumerate device classes on other computers.
2021-04-11 15:12:02 +02:00
Hervé Poussineau
8da00cd97c [SETUPAPI] Fix CM_Open_Class_Key_ExW, when pClassGuid is used
Braces around GUID were missing.
2021-04-11 15:12:02 +02:00
Chan Chilung
6b700c6af1 [TRANSLATION] Chinese Traditional (zh-TW) translation update (#3526)
*Add Chinese Traditional translation for:
- [THEMES]
- [HIVESFT]
- [HIVEDEF]
- [HIVECLS]
- [SCREENSAVERS]
- [VGAFONTEDIT]
- [KERNEL32]
- [TASKLIST]
- [MYDOCS]
- [MSXML3R]
- INFs

*Chinese Traditional translation update for:
PR 3399
- [MSGINA]
- [SHELL32]

PR 3422
- [SOLITAIRE]

Others...

*Wine translation sync
2021-04-11 10:59:19 +02:00
Jose Carlos Jesus
415e93ae13 [CHKDSK][USERINIT] Add and improve Portuguese (pt-PT) translation (#3553) 2021-04-11 10:40:58 +03:00
Serge Gautherie
ea3eaa5d87 [UNIATA] uniata_reg.inf: Add 'PnpInterface\5' key
commented out, for the time being.

CORE-17395
2021-04-11 09:30:42 +03:00
Serge Gautherie
29c061e499 [UNIATA] DriverEntry(): Fix 'Paramaters' typo, in reg key names
CORE-17524
2021-04-11 09:30:28 +03:00
Serge Gautherie
d3fc345730 [CMD] de-DE: Fix 'Paramater' typo 2021-04-11 09:30:28 +03:00
Serge Gautherie
0236666968 [UMANDLG] DlgProc(): Fix 'paramater' typo, in documentation 2021-04-11 09:30:28 +03:00
Eric Kohl
8c475e4709 [CMAKE] Build xboxvmp in Xbox-builds only
This prevents the creation of a fake Xbox GPU device on non-Xbox builds.

CORE-17529
2021-04-10 20:15:36 +02:00
George Bișoc
2ae526a039 [SHELL32] Do not format the partition if it's a system drive
Implement a sanity check helper which determines if the partition is a system drive or not based on the %SystemDrive% environment variable, preventing the user from nuking accidentally the partition with ReactOS system files installed. :P

NOTE: This code serves as a temporary measure to prevent accidental formatting of the system drive. In the future most of this code has to be totally rewritten (and stopping syncing with WINE altogether) as well as FMIFS library code so that we're on par in terms of compatibility with Windows.
2021-04-10 17:38:23 +02:00
Eric Kohl
c2757032c8 [DEVMGR] Use FlagsEx to check for DI_FLAGSEX_POWERPAGE_ADDED 2021-04-10 16:22:47 +02:00
Eric Kohl
ab0bbeb126 [DEVMGR] UpdateDevInfo: Enable built-in property pages by default
CORE-17532
2021-04-10 15:50:37 +02:00
George Bișoc
aea948a79e [OSK] Handle the warning dialog box in its own thread
The dialog box at the startup of On-Screen Keyboard is displayed alongside with main window. While the Microsoft's OSK in XP is written in MFC and OSK is actually a mere window whereas our OSK is a dialog, the main dialog procedure call is superseded until the user does something with the warning dialog box on startup.

Just create a thread for it and handle the dialog box on startup in its own thread.
2021-04-10 10:05:08 +02:00
Hermès Bélusca-Maïto
3ad573f92f [NTOS:KE] Both KeFindConfigurationEntry() and KeFindConfigurationNextEntry() functions are exported by NTOSKRNL, so they definitively must NOT be in the discardable INIT section!!
Noticed while reviewing c7d1ff4a.
2021-04-10 00:43:52 +02:00
Jérôme Gardou
3731fd1661 [CRT] Properly declare rot functions in public headers 2021-04-09 15:12:13 +02:00
Jérôme Gardou
620f333252 [CRT] Fix rot functions aliases in non-x86 clang builds 2021-04-09 15:00:07 +02:00
Jérôme Gardou
199adee3fe [CRT] Add a generic C version of exp2(f) and use it for all architecture 2021-04-09 14:59:07 +02:00
Jérôme Gardou
a19ca409ae [PSEH] Each amd64 compiler that we use support SEH 2021-04-09 12:36:04 +02:00
Jérôme Gardou
76a241dea6 [CMAKE] Also set GCC/CLANG variables on amd64 builds 2021-04-09 12:35:30 +02:00
Jérôme Gardou
bc3a471413 [CRT] Do not try to implement x86_64 builtins of clang 2021-04-09 10:33:05 +02:00
Jérôme Gardou
b379743ccb [CMAKE] Use find_program to get the location of LD when building with clang 2021-04-09 10:32:12 +02:00
Jérôme Gardou
83e1afe12a [CMAKE] Do not call clang with unsupported arguments 2021-04-09 10:09:55 +02:00
Victor Perevertkin
f3e1697c2b [NDK] DATA_SEG requires an extra #pragma on MSVC 2021-04-09 04:38:35 +03:00
Victor Perevertkin
6645227270 [PC98VID] Fix a typo, addendum to 959729f6ee 2021-04-09 03:59:55 +03:00
Victor Perevertkin
74ec94e12c [CMAKE] Some options are only supported by GCC, don't use them for clang
These are (so far):
-Wno-format-overflow
-Wno-nonnull-compare
-Wno-old-style-declaration
-Wno-unused-but-set-variable
2021-04-09 03:58:19 +03:00
Victor Perevertkin
959729f6ee [PC98VID] Fix clang 12 warning 2021-04-09 03:54:25 +03:00
Victor Perevertkin
c7d1ff4a9d [SDK][NDK] Fix clang 12 compilation 2021-04-09 03:51:32 +03:00
Mark Jansen
2587d72ef7 [WINSXS] Add some amd64 manifests
Co-authored-by: Timo Kreuzer <timo.kreuzer@reactos.org>
2021-04-08 20:48:24 +03:00
Jérôme Gardou
c48580135d [NTOS:MM] Fix a bit page fault handler with regard to COW sections 2021-04-08 15:40:37 +02:00
Jérôme Gardou
a34d9bcfb6 [NTOS:MM] Share "page.c" between i386 & amd64 builds 2021-04-08 15:40:37 +02:00
Jérôme Gardou
7ea8312617 [NTOS:MM] Split MmCreateProcessAddressSpace in two parts
Generic one and arch-specific one.
Properly fail if we are out of resources.
Restore a lost assert.
2021-04-08 15:40:37 +02:00
Jérôme Gardou
6c027d28f9 [NTOS:MM] Properly track system process hyper space PDE page 2021-04-08 15:40:37 +02:00
Jérôme Gardou
370982aa1d [NTOS:MM] Make i386/page.c usable for all x86 variants
This includes PAE & amd64
2021-04-08 15:40:37 +02:00
Jérôme Gardou
6d957d6958 [NDK] Define NX bit in X86PAE PTE struct 2021-04-08 15:40:37 +02:00
Jérôme Gardou
b10d92a16c [NTOS:MM] Use MI_MAKE_HARDWARE_PTE & friends in legacy Mm 2021-04-08 15:40:37 +02:00
Jérôme Gardou
43378411fb [NTOS:MM] Rewrite arch-specifics of the legacy Mm
Properly handle PDE refcounting
Clean-up of the internal API
Enforce attaching to the process when modifying its memory layout, instead of
making circonvoluted mappings which always end up being broken.
2021-04-08 15:40:37 +02:00
Jérôme Gardou
b445005c70 [NTOS:MM] Get rid of MmRosFlushVirtualMemory
It's not used anywhere now, and it will eventually be gone
2021-04-08 15:40:37 +02:00
Jérôme Gardou
9e121fb6c2 [NTOS:MM] Get rid of MmSetCleanAllRmaps and MmIsDirtyPageRmap
Everything is wrong with them. Bad locking. Bad logic.
2021-04-08 15:40:37 +02:00
Jérôme Gardou
7bffb92099 [NTOS:MM] Let ARM3 handle invalid PDE for itself. 2021-04-08 15:40:37 +02:00
Jérôme Gardou
36a92e6ea5 [NTOS:MM] Fix a bit the page-out/page-in logic
- Do not lock the section segment when we are serving a fault for a process private page.
 - Do not keep the process address space lock while writing to pagefile.
 - Do not wait for an event that might never be set.
2021-04-08 15:40:37 +02:00
Jérôme Gardou
c4232ae995 [CMAKE] Fix a file name 2021-04-08 15:35:22 +02:00
Katayama Hirofumi MZ
773ad7aebc [BROWSEUI] auto-completion: Support large number items (#3592)
If the items are too many, enable filtering in item enumeration. CORE-9281
2021-04-08 15:02:05 +09:00
Jérôme Gardou
82c908195c Revert "[NTOS:MM] Allow MiMapPageInHyperSpace to be called from DISPATCH_LEVEL"
This reverts commit 8404d1a6ff.
Not ready for prime time, sorry.
2021-04-07 23:26:44 +02:00
Jérôme Gardou
8404d1a6ff [NTOS:MM] Allow MiMapPageInHyperSpace to be called from DISPATCH_LEVEL
Also annotate it to show its behaviour.
2021-04-07 23:09:26 +02:00
Eric Kohl
81fd88e249 [INF] Disable the AddInterface directive temporarily, in order to install volume devices.
CORE-17530
2021-04-07 22:39:47 +02:00
Eric Kohl
e4646bc5d1 [SETUPAPI] SetupDiInstallDevice: Do not fail if the .inf file does not have a .Services section
CORE-17530
2021-04-07 21:39:55 +02:00
Hervé Poussineau
4d25869e0e [SYSSETUP] Manually start PlugPlay service, and wait for it before continuing
That way, class installers are already registered before installing devices.

CORE-17538
2021-04-07 19:35:50 +02:00
Oleg Dubinskiy
52f4d8019b [NTOS:MM][NTOS:SE] Mute some noisy stubs
Mute debug prints of MmDoesFileHaveUserWritableReferences and SeAuditingFileEventsWithContext stubs.
These stubs are very noisy and create a lot of spam in the log when using Microsoft NTFS driver in ReactOS (with some other improvements applied).
Implementing those functions isn't badly required for the proper work of this driver, so better way for now is just mute these stubs a bit.
After my changes, they will be displayed only once, and the log will be more clear, so it will seem to be enough to understand that the driver calls these routines.
CORE-17409
2021-04-07 13:16:03 +02:00
George Bișoc
3ee9535e05 [USETUP] Display some contents in the page whilst installing the bootloader (#3559)
CORE-17523
2021-04-07 10:11:07 +02:00
Katayama Hirofumi MZ
f511258ee5 Revert '[FONTEXT_APITEST] Follow-up of #3585' 2021-04-07 17:08:23 +09:00
Katayama Hirofumi MZ
2fd058dce6 [BROWSEUI] Reduce IAutoComplete failures (#3590)
- Delete OnEditUpdate method.
- Improve the expand condition.
CORE-9281
2021-04-07 13:38:22 +09:00
Katayama Hirofumi MZ
4214c2bf3c [BROWSEUI_APITEST] Strengthen IAutoComplete testcase 2021-04-07 12:39:28 +09:00
Jérôme Gardou
96dc5836ab [CMAKE] Make cmake use static libraries for testing the compiler 2021-04-06 19:28:47 +02:00
Jérôme Gardou
9c4ae0d05e [CMAKE] Honor CMAKE_EXE_LINKER_FLAGS_INIT in GCC build 2021-04-06 19:26:33 +02:00
Jérôme Gardou
0d3825862f [NTOS:KE] Rewrite KiSystemCallTrampoline in assembly
Instead of making assumptions about what the compiler does with forced-inline functions
2021-04-06 17:57:18 +02:00
Katayama Hirofumi MZ
2eaf0afcd2 [BROWSEUI] auto-completion: Reduce failures in ACListISF (#3589)
Reduce failures in ACListISF testcase. Skip left space in auto-completion. Accept the pair of drive letter and colon. CORE-9281
2021-04-06 21:56:40 +09:00
Katayama Hirofumi MZ
a105b5d355 [FONTEXT_APITEST] Follow-up of #3585 (deb928c)
Strengthen GetDisplayNameOf testcase. CORE-9281, CORE-16444
2021-04-06 09:02:53 +09:00
Mark Jansen
deb928c4bc [FONTEXT_APITEST] Show that fontext returns absolute paths with SHGDN_FORPARSING (#3585)
Add GetDisplayNameOf testcase. CORE-9281, CORE-16444
2021-04-06 07:54:58 +09:00
Eric Kohl
a959d6e473 [PARTMGR] Volume devices do not have compatible IDs and their instance IDs are not unique 2021-04-05 15:35:21 +02:00
Katayama Hirofumi MZ
fefac1fb1d [BROWSEUI] Accept environment variables in ACLO_FILESYSDIRS
Properly handle ACLO_FILESYSDIRS. CORE-9281
2021-04-05 22:20:01 +09:00
Eric Kohl
d8c38c4b4c [NTOS:PNP] PiSetDevNodeText: Do not overwrite existing DeviceDesc values
CORE-17513
2021-04-05 14:33:48 +02:00
Katayama Hirofumi MZ
badcfb2f7d [BROWSEUI] Accept environment variables on auto-completion
Expand %WINDIR%, %SystemRoot% etc. at CACListISF::Expand. CORE-9281
2021-04-05 17:20:35 +09:00
Katayama Hirofumi MZ
a5950308fd [BROWSEUI] Follow-up of #3582
Also fixes VK_HOME and VK_END. CORE-9281
2021-04-05 07:43:40 +09:00
Katayama Hirofumi MZ
ab7d8f3616 [BROWSEUI][BROWSEUI_APITEST] Add CLSID_ACLHistory stubs (#3582)
- Initial implement CLSID_ACLHistory as stub.
- Add IACLHistory testcase into browseui_apitest.
CORE-9281
2021-04-05 04:20:18 +09:00
Eric Kohl
6c4b4a107b [DEVMGR] Display hexadecimal values of Capabilities, ConfigFlags, DevnodeFlags and CsFlags 2021-04-04 11:44:38 +02:00
Serge Gautherie
28dadda8be [CMAKE] Properly generate all Bison and Flex files at build time
This fully reverts 09c4d0a.

Addendum to 5375e33.
CORE-15991
2021-04-03 21:50:08 +03:00
Mark Jansen
5e928e5c92 [NTOS:MM] Stubplement cookie generation for drivers 2021-04-03 18:08:53 +02:00
Katayama Hirofumi MZ
206156fad5 [BROWSEUI] Fix auto-completion on relative paths (#3578)
Fix the CLSID_ACListISF object about relative paths. If the given path is relative at CACListISF::Expand, then convert it to a full path. CORE-9281
2021-04-03 20:38:25 +09:00
Katayama Hirofumi MZ
e771589ae1 [BROWSEUI_APITEST] Strengthen ACListISF testcase (#3577)
Analyze CLSID_ACListISF's behavior about relative paths. CORE-9281
2021-04-03 16:56:49 +09:00
Eric Kohl
c449929fef [NTOS:EX] Use RtlCutoverTimeToSystemTime to determine the current time zone id
CORE-14658
2021-04-03 09:38:07 +02:00
Mark Jansen
97a23a5f3d [SERVICES] Fix booting with DPH enabled
RegSetValueExW tries to read one extra character after the buffer,
to see if a REG_SZ is null terminated
2021-04-03 01:54:57 +02:00
Mark Jansen
5028c3adec [UMPNPMGR] Fix remaining length calculation 2021-04-03 01:43:48 +02:00
Hervé Poussineau
4712deb8a8 [SETUPAPI] Fix wrong buffer size given to CM_Get_Device_ID_List_ExW
This buffer overflow was introduced in previous commit.
2021-04-03 00:52:01 +02:00
Hervé Poussineau
0f3133c308 [SETUPAPI] Use CM_* functions to get list of devices
- this prevents duplicating the code with umpnpmgr::PNP_GetDeviceList
- we can enumerate devices on other computers

This is part of the bugfix for CORE-17529
2021-04-02 21:41:09 +02:00
Katayama Hirofumi MZ
ade5413362 [SHELL32] Auto-completion on Properties for Shortcut (#3574)
Enable auto-completion on "Properties for Shortcut files". CORE-9281
2021-04-02 17:04:43 +09:00
Katayama Hirofumi MZ
62b13979f5 [NEWDEV] Enable auto-completion on Hardware Wizard (#3573)
Realize auto-completion on Hardware Wizard. CORE-9281
2021-04-02 11:06:01 +09:00
Katayama Hirofumi MZ
b591bd3354 [NEWDEV] Use new UI dialog for browsing folder
Add BIF_USENEWUI flag to BROWSEINFO. CORE-9281
2021-04-02 08:58:09 +09:00
Katayama Hirofumi MZ
bebdfda8b7 [NOTEPAD][WORDPAD][MSPAINT]... Use newer file open dialog (#3571)
Use new-style file open/save-as dialog.
- Add OFN_EXPLORER flag to OPENFILENAME structure in notepad, wordpad, mspaint, clipbrd, mmc, mplay32, mscutils, regedit, winhlp32, progman, shellbtrfs, cryptui, shell32, setupapi, vgafontedit, infinst, and vfdlib modules.
2021-04-01 22:50:32 +09:00
Katayama Hirofumi MZ
7e6550b35e [COMDLG32] Enable auto-completion on comdlg32 (#3564)
Auto-completion will be enabled when the user opens "Open" or "Save As" dialog of the common dialogs. CORE-9281

NOTE: The relative pathes, "..\" and "\" are not working. Those are bugs in CLSID_ACListISF.
2021-04-01 06:41:24 +09:00
Jérôme Gardou
12dfa8ce39 [WIN32K] Fix getting long value from float object
Most importantly, do not shift 32-bit integers by 32 or more.
2021-03-31 18:35:31 +02:00
Jérôme Gardou
405ce53211 [WIN32K] More cleanup & improvements
Use FLOATOBJs to perform device<->world transformations, avoiding use of XFORMOBJ all the time
Remove unused macros & functions
2021-03-31 18:35:31 +02:00
Jérôme Gardou
3bad3c49e1 [WIN32K] Use INTERNAL_LPTODP in IntLPtoDP
Instead of initializing a XFORMOBJ and whatnot
2021-03-31 18:35:31 +02:00
Jérôme Gardou
26b5596a11 [WIN32K] Rewrite PATH_Ellipse & PATH_RoundRect using integer arithmetics 2021-03-31 18:35:31 +02:00
Jérôme Gardou
f9c068685f [WIN32K] Reduce use of FPU in path implementation with use of FLOATOBJs 2021-03-31 18:35:31 +02:00
Jérôme Gardou
40f7e86347 [WIN32K] Fix brain-fail of mine
Copying e.g. (2;2);(6;6) to (0;0);(4;4) also needs to have an intermediate buffer.
2021-03-31 16:55:30 +02:00
Jérôme Gardou
30886e74f2 [WIN32K] Fix case when buffers overlap in 1BPP -> 1BPP DIB copy
Logic by Doug Lyons
CORE-17520
2021-03-31 16:39:57 +02:00
Jérôme Gardou
068687e0fd [WIN32K] Fix off-by-one errors
Spotted by Doug Lyons
CORE-17520
2021-03-31 16:39:57 +02:00
Jérôme Gardou
998870c5ea [NTOS:MM] Properly fail for invalid sizes of data section mappings 2021-03-30 22:20:15 +02:00
Jérôme Gardou
4c731adc04 [NTOS:MM] Fix compilation when PFN tracing is enabled 2021-03-30 17:22:09 +02:00
Jérôme Gardou
10379811c0 [KDGDB] Break and ignore when being prompted. 2021-03-30 17:20:57 +02:00
Jérôme Gardou
80f8beeeee [NTOS/MM] Remove an outdated check 2021-03-30 17:13:19 +02:00
Jérôme Gardou
0187c1e113 [NTOS:MM] Fix PFN tracing 2021-03-30 16:26:43 +02:00
Katayama Hirofumi MZ
91e591b3d5 [BROWSEUI] Enable AutoAppend of auto-completion (#3552)
Fix and improve Auto-Append of auto-completion. CORE-9281
- Implement CAutoComplete::DoAutoAppend method.
2021-03-30 06:50:32 +09:00
Eric Kohl
6b04e46304 [WIDL] Do not transfer an explicit primitive binding handle to the server
This enables us to run WIDL-generated code on Windows XP again.
This patch has already been sent upstream.
2021-03-28 16:20:10 +02:00
Jérôme Gardou
3a14c97d0c [LIBCNTPR] Fix a typo
There is no console to display to.
2021-03-25 11:54:49 +01:00
Serge Gautherie
49639c7759 [ATL] CWindowImplBaseT::WindowProc(): Narrow 2 ATLASSERT() down (#3529)
Addendum to e076e05. CORE-17505
2021-03-25 19:51:29 +09:00
George Bișoc
eba68ffb9c [NTOS:SE] Specify the code section of SepCreateSystemProcessToken as INIT
This function is used during the Security kernel module phase initialisation to set up the system process token which the phase initialisation procedure in itself is stored in the INIT section. With that being said, do the same for SepCreateSystemProcessToken too and add a header documentation as an addition.
2021-03-25 02:30:46 +03:00
George Bișoc
5b5b814af8 [NTOS:SE] Create the anonymous logon tokens on Security initialisation phase 2021-03-25 02:30:46 +03:00
George Bișoc
fe0f9d8646 [NTOS:SE] Implement SepCreateSystemAnonymousLogonToken and SepCreateSystemAnonymousLogonTokenNoEveryone functions
These private functions are needed to set up two different kinds of system's anonymous logon tokens: one that includes everyone in the group and the other that doesn't. These functions are needed as next step closer to the
implementation of NtImpersonateAnonymousToken system call.
2021-03-25 02:30:46 +03:00
George Bișoc
b28530d4ac [NTOS:SE] Set up an ACL and SD for the anonymous logon 2021-03-25 02:30:46 +03:00
Katayama Hirofumi MZ
d5c72a2e09 [BROWSEUI] Support ACO_USETAB and SHACF_USETAB on auto-completion (#3549)
Support Tab key on auto-completion. CORE-9281
2021-03-25 07:42:24 +09:00
Jérôme Gardou
6e4f83da70 [NTOS:CC] Wake up lazy scan after inserting elements in the list. 2021-03-24 15:28:04 +01:00
Jérôme Gardou
edd4a985d9 [NTOS:CC] Be verbose about why we defer writes 2021-03-24 15:27:36 +01:00
Jérôme Gardou
00ce9ad42a [CMAKE] Declare KD stub Dlls as kerneldll 2021-03-24 15:20:06 +01:00
Serge Gautherie
ca1814f2c9 [SYSSETUP] security.c: Remove 3 useless casts
And
* Make 1 cast more explicit.
* Fix 1 'SamSetInformationUser' copypasta in DPRINT1() text.
* Optimize 1 '.MaximumLength' assignment.
2021-03-24 12:15:55 +01:00
Jérôme Gardou
5c54fb9179 [NTOS:CC] Rewrite CcPostDeferredWrites
This allows to post small writes if there are any, and avoid holding the list lock for a long time.
2021-03-24 11:22:28 +01:00
Jérôme Gardou
b13a696513 [NTOS:KE] Explicitly cast -1 to ULONG 2021-03-24 11:13:04 +01:00
Jérôme Gardou
94d175b7f2 [NTOS] Remove a definition which is redundant with ndk 2021-03-24 11:12:12 +01:00
Jérôme Gardou
187ca32175 [NTOS:KE] Use PNT_TIB as argument in KeSetTebBase 2021-03-24 11:09:20 +01:00
Jérôme Gardou
8f963c38c6 [SDK:INCLUDE] Cast to type instead of PVOID
For C++ header compatibility
2021-03-24 11:08:40 +01:00
Jérôme Gardou
fa74ae571b [XDK] Undefine some defines once they are not needed 2021-03-24 11:07:54 +01:00
Konrad Dybcio
4c7b71ac4f [HHPCOMP] Add ARM (32-bit) types (#3548)
ARM32 seems to use the same type defines as i386 and friends.
Let's allow the thing to be compiled again!

CORE-17517

Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
2021-03-24 09:32:11 +03:00
Jérôme Gardou
e6bea426f3 [CSRSRV] Fix comment 2021-03-23 18:35:13 +01:00
Jérôme Gardou
7054cd10b1 [CSRSRV] Fix locking logic when destroying threads & processes 2021-03-23 18:17:44 +01:00
Jérôme Gardou
f5bace8536 [CMAKE] Move toolchain specific handling to set_module_type_toolchain
+ style fixes
2021-03-23 11:18:43 +01:00
Jérôme Gardou
5c21460680 [CMAKE] Put .rsrc section after the INIT section on drivers, like link.exe does 2021-03-23 11:18:43 +01:00
Jérôme Gardou
173cdcae8f [CMAKE] Use the "kernel" module type for ntoskrnl and ntkrnlmp 2021-03-23 11:18:43 +01:00
Jérôme Gardou
e55123a6a2 [CMAKE] Add the kernel module type
Take this as an occasion to use target_link_options more
2021-03-23 11:18:43 +01:00
Jérôme Gardou
812c9e5a11 [CMAKE] Fixup of driver sections in GCC builds
Also introduce a helper variable to list KMode modules
2021-03-23 11:18:43 +01:00
Jérôme Gardou
5489efcb1a [SDK:TOOLS] Add --driver option to pefixup
For now, this adds IMAGE_SCN_MEM_DISCARDABLE to the INIT section, and IMAGE_SCN_MEM_NOT_PAGED to sections which are not named PAGE or .reloc
2021-03-23 11:18:43 +01:00
Jérôme Gardou
56b1baa3dd [CMAKE] Restore using LD linker script with GCC 2021-03-23 11:18:43 +01:00
Jérôme Gardou
6445f33704 [CMAKE] Put INIT section before .reloc and not after.
CORE-14683
2021-03-23 11:18:43 +01:00
Jérôme Gardou
0c13ff2a4b [WIN32K] Rewrite DIB1BPP -> DIB1BPP copy
Simpler is sometimes better.
Fixes some crashes & memory corruptions happening because of all those broken loops.
2021-03-22 22:40:33 +01:00
Jérôme Gardou
d1d1260f5f [NTOS:MM] Fix integer arithmetics 2021-03-22 10:02:12 +01:00
Serge Gautherie
4cd92f0d01 [SYSSETUP][TIMEDATE] Use exact setTimer() timeouts, to stay in sync (#3355)
CORE-13121
2021-03-21 12:01:22 +09:00
Katayama Hirofumi MZ
53005587f4 [BROWSEUI] Fix return value on sanity check of auto-completion (#3544)
Reduce failures on sanity check of auto-completion. CORE-9281
- Return E_FAIL rather than E_INVALIDARG in sanity check of CAutoComplete::Init (IAutoComplete::Init).
2021-03-20 14:04:02 +09:00
Katayama Hirofumi MZ
f49c164428 [BROWSEUI] Fix auto-completion on VK_DELETE (#3543)
Reduce failures against Delete key on auto-completion. CORE-9281
2021-03-20 13:18:47 +09:00
Mark Jansen
4885c34fa8 [SYSSETUP] SamQueryInformationUser expects a pointer 2021-03-20 00:28:07 +01:00
Piotr Hetnarowicz
e264c3b3f2 Update dll/cpl/hdwwiz/lang/pl-PL.rc
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2021-03-19 22:49:47 +01:00
Piotr Hetnarowicz
edc314e741 Update dll/cpl/hdwwiz/lang/pl-PL.rc
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2021-03-19 22:49:47 +01:00
Piotr Hetnarowicz
a9a6f6e163 Update pl-PL.rc 2021-03-19 22:49:47 +01:00
Piotr Hetnarowicz
9114bd9882 [MMSYSCPL] Update Polish [pl-PL] translation 2021-03-19 22:47:19 +01:00
Jérôme Gardou
e3141c833c [SYSSETUP] Install nettcpip.inf
CORE-17514
2021-03-19 14:23:28 +01:00
Jérôme Gardou
525d19d469 [NDK][XDK] Use decimal literals for MINxxxx defines
Because myLongLong < MINLONG is supposed to behave like you'd expect
2021-03-19 11:04:19 +01:00
Victor Perevertkin
16173c0798 [UMPNPMGR] Fix GCC build
Addendum to 420c4a7abf
2021-03-19 09:14:05 +03:00
Victor Perevertkin
420c4a7abf [UMPNPMGR] Install drivers for all devices available on boot
Don't wait for their events to appear, just retrieve the list and
install drivers. This fixes the installation of manually reported device
nodes

CORE-17212 CORE-17398
2021-03-19 08:59:42 +03:00
Victor Perevertkin
0fed07b7e4 [NTOS:PNP] Initialize DeviceDesc and LocationInformation registry fields
for manually reported devices, as it is required by the newdev.dll
for installing drivers from INF files

CORE-17212 CORE-17398

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2021-03-19 07:57:41 +03:00
Katayama Hirofumi MZ
880252fd46 [SHELL32] Fix assertion failure in CDirectoryWatcher.cpp
CORE-17511
2021-03-19 08:30:10 +09:00
Mark Jansen
c59ab8fce1 [SYSSETUP] SamQueryInformationDomain expects a pointer 2021-03-18 23:28:17 +01:00
Victor Perevertkin
aec3d9cc8f [NTOS:IO][NTOS:PNP] Fix incorrect usage of IopGetRegistryValue
KEY_VALUE_FULL_INFORMATION was not always freed properly
2021-03-19 01:07:22 +03:00
Jérôme Gardou
42094071ee [NTOS:MM] Silence noisy DPRINTs 2021-03-18 12:24:21 +01:00
Jérôme Gardou
4ff5d39edb [NTOS:MM] Use a define for the big pool table occupation rate 2021-03-18 12:24:21 +01:00
Jérôme Gardou
8494688eeb [NTOS:MM] Do not use atomic operations to set a bit while holding a lock.
Saving your fingers from typing it doesn't make it better code.
2021-03-18 12:24:21 +01:00
Jérôme Gardou
f06b58925d [NTOS:MM] Implement shrinking big pool allocation table
Shrink when using 1/8 of its allocated capacity (thus use 25% of it at the end of the process)
Expand when using 3/4 of its allocated capacity (thus use ~40% of it at the end of the process)
2021-03-18 12:24:21 +01:00
Jérôme Gardou
54354712e2 [NTOS:MM] Fail allocating non-paged pool when running out of available pages 2021-03-18 12:24:21 +01:00
Jérôme Gardou
34630a06ca [NTOS:MM] Do not bugcheck when we are freeing a big allocation for which we didn't manage to insert the tag 2021-03-18 12:24:21 +01:00
Katayama Hirofumi MZ
f9b89c9961 [SDK][INCLUDE] msgdump.h: Support RegisterWindowMessage
msgdump.h: Version 18.
2021-03-18 18:41:03 +09:00
Katayama Hirofumi MZ
ea3c56b659 [BROWSEUI_APITEST] Strengthen ACListISF testcase (#3538)
Add tests for ACListISF testcase to clarify the details. CORE-9281
2021-03-18 09:49:40 +09:00
Jérôme Gardou
0d41593749 [WS2_32] Check that the handle table is initialized before accessing it. 2021-03-17 18:53:12 +01:00
Jérôme Gardou
162f51e6b8 [OLDNAMES] Add missing isascii 2021-03-17 18:52:58 +01:00
Jérôme Gardou
d5fa0788d8 [NTOS:MM] Silence a DPRINT which became noisy 2021-03-16 13:23:21 +01:00
Jérôme Gardou
7e5c1872ee [RTL] Improve performance by introducing a hint array for free entries
The array is there for the entries smaller than the decommit threshold, the rationale
being that entries which are larger will likely be split for honoring other allocations
or be coalesced and eventually decommitted.

This with the previous commits make a huge perf boost to memory-intensive applications like cmake

CORE-15793
2021-03-16 13:23:21 +01:00
Jérôme Gardou
325737f855 [SDK:RTL] Track the end of uncommitted ranges thanks to a "Guard" entry that we put at the end of each committed page
This avoids busy loop to get the last valid entry of the previous committed range when committing a new one.

CORE-15793
2021-03-16 13:23:21 +01:00
Victor Perevertkin
abbc5ba45a [UMPNPMGR][USETUP] Use PlugPlayControlStartDevice in usetup and umpnpmgr
Instead of PlugPlayControlResetDevice, PlugPlayControlStartDevice should
be used for a newly installed device.
For usetup, add a device status check before starting attempt, so we're
not touching devices which are already started.

CORE-17463 CORE-17490
2021-03-16 03:17:58 +03:00
Victor Perevertkin
59a5dba443 [NTOS:PNP] Implement PlugPlayControlStartDevice control class
This control class is triggered when a driver is being installed for a
non-critical device. The driver info should already be in the registry
so we just need to push the device through the state graph

Meanwhile, combine the code for similar control classes into
PiControlSyncDeviceAction routine

CORE-17463 CORE-17490
2021-03-16 03:17:57 +03:00
Victor Perevertkin
029accdcf7 [NDK] Change the data structure for PlugPlayControlResetDevice control class
PlugPlayControlResetDevice shares the input structure with several other
control classes.
Source: ProcessHacker sources e9c8121f41/ntpnpapi.h
2021-03-16 03:17:42 +03:00
Katayama Hirofumi MZ
b66bdef370 [SHELL32] Enable auto-completion on SHBrowseForFolder (#3535)
This PR realizes auto-completion on SHBrowseForFolder. CORE-9281

- Call SHAutoComplete in WM_INITDIALOG message handling.
- Fix focus.
- Remove ES_NOHIDESEL style.
- Fix layout initialization.
2021-03-15 16:30:32 +09:00
Victor Perevertkin
a064c5d9a0 [HALX86] Remove unused and empty files, remove halapic
halapic (a.k.a. non-ACPI APIC HAL) is not going to be supported in near
future
2021-03-15 02:51:25 +03:00
Victor Perevertkin
7601fb549c [HALX86] Rearrange files in x86 HAL
- Rename UP -> PIC. The "up" folder in fact contains the code for
  managing the Intel 8259 PIC chip
- Move amd64/processor.c -> apic/processor.c. The code is not tied to
  amd64
- Remove platform from "halinit*" files. They already reside in the
  corresponding folder
2021-03-15 02:48:35 +03:00
Katayama Hirofumi MZ
2d066c93fe [SHELL32] Fix SHBrowseForFolder new UI layout (#3533)
CORE-17507

- Change layout of resource dialogs IDD_BROWSE_FOR_FOLDER_NEW.
- Delete IDC_BROWSE_FOR_FOLDER_FOLDER control.
- Fix focus.
- Add ES_NOHIDESEL style to IDC_BROWSE_FOR_FOLDER_FOLDER_TEXT control.
- Add TVS_SHOWSELALWAYS style to IDC_BROWSE_FOR_FOLDER_TREEVIEW control.
- Fix assertion failure in LayoutUpdate function in <layout.h>.
2021-03-15 07:13:03 +09:00
Katayama Hirofumi MZ
e1a5ba188e [SHELL32] SHBrowseForFolder with BIF_EDITBOX should use new UI (#3532)
CORE-17506

- Convert some judgements against BIF_NEWDIALOGSTYLE to judgements against BIF_USENEWUI. Here BIF_USENEWUI == (BIF_NEWDIALOGSTYLE | BIF_EDITBOX).
- Remove WS_SIZEBOX window style from new UI dialog resource (IDD_BROWSE_FOR_FOLDER_NEW).
- Fix header layout.h for resizing without WS_SIZEBOX.
2021-03-14 18:35:40 +09:00
Katayama Hirofumi MZ
ac507691fb [SDK][INCLUDE] layout.h: Use SWP_NOCOPYBITS to refresh controls 2021-03-14 12:28:48 +09:00
Katayama Hirofumi MZ
e076e0576f [ATL] Add NULL-check in CWindowImplBaseT::WindowProc assertions
CORE-17505
2021-03-11 21:20:40 +09:00
Katayama Hirofumi MZ
9259ded8ae [ATL][SHELL32][EXPLORER] Disable ATLASSERT (#3527)
We are not ready for enabling ATLASSERT. Enabling ATL assertions takes time to realize. CORE-17505
- Disable ATLASSERT by undefining _DEBUG.
- Revert currently non-fixable codes.
2021-03-11 20:26:45 +09:00
Katayama Hirofumi MZ
4583eae4f7 [SHELL32] Fix CMenuToolbarBase
CORE-17505
2021-03-11 17:51:47 +09:00
Katayama Hirofumi MZ
4f83032a12 [ATL] Split CWindowImplBaseT::WindowProc asserion
CORE-9281
2021-03-11 17:18:43 +09:00
Katayama Hirofumi MZ
6546ad7700 [BROWSEUI] Fix CACListISF::Next assertion
CORE-9281
2021-03-11 17:12:06 +09:00
Katayama Hirofumi MZ
bcba930622 [BROWSEUI] Fix CAutoComplete::OnMeasureItem assertion
CORE-17505
2021-03-11 16:56:01 +09:00
Katayama Hirofumi MZ
32a9b64051 [BROWSEUI] Fix addreseditbox.h assertion
CORE-17505
2021-03-11 16:42:36 +09:00
Piotr Hetnarowicz
31f20137b6 [DESKCPL] Update Polish [pl-PL] translation (#3520) 2021-03-11 02:36:48 +01:00
Piotr Hetnarowicz
a9b6df917b [DESKADP] Update Polish [pl-PL] translation (#3518) 2021-03-11 02:35:37 +01:00
Serge Gautherie
0975c5ef40 [ATL] CMakeLists.txt: Use a bare endif() (#3523)
Addendum to 98203ce.
2021-03-11 08:38:04 +09:00
Mark Jansen
1952e5b795 Fix some assertions now that they are enabled (#3524)
Fix some assertions, hack out some others (they need more ATL work).
CORE-17505
2021-03-11 07:43:06 +09:00
Victor Perevertkin
df35c8d05e [SDK:KMDF] Populate OsVersionInfo in our static linking hack 2021-03-10 18:41:46 +03:00
Victor Perevertkin
6d1ca3553e [SDK:KMDF] Fix calling convention for the kernel function pointers 2021-03-10 18:41:03 +03:00
Katayama Hirofumi MZ
98203cea23 [CMAKE] Define _DEBUG for better ATL debugging (Retry) (#3519)
CORE-17505
2021-03-10 22:59:13 +09:00
Victor Perevertkin
0a26c7c5d2 [SDK:DDK] Implement the Auxiliary Kernel-Mode Library
And uncomment the code in KMDF which uses it
2021-03-10 16:43:59 +03:00
Katayama Hirofumi MZ
a63213272a [SHELL32] Enable auto-completion on 'Folder Options' > 'Change Icon' (#3522)
CORE-9281
2021-03-10 21:00:36 +09:00
Katayama Hirofumi MZ
c43efcb1bb [APPWIZ] Enable auto-completion on 'Create Shortcut' (#3521)
CORE-9281
2021-03-10 20:59:57 +09:00
Katayama Hirofumi MZ
71e4450761 [BROWSEUI] Follow-up of #3507
Case insensitiveness fix. CORE-9281
2021-03-10 19:45:03 +09:00
Katayama Hirofumi MZ
c19d9df259 [BROWSEUI] Implement auto-completion (#3507)
Implement IAutoComplete to realize input auto completion. CORE-9281, CORE-1419

- The main features of this PR are Auto-Suggest and Auto-Append.
- Auto-Suggest shows a list near the textbox (an EDIT control) when the user has typed partial pathname into the textbox.
- Auto-Append appends complement text into the textbox to complete the pathname with selected status.
- The list of AutoSuggest is a top-level window whose window class is "Auto-Suggest Dropdown". We call it "the drop-down window".
- The drop-down window contains three controls: a listview, a scrollbar and a sizebox.
- The drop-down window watches the input into the textbox. If the textbox changed, then the window updates the list.
- The sizebox control enables the user to resize the drop-down window.
2021-03-10 16:22:57 +09:00
Jérôme Gardou
0c34c067c4 [CRT] Add CFI annotatiions to memmove function 2021-03-09 19:42:49 +01:00
Chan Chilung
6a31fe6ca7 [TRANSLATION][INF] Update Chinese Traditional (zh-TW) translation (#3468)
- Add / improve Chinese Traditional Translations for INFs.

- Name changing (removed Aobi in my name)

Add Chinese Traditional translation for:
- cmdutils/at
- cmdutils/comp
- hotplug.cpl
- rosapps' sysutils/ctm

Chinese Traditional (zh-TW) translation update for:
- cmdutils/find
- cmdutils/help
- cmdutils/label
- cmdutils/whoami
- mspaint
- shutdown
- taskmgr
- diskpart
- format
- appwiz.cpl
- input.cpl
- powercfg.cpl
- shimgvw
- user32
2021-03-09 16:51:37 +01:00
George Bișoc
5fbf5e78e1 [SHELL32] Avoid code duplication on FAT and EXT2/BtrFS related FSs insertion (#3505)
This is a slight refactor of InsertDefaultClusterSizeForFs() code with the goal to avoid having the same code for FAT-related and EXT2/BtrFS filesystems.
2021-03-09 16:17:23 +01:00
Serge Gautherie
25e1235fe7 [FREELDR] Remove a few useless code lines (#3503)
CORE-14516
2021-03-09 16:02:11 +01:00
Serge Gautherie
309f707e7f [DOC] 3rd Party Files.txt: Use complete MS Windows Driver Samples URLs (#3515)
Addendum to 119f102.
2021-03-09 15:43:17 +01:00
Serge Gautherie
0cf1169dd0 [CDROM_NEW] CMakeLists.txt: Add cdrom.rc (#3513)
Addendum to 83b85e2.
CORE-17129
2021-03-08 19:10:43 +01:00
Arnav Bhatt
06f57e1696 initial commit (#3506) 2021-03-06 19:13:05 +01:00
Serge Gautherie
8c18617fa7 [CMAKE] Fix few copy-paste typos in add_pch() calls (#3508)
Follow-up to e898c9e.
2021-03-06 19:11:56 +01:00
Serge Gautherie
62b4c61f82 [NETCFGX] LoadDNSSettings(): Improve one RegQueryValueExW() call (#2870) 2021-03-04 23:29:38 +01:00
Serge Gautherie
b43bb63373 [COMPILER_APITEST] Sync an '#if defined(_X86_)' (#3318)
Addendum to dfccee7 (r41810).
2021-03-04 23:03:37 +01:00
Serge Gautherie
63007901fd [CSRSRV] CsrApiHandleConnectionRequest(): Remove ASSERT() redundant condition (#2858)
Detected by Cppcheck: redundantCondition.
Addendum to 835f3ef1.
2021-03-04 22:54:00 +01:00
Serge Gautherie
abc84a742b [FREELDR] LoadAndBootWindowsCommon(): Use UNREACHABLE, on success
KiSystemStartup() is DECLSPEC_NORETURN.
2021-03-05 00:43:15 +03:00
Serge Gautherie
e0400e7810 [NTOS:KE] KiIdleLoop(): Propagate DECLSPEC_NORETURN to callers 2021-03-05 00:43:15 +03:00
Serge Gautherie
5f1d79f0c5 [NTOS:KE] KiIdleLoop(): Add DECLSPEC_NORETURN, Remove FASTCALL 2021-03-05 00:43:15 +03:00
Jérôme Gardou
43ea864405 [DBGHELP] Fix use of unix path 2021-03-04 17:41:25 +01:00
George Bișoc
69ca7258d0 [NTDLL_APITEST] Implement testcase for NtCompareTokens 2021-03-04 16:22:56 +03:00
George Bișoc
44b8e5caac [NTOS:SE] Complete the SepCompareTokens implementation
* Implement SepCompareSidAndAttributesFromTokens and SepComparePrivilegeAndAttributesFromTokens functions for array elements comparison
* Implement the token comparison code in SepCompareTokens function
* Add a missing PAGED_CODE() in SepCompareTokens as most of the token comparison code is paged
* Use SAL annotations for SepCompareTokens and NtCompareTokens
2021-03-04 16:22:56 +03:00
Katayama Hirofumi MZ
2282205d13 [BROWSEUI_APITEST] Fix abnormal termination on fn2 == NULL
The DoWordBreakProc function crashed.
CORE-9281
2021-03-04 14:42:04 +09:00
George Bișoc
a340ec1767 [NTOS:PS] Guard the quota in a spin lock (#3419)
Prior to acquiring a quota from the process and do whatever it's needed to do (charge it or return it back), we must guard ourselves with a spinlock so that we may not get into potential race conditions. In Windows Server 2003, PspGivebackQuota and PspExpandQuota do the same thing and they're the equivalent to PspReturnProcessQuotaSpecifiedPool and PspChargeProcessQuotaSpecifiedPool in our codebase.
2021-03-04 04:43:30 +03:00
Katayama Hirofumi MZ
3b1c81b0ec [BROWSEUI_APITEST] Strengthen IAutoComplete on WM_KEYDOWN (#3500)
- Simplify the test mechanism.
- Add more tests for WM_KEYDOWN message.

CORE-9281
2021-03-04 09:35:44 +09:00
Jérôme Gardou
65b6af58f9 [SDK:RTL] Statically initialize RtlCriticalSectionList
This might be used before RtlpInitDeferedCriticalSection gets called
2021-03-03 14:10:47 +01:00
Serge Gautherie
7851ad8635 [NTOS:KD] KdpDebugLogInit(): Close the thread handle
Addendum to 07dc415 (r43331).
2021-03-03 09:01:37 +01:00
Serge Gautherie
802ad6d3ee [NTOS:KD] KdpLoggerThread(): Assert being in kernel mode
to be explicit that using Nt*() is safe.

Follow-up to 9537653.
2021-03-03 09:01:37 +01:00
Victor Perevertkin
f82eb0fede this seem to be the only combination which works on msbuild-msvc 2021-03-03 08:34:32 +01:00
Jérôme Gardou
1ea6157cbf [FREELDR] Use target_link_options instead of add_target_link_flags
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
5d1ecc7575 [CMAKE] Define _SBCS when using VS generator
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
e7f08b3e30 [FREELDR] Use decimal numbers for section & file alignment
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
0d811c2d1c [BOOTMGFW] Explicitly disable NX compatibility
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
2306c83e5c [CMAKE] Explicitly declare libcntpr as a static lib 2021-03-03 08:34:32 +01:00
Jérôme Gardou
97d4cb6ee0 [CRT] Declare strlen & wcslen as _CRTIMP 2021-03-03 08:34:32 +01:00
Jérôme Gardou
49286a6225 [CMAKE] Get rid of add_object_library
It's not needed anymore
2021-03-03 08:34:32 +01:00
Jérôme Gardou
93d741c3f4 [SHLWAPI] Use an object library to separate C & C++ compilation units
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
3476cdae77 [BOOTMGFW] Explicitly disable dynamic base
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
3885ad87ca [GITHUB] Add MSBUILD CI action 2021-03-03 08:34:32 +01:00
Jérôme Gardou
49000c6471 [CMAKE] Disable policy CMP0091 and set /MT flag explicitly for Visual Studio generator 2021-03-03 08:34:32 +01:00
Jérôme Gardou
c68739e566 [CMAKE] Preprocess the ASM files but let msbuild handle their actual compilation
CORE-17423
2021-03-03 08:34:32 +01:00
Jérôme Gardou
41130ab5c6 [CMAKE] Use ASM_MASM language when building with MSVC toolchain
CORE-17423
2021-03-03 08:34:32 +01:00
Victor Perevertkin
3bde2740df [BOOTMGFW] Disable EFI bootloader compilation
Don't pretend we are supporting UEFI, we are not
2021-03-03 06:27:07 +03:00
Jose Carlos Jesus
6e40a96145 [DEVMGR][NETID] Update PT translation (#3487)
And readjust objects size to fit all text in Driver tab.
2021-03-03 04:18:15 +01:00
Serge Gautherie
55b93aecdc [CMAKE] target_compile_definitions() calls: Remove (now) useless '-D' (#3490)
Documented as automatically removed, since CMake 3.12.4 at least.
https://cmake.org/cmake/help/v3.12/command/target_compile_definitions.html
2021-03-03 04:16:02 +01:00
Victor Perevertkin
fc2b105e5d [CMAKE] Use remove_target_compile_option when disabling manually enabled warnings 2021-03-03 06:04:25 +03:00
Victor Perevertkin
b410220f39 [GITHUB] Choose LLVM version manually 2021-03-03 06:03:01 +03:00
George Bișoc
6170b574f0 [NTOS:PS] Implement PS_QUOTA_TYPE and let the quota code use it (#3389)
This will replace the PoolIndex variable and as such we'll only be using the PS_QUOTA_TYPE enumeration, as Windows does. Both QuotaEntry, QuotaUsage and QuotaPeak depend explicitly or implicitly on this enumeration. Further details about this enum can be found in the following articles.
https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/ps/psquota/type.htm?tx=68,143
https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/ps/psquota/block.htm?tx=68,142,143
https://www.geoffchappell.com/studies/windows/km/ntoskrnl/inc/ps/eprocess/index.htm (see QuotaPeak and QuotaUsage)
2021-03-02 20:09:58 +01:00
George Bișoc
9536f44c81 [SHELL32] Determine if the FS is of type FATX (#3398)
FATX is listed as a filesystem for format within the list but it's classed out from current proposed filesystems, thus spamming the debug output and not allowing to actually format a storage drive with this FS.
CORE-17272
2021-03-02 19:37:31 +01:00
Colin Finck
ec9f3d82b0 [NTDLL_APITEST] Ensure that some noticeable time has passed since process creation to fix a flaky test. 2021-03-02 19:32:20 +01:00
Piotr Hetnarowicz
fa0c63bc48 [SOLITAIRE] Update Polish [pl-PL] translation (#3496) 2021-03-02 19:10:26 +01:00
Piotr Hetnarowicz
27ca352d2b [SHELL32] Improve Polish [pl-PL] translation (#3494) 2021-03-02 19:09:53 +01:00
Serge Gautherie
e898c9e0df [RTL_VISTA] CMakeLists.txt: Fix 'rtl' copypasta (#3489)
Addendum to 6119239.
2021-03-02 19:06:17 +01:00
Jérôme Gardou
42b94e728a [ADVAPI32] In RegSetValueExW, do not fail if we fault when checking for ending NUL character 2021-03-02 15:42:21 +01:00
Jérôme Gardou
7320c989fe [WS2_32] Fix error handling on non-existing registry keys 2021-03-02 14:39:22 +01:00
Jérôme Gardou
4e4c47cccc [NTOS:KE] Generate proper frame info for trap handler in GCC builds
CORE-8531
2021-03-02 14:37:39 +01:00
Jérôme Gardou
6c100a13c2 [SDK:INCLUDE] Define KTRAP_FRAME_CS 2021-03-02 14:36:46 +01:00
Jérôme Gardou
7fb6030e05 [SDK] Properly put assembly debug info into .debug_frame section
For some reason, the default is to put it into .eh_frame where objcopy & al happily ignore them
2021-03-02 14:36:38 +01:00
Katayama Hirofumi MZ
a0e5c3d862 [BROWSEUI_APITEST] Strengthen IAutoComplete testcase on extended LV style (#3499)
Test the extended list-view style of the listview. CORE-9281
2021-03-02 18:05:32 +09:00
Katayama Hirofumi MZ
e24d3cc952 [SDK][ATL] Fix CWindow::GetWindowText method of BSTR (#3498)
- Fix generic text mapping for GetWindowText and GetWindowTextLength functions.
- Fix the position.
- Fix the length.
- Fail elegantly if necessary.

CORE-9281
2021-03-02 17:50:00 +09:00
Katayama Hirofumi MZ
6de330026c [BROWSEUI_APITEST] Follow-up of #3493 2021-03-02 07:36:55 +09:00
Katayama Hirofumi MZ
003b19dc3c [BROWSEUI_APITEST] Add IAutoComplete testcase (#3493)
Add tests for IAutoComplete objects, especially on the drop-down window and related controls.
CORE-9281
2021-03-02 07:25:31 +09:00
Carlo Bramini
a141c91135 [SHIMGVW] Improve zooming feature and realize image edit (#3473)
* [SHIMGVW] Add OLE32 for CoInitializeEx()
* Implemented support for effective image size (100%).
* Fix bug that could leave one of the zoom buttons if 100% size button is now pressed.
* Replace a CreateWindowEx() with CreateWindowExW().
* Added stub for image delete function.
* Implemented support for 'Modify' button.
* [SHIMGVW] Added CoUninitialize()
* [SHIMGVW] Pair CoUninitialize with CoInitializeEx
2021-03-01 23:40:06 +09:00
Tibor Lajos Füzi
9dff498b21 [SOLITAIRE] Add undo feature & fix occasionally invisible cards (#3422)
Two issues are addressed:

CORE-2189: missing undo feature

Works the same way as solitaire in windows xp:
- only 1 action can be undone;
- the player gets -2 points in standard score mode;
- the undo action resets when the player clicks on a row stack to turn the top card.

CORE-11148: invisible cards

This happens in 3-card mode, when only 1 card left in the deck. The fix for this is to modify the pile stack to contain all the face-up cards. It was actually already in the code somewhere else, so I turned it into a separate function.
2021-02-28 22:31:19 +01:00
Arnav Bhatt
fd39a292af [MSGINA][SHELL32] Rework friendly UI shutdown dialog box and implement friendly UI log off dialog box (#3399)
Implement the re-worked shut down dialog box as well as implementing fancy log off dialog box.
- Fancy shut down dialog box has been redesigned to be more comparable to of XP.
- Implement features that were missing earlier.
- Implement the fancy log off dialog which is more comparable to of XP.
2021-02-28 20:03:35 +09:00
Eric Kohl
1fbb295d4a [LSASRV][SECUR32] Fix the naming mess
Rename Untrusted to TrustredCaller in LSA_CONNECTION_INFO and LSAP_LOGON_CONTEXT in order to clarify the meaning of the variable.
2021-02-28 11:03:33 +01:00
Katayama Hirofumi MZ
9e32854998 [ATL_APITEST] Fixup of #3492; fix SubclassWindow testcase
Fix the tests at Line 359 and 403.
CORE-9281
2021-02-28 13:13:38 +09:00
Katayama Hirofumi MZ
ef3e7a3717 [SDK][ATL] Implement UnsubclassWindow methods (#3492)
I want UnsubclassWindow methods.
- Implement CWindowImpl::UnsubclassWindow method.
- Implement CContainedWindowT::UnsubclassWindow method.
- Add SubclassWindow testcase to atl_apitest test program.
- Fix generic text mapping of <atlwin.h>.
CORE-9281
2021-02-28 12:45:16 +09:00
Eric Kohl
76247390e5 [LSASRV] Fix a typo in the trusted user identification 2021-02-28 01:57:43 +01:00
Eric Kohl
95188553ba [WKSSVC] Get version info and authentication package on startup 2021-02-27 19:07:47 +01:00
Katayama Hirofumi MZ
6b2e79d067 [SDK][INCLUDE] layout.h: Delete an assertion for window style
WS_SIZEBOX or WS_THICKFRAME. CORE-9281
2021-02-27 22:59:00 +09:00
Jérôme Gardou
7caf9e9d48 [NTOS:KD] Use Zw* syscall variants
The log file can be (re-)initialized when previous mode is User-Mode,
thus the calls fail on probing input parameters
2021-02-26 08:46:53 +01:00
Jérôme Gardou
a93e065ebc [NTOS:MM] Do not chunk-read file when we are the modified-page-writer thread 2021-02-26 08:46:53 +01:00
Jérôme Gardou
35c091adaf [NTOS:MM] Do not chunk-read files marked with FO_RANDOM_ACCESS 2021-02-26 08:46:53 +01:00
Katayama Hirofumi MZ
f04890c2af [BROWSEUI] Fix and small improvement (#3486)
Fix a mistake in CAutoComplete PR #3472 (6bfb76b) and improve.
- Fix confusion between m_hwndEdit and hwndEdit.
- Delete extra this-> codes.
CORE-9281
2021-02-25 20:36:20 +09:00
Katayama Hirofumi MZ
c14c9ca0d8 [SDK][INCLUDE] Erase files of incorrect commit
Delete files at mistaken commit:
0efd7b9764

rm sdk/include/host/cmake_install.cmake
rm sdk/include/reactos/buildno.h
rm sdk/include/reactos/version.h
2021-02-25 09:21:13 +09:00
Katayama Hirofumi MZ
0efd7b9764 [SDK][INCLUDE] Strengthen and improve layout.h
- Refreshing STATIC controls.
- In LayoutInit function, if cLayouts parameter was negative, then don't use size grip.
2021-02-25 09:12:47 +09:00
He Yang
633ece9025 [TASKLIST] Implement tasklist command-line utility (#3440)
Add command-line program "tasklist" for ReactOS.
It works fine on Windows as well.
2021-02-24 19:05:15 +09:00
Jose Carlos Jesus
9039de127c [BROWSEUI]Update PT translation 2021-02-24 07:23:39 +01:00
Katayama Hirofumi MZ
6bfb76b68a [BROWSEUI] Refactoring CAutoComplete Part 1 (#3472)
- Expand tabs to spaces in CAutoComplete.h.
- Add m_ prefix to every member variable.
CORE-9281
2021-02-23 06:07:09 +09:00
Serge Gautherie
205b6e56c8 [FREELDR] DetectPnpBios(): Add 'i' to ERR() debug print (#3465)
Addendum to 17990b2 (r73617). CORE-12623
2021-02-22 21:10:27 +03:00
Doug Lyons
834394abd9 [OPENGL32] Fix Red and Green Color Swap (#3478)
CORE-16221
2021-02-22 17:45:33 +01:00
George Bișoc
950f78635a [USETUP] Display the "check the FS" section as a MUI page (#3474) 2021-02-22 16:48:03 +01:00
George Bișoc
b00ecdcab9 Replace my E-mail with the ReactOS org one (#3475)
From now on for ReactOS related contributions only the organization e-mail shall be used and also reverse the order of my real full name.
2021-02-22 18:26:55 +03:00
Hervé Poussineau
c8c9a70461 [FREELDR/x64] Fix MSVC x64 boot 2021-02-22 15:15:28 +01:00
Hervé Poussineau
c6730a4a87 [RSYM/x64] Allow binaries without symbol table 2021-02-22 14:42:04 +01:00
Hervé Poussineau
4c930799f1 [RSYM/x64] Make command line compatible with x86 version
x86 version needs input and output file names as arguments, even if is called with
input file name = output file name.
x86 version also accepts a -s argument to the root path of ReactOS sources

Make x64 version take the same arguments.
2021-02-22 14:21:43 +01:00
Hervé Poussineau
05fbfb0cad [FREELDR/x64] Partly revert 5367ae5760
Using RealModeEntryPoint uses IMAGE_REL_I386_REL16, now supported by obj2bin
2021-02-22 14:21:43 +01:00
Hervé Poussineau
77d69c68b8 [OBJ2BIN] Add support for IMAGE_REL_I386_REL16
Also return error in case of unknown relocation type.
2021-02-22 14:21:43 +01:00
Hervé Poussineau
5367ae5760 [FREELDR] Fix check, as FreeLoader x64 compiled with GCC only have 2 sections (.text and .bss) 2021-02-22 00:08:28 +01:00
Hervé Poussineau
78d9c38c37 [FREELDR/x64] Change syntax to be compatible with GAS x64 2021-02-22 00:08:28 +01:00
Eric Kohl
dd1f0d02bc [LSASRV] Improve the policy change registration code and notify registered events 2021-02-21 18:05:11 +01:00
pivotman319
d4d897ccb7 [README] Trivial correction: replace "Seven" with "7" (#3469) 2021-02-21 18:48:20 +03:00
Eric Kohl
9ff015f770 [NTOS:CM] Report key creation to the notify code 2021-02-21 15:49:06 +01:00
Katayama Hirofumi MZ
0c15f7d183 [SHIMGVW] Use _countof instead of ARRAYSIZE and use UINT (#3471)
- Use _countof macro instead of non-standard ARRAYSIZE macro.
- Use UINT type for array index instead of INT type, to erase signed/unsigned comparison warning.
JIRA issue: N/A
2021-02-21 10:28:08 +09:00
Doug Lyons
ce7836c6d3 [WIN32K] Add StretchBlt function ability to flip images (#3458)
Modify dib\dibxxbpp.c programs to understand flipped images. See Videos at CORE-16642

1. Mirroring Horizontally works.
2. Mirroring Vertically works.
3. Rotation 180° works.

CORE-16642, CORE-14408, CORE-16634
2021-02-21 08:28:36 +09:00
Doug Lyons
89843bec56 [GDI32_APITEST] Add more StretchBlt Regression Tests (#3455)
Added tests for many more StretchBlt options.
Created StretchBlt regression tests for verifying most flip options.
This is preparation for my Pull Request #3458 which will implement the flip functionality for StretchBlt.

CORE-16642
2021-02-21 08:21:51 +09:00
Colin Finck
fd8080b094 [KERNEL32] Align the PROCESS_PRIORITY_CLASS variable in GetPriorityClass on a 4-byte boundary.
Fixes CORE-16757.
This is required for NtQueryInformationProcess as proven by my test application in the bug report.
2021-02-20 17:13:38 +01:00
Eric Kohl
ea26bef01d [LSASRV] Add start code for the netlogon service 2021-02-19 21:53:00 +01:00
Jérôme Gardou
2a962eaf8c [NTOS:CC] Keep a reference on the shared cache map of the file when we are in lazy write
This should fix "Leaking VACB" debug prints
2021-02-19 15:48:31 +01:00
Jérôme Gardou
d18634c026 [NTOS:WMI] Be consistent about potential NULL pointer use 2021-02-18 10:24:53 +01:00
Serge Gautherie
17a9041da1 [NTOS:WMI] IoWMIWriteEvent(): Add WNODE_FLAG_TRACED_GUID case
Addendum to d5f8964 (r23040).
CORE-17384
2021-02-17 18:59:09 +01:00
Serge Gautherie
495e22e0d5 [NTOS:WMI] IoWMIWriteEvent(): Fix annotation, Extend DPRINT1()
CORE-17384
2021-02-17 18:59:09 +01:00
Timo Kreuzer
4b4bff0642 [NTOS:MM] Handle demand zero PTEs with MM_EXECUTE_READWRITE and MM_READWRITE 2021-02-16 18:02:57 +01:00
Serge Gautherie
7ca16bf696 [PSDK] winbase.h: Update LoadLibraryEx() dwFlags value defines (#3456)
Add another Vista check.
Addendum to 986cc5e.
2021-02-17 00:37:48 +09:00
Václav Zouzalík
0f8224e985 [SHIMGVW] Update Czech (cs-CZ) translation 2021-02-16 15:11:50 +01:00
Hervé Poussineau
796a536a22 Revert "Disable some C++ code, which doesn't compile for me"
This reverts commit 83d9920cb9.
2021-02-16 00:13:18 +01:00
Hervé Poussineau
83d9920cb9 Disable some C++ code, which doesn't compile for me 2021-02-16 00:12:25 +01:00
Hervé Poussineau
58332b076c [NTOS:KD] Merge initialization phases 1 and 2, and fix log file debugging
Phase 2 and 3 were not done anymore since 777a2d94da.

Fix that, by merging phases 1 and 2, and by calling phase 3 later
for log file debugging, when ExpInitializationPhase = 3

CORE-17470
2021-02-16 00:12:25 +01:00
Katayama Hirofumi MZ
99a9e7e493 [SHIMGVW] Refactoring (#3461)
- Make the calls of CallWindowProc and DefWindowProc Wide (Unicode).
- Delete needless type casts.
- Add const to function arguments.
- Improve ImageView_LoadSettings function.
- Insert OFN_EXPLORER flag.
2021-02-15 19:21:55 +09:00
Jared Smudde
8b6e5e87c3 [MMSYS] Add the OFN_EXPLORER flag to the Browse for sound dialog. (#3460) 2021-02-14 21:40:30 +01:00
Carlo Bramini
ac4b506eab [SHIMGVW] Fix wrong text into the title bar. (#3459)
Unicode/ANSI conversion problem happened by some wrong ANSI function calls. This PR fixes them by modifying CMakeLists.txt.
2021-02-15 02:38:36 +09:00
Eric Kohl
2a3c94e301 [NETAPI32] Use our implementation of NetWkstaUserEnum instead of the Wine stub 2021-02-14 11:26:54 +01:00
Eric Kohl
87a4624e20 [WKSSVC][NETAPI32] Implement NetrWkstaGetInfo and get rid of the old NetWkstaGetInfo implementation 2021-02-13 23:19:29 +01:00
Robert Naumann
0d1a804581 [SHIMGVW]Update German translation 2021-02-13 20:59:38 +01:00
Robert Naumann
e4058ee520 [SHELL32] Update German translation
-change "Meine Musik" to "Eigene Musik" to get a consistent naming. Same for "Meine Videos".
2021-02-13 20:14:05 +01:00
Carlo Bramini
6aafdc520c [SHIMGVW] Fix CTRL-K to IDC_ROT_CLOCKW (#3457)
As signaled in CORE-11044, the IDC_ROT_COUNCW was assigned to both CW and CCW rotation.
2021-02-13 19:32:19 +01:00
Carlo Bramini
0d4e921c93 [SHIMGVW] Add new features (CORE-11044) (#3113)
Add these new features:

- Use accelerator table for keyboard hotkeys.
- Updated italian translation.
- Simplified creation of toolbar and tooltips.
- Added missing toolbar buttons.
- Initialize common controls for theming.

French translation by Kyle Katarn.
Polish translation by Adam Stachowicz.
2021-02-13 23:22:21 +09:00
Serge Gautherie
986cc5e8e2 [PSDK] winbase.h: Update LoadLibraryEx() dwFlags value defines (#3153)
* Deci-to-Hexa.
* Add more values.
* Add a Vista check.
2021-02-13 23:16:49 +09:00
Robert Naumann
b774ec5ca6 [NOTEPAD] Implement File->New Window
*Windows starts a new own's instance too, when clicking on "New Window" (Tested by @HBelusca)
2021-02-12 20:14:03 +01:00
Piotr Hetnarowicz
61f4b120fc rapps pl-PL lang update (#3454)
rapps pl-PL lang update
2021-02-12 19:42:52 +09:00
Serge Gautherie
cb5d610a73 [CONSRV] SetConWndConsoleLeaderCID(): Check must be before dereferencing (#3451)
Addendum to f12e601.
2021-02-10 18:55:19 +01:00
Jérôme Gardou
e46c2dd1b3 [VIDEOPRT] Mark low memory range as NOACCESS when we don't need to access it.
This allows to accomplish great things, such as crashing when dereferencing NULL pointer.
2021-02-10 17:48:30 +01:00
Jérôme Gardou
0573de22a0 [NTOS:MM] Do not assert on a case we actually support 2021-02-10 17:48:30 +01:00
Jérôme Gardou
f12e6016b6 [CONSRV] Set 0 as a console leader PID/TID when unsetting it.
Instead of whatever is behind the NULL pointer.
2021-02-10 17:48:30 +01:00
Jérôme Gardou
73fd52a164 [NTOS:MM] Flush dirty pages after closing the page files.
CORE-17462
2021-02-10 11:14:19 +01:00
Robert Naumann
b493a2f8ab [SYSSETUP] Update German translation. 2021-02-09 21:03:34 +01:00
Timo Kreuzer
ca74467904 [NTOS:CC] Raise status, when CcMapData fails (#3348)
Also add a check in fastfat, that asserts, when CcMapData returns FALSE.
2021-02-09 09:29:48 +01:00
Serge Gautherie
2b93352907 [LOAD][UNLOAD] Fix w*printf() format strings (#3319)
Also:
- Set ServiceName.MaximumLength.
- Fix MSVC warnings:
'...\load\load.c(19): warning C4267: '=': conversion from 'size_t' to 'USHORT', possible loss of data
'...\unload\unload.c(19): warning C4267: '=': conversion from 'size_t' to 'USHORT', possible loss of data'
'...\unload\unload.c(24): warning C4476: 'wprintf' : unknown type field character 'U' in format specifier'
'...\unload\unload.c(24): warning C4474: 'wprintf' : too many arguments passed for format string'
2021-02-08 16:47:13 +01:00
Serge Gautherie
682f85ad9f [DOC][WS2_32][WS2HELP] Fix ws2* paths (#3425) 2021-02-07 22:17:01 +01:00
Aobi Chan CL
3692b5ff25 [TRANSLATION] Chinese Traditional (zh-TW) translation improvement (#3430)
- CACLS, FONTSUB, NOTEPAD, SOLITAIRE, VCDCONTROLTOOL, WORDPAD: Update Chinese Traditional translation.
- CALC, PING, SYSTEMINFO Add Chinese Traditional translation.
- PING, SYSTEMINFO: Update zh-TW.rc to make it less Windows like (maybe).
- WRITE, WINFILE: Translation sync to Wine.

+ Update media/doc/For_Chinese_Translation.txt
2021-02-07 22:14:19 +01:00
Václav Zouzalík
5a194a2434 [INF] Add Czech (cs-CZ), Slovak (sk-SK) and Esperanto (eo-AA) translations (#3446) 2021-02-08 00:06:25 +03:00
Yaroslav Kibysh
c917caf723 [SYSSETUP] Make status dialog look like msgina status dialog (#2825)
* [SYSSETUP] Add msgina-like resources

* [SYSSETUP] Add bitmaps functionality, remove progress bar

* [SYSSETUP] Update resources

* [SYSSETUP] Use DPRINT1

* [SYSSETUP:INSTALL] %d - %lu for GetLastError in DPRINT1

* [SYSSETUP:INSTALL] Check pDlgData for NULL value

+ add some comments
2021-02-07 20:36:55 +01:00
Mark Jansen
35103558e1 [CMAKE] Fix empty dependencies.graphml being created 2021-02-07 14:02:01 +01:00
Mark Jansen
b809275cbe [WININET] Fix usage of uninitialized variable 2021-02-07 14:00:12 +01:00
Eric Kohl
560b66a2d5 [NET] Remove the NAME, PRINT and SEND options because we will most likely never have a messenger service 2021-02-07 13:45:25 +01:00
Siavosh Kasravi
bb723c337a [SHELL32] Fixing COpenWithMenu.cpp for handling path strings with spaces (#3449)
CORE-17445

Fixing the bug where open with menu where OpenWithMenu does not handle handler's path when there are spaces in the path string, by adding the missing quote marks around %1 when recording the registry entry for file handler.
2021-02-06 14:35:11 +01:00
Serge Gautherie
32f7474f38 [SETUPLIB] Fix 'unlock' copypasta in debug print (#3448)
Addendum to 76ac898.
2021-02-05 16:10:15 +03:00
Victor Perevertkin
dbcd6efedf [GITHUB] Fix labeler rules, attempt 2 2021-02-05 14:58:14 +03:00
Victor Perevertkin
d8b8e73844 [GITHUB] Fix labeler rules 2021-02-05 14:39:25 +03:00
Victor Perevertkin
2660316022 [GITHUB] Fix YAML parsing in labeler.yml 2021-02-05 14:00:51 +03:00
Victor Perevertkin
f7cf2ee32d [GITHUB] Add Labeler action for labelling PRs automatically 2021-02-05 13:41:03 +03:00
George Bișoc
dd4c113594 [NTOS:SE] Do not use a global lock for tokens (#3445)
In Windows Server 2003 the lock is initialised on a per-token basis, that is, the lock resource is created in SepDuplicateToken() and SepCreateToken() functions. This ensures that the lock initialisation is done locally for the specific token thus avoiding the need of a global lock.
2021-02-05 12:10:19 +03:00
Victor Perevertkin
b705df731e [NTOS:MM][FASTFAT_NEW] Fix DBG usage, fixes Release build 2021-02-05 11:54:10 +03:00
Jérôme Gardou
44eecfaa01 [MEDIA] Update WINESYNC.txt for d3dx9 DLLs 2021-02-04 16:37:07 +01:00
Jérôme Gardou
236b5f77ab [WINESYNC]: d3dx9 is now in sync with wine-staging wine-6.0-rc5 2021-02-04 16:37:07 +01:00
winesync
0e1975b6aa [WINESYNC] d3dx9_36: Implement ID3DXSkinInfoImpl_UpdateSkinnedMesh.
This patch fixes last problem of bug 32572.

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
489e520163 [WINESYNC] d3dx9_36: Filter out D3DCompile warning messages that are not present with D3DCompileShader. (try 4)
This patch fixes vertex processing issue of bug 33770.

The problem comes from the fact that even if the call succeeds,
the game interprets a non null error_messages pointer as an error.

By calling D3DCompile we use a newer version of the compiler which is more
strict and generates the following warning.
  - warning X3206: 'dot': implicit truncation of vector type
  - warning X3206: implicit truncation of vector type
  - warning X3206: 'mul': implicit truncation of vector type
D3DCompileShader does not generate such warnings.

These is confirmed in the DX SDK release note:
New Warning X3206: Implicit Truncation of Vector Type
Beginning in the August 2009 release of the DirectX SDK, the compiler will warn
when an implicit truncation of a vector type occurs.

The warnings cannot be disable so this patch filters out these strings in D3DCompileShader
and reset the error messages pointer if the resulting buffer is empty.

Try 2:
  - only filter out lines containing "X3206:" in case d3dcompiler_43 has localization

Try 3:
  - use move in place instead of copying the buffer

Try 4:
  - filter simplification by Sebastian and remove 'mul' testing left-out in search string

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
7a7364d0ad [WINESYNC] d3dx9_36: Improve D3DXSaveTextureToFile to save simple texture to dds file.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
959c06f9b3 [WINESYNC] d3dx9_36: Add support for FOURCC surface to save_dds_surface_to_memory.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
181ffe0779 [WINESYNC] d3dx9: Implement D3DXComputeTangent
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

wine-staging patch by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2021-02-04 16:37:07 +01:00
winesync
1dfb089b4b [WINESYNC] d3dx9_*: Add D3DXSHProjectCubeMap stub
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46284

wine-staging patch by Andrey Gusev <andrey.goosev@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
5687b22005 [WINESYNC] d3dx9_36: Add semi-stub for D3DXOptimizeVertices.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
81b6936ac8 [WINESYNC] d3dx9_36/tests: Add additional tests for special cases.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
51b19f6605 [WINESYNC] d3dx9_36/tests: Add initial tests for D3DXDisassembleShader.
wine-staging patch by Sebastian Lackner <sebastian@fds-team.de>
2021-02-04 16:37:07 +01:00
winesync
7e6d9c5b39 [WINESYNC] d3dx9_36: Implement D3DXDisassembleShader. (v2)
Changes in v2 (by Christian Costa):
  * More generic code for D3DXDisassembleShader.

wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
62f40620f1 [WINESYNC] d3dx9_36: Improve stub for ID3DXEffectImpl_CloneEffect.
wine-staging patch by Sebastian Lackner <sebastian@fds-team.de>
2021-02-04 16:37:07 +01:00
winesync
7c02c861b1 [WINESYNC] d3dx9_36: Add format description for X8L8V8U8 for format conversions.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
7a64c4dcc9 [WINESYNC] d3dx9: Return D3DFMT_A8R8G8B8 in D3DXGetImageInfoFromFileInMemory for 32 bpp BMP with alpha.
wine-staging patch by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
93a4e84feb [WINESYNC] d3dx9: Avoid closing invalid handles.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50373
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e27a95e92097a601baa9b0e9dd6fcc5013c863fa by Akihiro Sagawa <sagawa.aki@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
1f6645eb19 [WINESYNC] d3dx9: Correctly handle sprites array reallocation.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 34c0055cfcb84e32d13556b7ec841d01acf5fe96 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:07 +01:00
winesync
d7f9f9f6e8 [WINESYNC] d3dx9: Remove unreachable DT_SINGLELINE handling from ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a097f54ea1e7e75b78842ceb835f5db5f08fea06 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:07 +01:00
winesync
06bd040614 [WINESYNC] d3dx9: Implement clipping of glyphs in ID3DXFont_DrawText.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49546
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 84cbf6a49dfe75b9fd497b2c3ef7e922857bb618 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:07 +01:00
winesync
9567bb87bd [WINESYNC] d3dx9: Fully initialize the glyph position.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49376
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2481e617bbd529a297266ad53b1afe1d96e9af89 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:07 +01:00
winesync
31f063ffbf [WINESYNC] d3dx9: Don't release textures when D3DXSPRITE_DO_NOT_ADDREF_TEXTURE is specified.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9eda5c043047fd117441473651b2089b80a4ed80 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:07 +01:00
winesync
fe25fbb5fe [WINESYNC] d3dx9/tests: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bffe111672972cb26c319c029ca469520742c720 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:07 +01:00
winesync
868f57e6b2 [WINESYNC] d3dx9: Simplify D3DXSphereBoundProbe() a bit.
Spurred by a patch by Alex Henrie.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 18ae539c914a9b5a89f63d8cf9c2a21273eccc6c by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:07 +01:00
winesync
4c48bb18fd [WINESYNC] d3dx9/tests: Add a few D3DXLoadSurfaceFromSurface() tests with different rects.
Signed-off-by: Robin Kertels <robin.kertels@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ea7cf679150f790d2e375d99ee226ea4881b490a by Robin Kertels <robin.kertels@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
a5f345390c [WINESYNC] d3dx9: Ignore filter in D3DXLoadSurfaceFromSurface() when rects match.
This allows us to use IDirect3DDevice9_StretchRect
and avoid GPU synchronization.
It massively improves performance in Dead Space 1 which
calls LoadSurfaceFromSurface every frame before presenting.

Signed-off-by: Robin Kertels <robin.kertels@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 625622ad4182061ee3111032ab0ae4a494b74e73 by Robin Kertels <robin.kertels@gmail.com>
2021-02-04 16:37:07 +01:00
winesync
4d0164c0a0 [WINESYNC] d3dx9: Implement ID3DXSkinInfo_Clone().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48779
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 35a4093eff75e5bf7fee0dc8d2a708d960b03768 by Gijs Vermeulen <gijsvrm@gmail.com>
2021-02-04 16:37:06 +01:00
winesync
bbb79195a5 [WINESYNC] d3dx9: Use BitScanReverse in make_pow2.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 22970932d014f024fcf7f0f98b1a5384b1b1eb99 by Jacek Caban <jacek@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
48f365863f [WINESYNC] d3dx9/tests: Remove useless '\n' within some ok() messages.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c1cf13a7512387885616684130b605a7640f5187 by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:06 +01:00
winesync
20ea1bf125 [WINESYNC] d3dx9: Add support for D3DFMT_P8 in DDS files.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48731
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bb222133a81581622c88c0d34534bc88a556f1f2 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2021-02-04 16:37:06 +01:00
winesync
4ff131d352 [WINESYNC] d3dx9: Handle horizontal alignment in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d511853d45bc3302b2a4501b1aa0097a4e78b3d9 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
69ca9a5852 [WINESYNC] d3dx9: Handle vertical alignment in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fd9808b45af4bf4c6771fe2932e3169cb193bf44 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
841a23759e [WINESYNC] d3dx9: Add a helper for computing the bounding rectangle in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 53769e7bde9cfb808e26cf67057314c2ca03345a by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
4f3d8e9fbf [WINESYNC] d3dx9: Switch character count to unsigned int in the DrawText implementation.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b5df43b9118074485a1f4a917b16d37bc068839d by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
1697b87434 [WINESYNC] d3dx9/tests: Introduce compare_uint().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9bcb1f5195d1e65e0e7afb288d36fee716fe3a60 by Henri Verbeet <hverbeet@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
67c812be35 [WINESYNC] d3dx9: Use stricmp() instead of _strnicmp(..., -1).
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aab980a16253ff6bb6286572576899bfc0f83945 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:06 +01:00
winesync
51b2c71b54 [WINESYNC] d3dx9: Validate state operation in d3dx_parse_state().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2b5b069dd70ba328dc0ce660861ad802feae912c by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:06 +01:00
winesync
777269ea64 [WINESYNC] d3dx9: Use an assert() to validate access to const_tbl[].
This check is essentially validating that the hardcoded state_table[]
has reasonable values for the shader constant states. Use ARRAY_SIZE()
to avoid warnings if the compiler chooses an unsigned integer to back
enum SHADER_CONSTANT_TYPE.

Based on an idea by Henri Verbeet.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cfc533b40d2d1426a8f05501152b28aa1ec78f07 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
e6e305520c [WINESYNC] d3dx9: Remove a recursive call to ID3DXFont_DrawTextW when no rect is specified.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9796bdc966a89cd31829f3a094bb37ec71e21871 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
cf5abba9d8 [WINESYNC] d3dx9: Add two more DT_SINGLELINE tests.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 787d98f47ce7254dda7f644fa6d033fe1776ae38 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
0319347754 [WINESYNC] d3dx9: Handle DT_CALCRECT in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 143a2a30f89dfc79cc2a49cd34af6fd587ce3f69 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
1dfbf16fa6 [WINESYNC] d3dx9: Handle DT_SINGLELINE in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 333687f522730befb8c64d297dc52f654e53a744 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
806fe486fb [WINESYNC] d3dx9: Handle word breaks in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e6a1116c2a3b196dea496f77747209f67982652c by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
818c9f88b0 [WINESYNC] d3dx9: Handle clipping in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6da3e904a1efc921030fdbe34070b981bf57524c by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
9363eac228 [WINESYNC] d3dx9: Handle newlines in ID3DXFont_DrawText.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 330c3f9108191feb6eb888384befb5cb54645233 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:06 +01:00
winesync
928ed97d6c [WINESYNC] d3dx9: Add a very basic ID3DXFont_DrawText implementation.
Based on a patch by Tony Wasserka.

Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 316a8d0ae11ae1a9654bc731d2c9dc23febc7a2d by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
aa86f68321 [WINESYNC] d3dx9: Implement ID3DXFont_PreloadText.
Based on a patch by Tony Wasserka.

Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cc03400e322edea97f0e425c04cd9069f77b4c9f by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
6f6f4d1501 [WINESYNC] d3dx9: Implement ID3DXFont_PreloadCharacters.
Based on a patch by Tony Wasserka.

Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 21fc1f37e76eaced9228eaf62a45489a2bf8ac11 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
ea944e7a9e [WINESYNC] d3dx9: Implement ID3DXFont_GetGlyphData.
Based on a patch by Tony Wasserka.

Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e9ea8a05e54f1c950e5c15979d1393ad013402b1 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
541dbf1b36 [WINESYNC] d3dx9: Implement ID3DXFont_PreloadGlyphs.
Based on a patch by Tony Wasserka.

Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ac5687463700b070fc1eecca67c4a46ec15127fa by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
9cb965ea9b [WINESYNC] d3dx9: Reimplement make_pow2() in d3dx9_private.h.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1b0ad92db1c21d5052c45be2291759d60553476c by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
921935dfd6 [WINESYNC] d3dx9/tests: Add more ID3DXFont_DrawTextW tests.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e0ce80561bf046c9dc7837e1c7f3c999f18b0361 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
ed10b8bf3e [WINESYNC] d3dx9: Implement D3DXCreateKeyframedAnimationSet.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45481
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0854a7eab7ac69057a3bf8c44ef90ce18497d964 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2021-02-04 16:37:05 +01:00
winesync
44db8b970b [WINESYNC] d3dx9: Support D3DFMT_X8L8V8U8 in DDS files.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 06918ba76bdc109e59fdc1d8ee00c46f6857bbd2 by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:05 +01:00
winesync
018206caed [WINESYNC] d3dx9/tests: Add some more ID3DXFont tests.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ef889fe654e8bef81c009b93501b6c0411cd8354 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
79f2110191 [WINESYNC] d3dx9/tests: Add some tests for ID3DXFont_DrawText().
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id db7539f9f3ead16cb94ff03c2b8f9ca11b44a253 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2021-02-04 16:37:05 +01:00
winesync
ecb1218ae7 [WINESYNC] d3dx9/tests: Get rid of redundant handling for D3DXCreateFontA() failures.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id da62db437aca4a434ab88297ac78cbcd83f6152e by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
c483241e11 [WINESYNC] d3dx9/tests: Use Tahoma in all font tests.
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2465220a0c93f8e55948061772c2a39fb5753bd9 by Sven Baars <sbaars@codeweavers.com>
2021-02-04 16:37:05 +01:00
winesync
7d1fa6a111 [WINESYNC] d3dx9: Pass D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY when appropriate.
Manual testing shows that the backward compatible compilation is used
in d3dx9 versions below 37.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48302
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 13880f8e6a0a972382de7de04b56bd1a414bef67 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:05 +01:00
winesync
89c23f17a4 [WINESYNC] d3dx9: Fix some spec file entries.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 96dab5abeedbb0908ac11915464f71eb74383bd7 by André Hentschel <nerv@dawncrow.de>
2021-02-04 16:37:05 +01:00
winesync
4db4fa29d1 [WINESYNC] d3dx9: Make ID3DXLine::OnResetDevice() return S_OK.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38615
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4f0212c4fd35ac4b03a082cab27e629130ac1b13 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2021-02-04 16:37:05 +01:00
winesync
02ca94672b [WINESYNC] d3dx9_36/tests: Fix some constant conversion warnings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 863da013a216bb50b925bbb9e3987b21206fb782 by Alexandre Julliard <julliard@winehq.org>
2021-02-04 16:37:05 +01:00
winesync
bf2e192898 [WINESYNC] d3dx9_36: Fix the spelling of a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5d7fcf52106bbb11544e8dbc5777150c8f55d726 by Francois Gouget <fgouget@free.fr>
2021-02-04 16:37:05 +01:00
winesync
185fe9cdeb [WINESYNC] d3dx9: Implement D3DXCreateFragmentLinker[Ex]().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38086
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fd06827bca416dfec8835f109834ad0729c996a8 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2021-02-04 16:37:05 +01:00
winesync
4dbfea9dd2 [WINESYNC] d3dx9_36: Fix the spelling of a TRACE() message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0611e27caf5105795cb94e60dec5ff0561e8ec44 by Francois Gouget <fgouget@free.fr>
2021-02-04 16:37:05 +01:00
winesync
0336f97838 [WINESYNC] d3dx9: Implement d3dx_effect_ApplyParameterBlock().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e28888c9fe504f75d985e34a2c271f43abd95497 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:05 +01:00
winesync
7175721b38 [WINESYNC] d3dx9: Implement recording parameters to parameter block.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7d512a1e0ef58fad25e53af5316d445cb0cfc5e7 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
3daf9d55e6 [WINESYNC] d3dx9: Factor out free_parameter_object_data() function.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 07562f1e3927b2aa1521811f0c16a7f05c175cba by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
0bc31de988 [WINESYNC] d3dx9: Factor out set_value() function.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4020a38259774c64035e5783d595ff88097cedf8 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
3c1a652221 [WINESYNC] d3dx9: Implement d3dx_effect_DeleteParameterBlock().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f65e4854e37355a946b6e017a2cd595a1ddceb38 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
7bc8c981ac [WINESYNC] d3dx9: Implement d3dx_effect_EndParameterBlock().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fd47b684487bab4664a31a3b670783b6d1a5aca3 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
76955cb6aa [WINESYNC] d3dx9: Implement d3dx_effect_BeginParameterBlock().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e281ba4db6654850caf713ab09aa6a2057e1d064 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
db6d1a41d0 [WINESYNC] d3dx9/tests: Test ApplyParameterBlock() while recording.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 85d3ad879d5b13f7fce378009aaf80b419ad6185 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
724c4406aa [WINESYNC] d3dx9/tests: Add test for effect parameter block.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 61ee765aa0ec0d0e478a9f82d73e602ea71419c2 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
53b44b7c4d [WINESYNC] d3dx9: Avoid double freeing samplers.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6aced396bad8bea61733fda24f0cecabaec5041e by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
abc5817112 [WINESYNC] d3dx9: Remove redundant NULL check before heap_free().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a0a5c64bd5d4240d8a7a9913c77730458262d450 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:04 +01:00
winesync
d9ceaa2284 [WINESYNC] d3dx9: Correctly handle NULL constant state for objects on 64 bit arch.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aef11864a47a33830eca086de8bf337ee9b5114a by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
c7dd2e86e0 [WINESYNC] d3dx9: Turn unimplemented interface ERR into a WARN.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5b66442bc95e42bcef2ca385168fc3d594182e4a by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
7e7d7d48f9 [WINESYNC] d3dx9: Don't pass usage flags for staging texture in D3DXCreateVolumeTextureFromFileInMemoryEx().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 29c02234eb2be9c8fa48cfc021d0d6f84de58add by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
ed59f01229 [WINESYNC] d3dx9: Use check_texture_requirements() in D3DXCheckVolumeTextureRequirements() with correct resource type.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0b03d21c8f89b3f9dbd68ac849f9923197095eb5 by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
849074f0c6 [WINESYNC] d3dx9: Use check_texture_requirements() in D3DXCheckCubeTextureRequirements() with correct resource type.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e50873f504b4693c9efcf7113afcb633155babbc by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
be011791e1 [WINESYNC] d3dx9: Factor our check_texture_requirements() function.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 92c8c0fc7fb95209fa9dec25234d16b1dbddcf2a by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
28df0e9ba8 [WINESYNC] d3dx9: Return an error if no fallback format is found.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fcdcd5d3cbb58a40894f661fd8a9285b81a55789 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
4053a5ada3 [WINESYNC] d3dx9: Don't pass usage flags for staging texture in D3DXCreateCubeTextureFromFileInMemoryEx().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47974
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a0840773f7ee00dc9373b4db825fec68d08ee53b by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
03f8174d97 [WINESYNC] d3dx9: Correctly align texture dimensions to block size in D3DXCheckTextureRequirements().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f6f90daa3117cf493e0815c42bb0fa1740d31308 by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:04 +01:00
winesync
d2eac4cdbf [WINESYNC] d3dx9: Fix pitch passed to DXTn [de]compression functions.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47862
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9069913dbba0914b80544ce4afb9e7285efad2a5 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
62751bc14e [WINESYNC] d3dx9: Add a trace to D3DXCreateBuffer.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a172aead8d542b92709545d8bcd992f03ee19d82 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
f2c536f5cc [WINESYNC] d3dx9: WARN when the file doesn't exist in D3DXCreateTextureFromFileExW().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 81ababa864229a7e81abca76ef7e6a12fe5b256f by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
4198c58dca [WINESYNC] d3dx9: Compute the correct source rect in D3DXLoadSurfaceFromFileInMemory().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f934ef1a14108aa535e76900b29cba0dd8253f80 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
497d1c4360 [WINESYNC] d3dx9: Don't pass the D3DLOCK_DISCARD flag when mapping a texture.
We aren't necessarily rewriting the whole surface (e.g. rect smaller than
the whole surface, color key).

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 536fce7f3b887fcc087d4c00106ceb2f0ff93c01 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
e219194369 [WINESYNC] d3dx9: Implement DXTn compression for offset destination rect.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a838e144dcaa55e227d7e99566a59f7a31d97227 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
38d868820a [WINESYNC] d3dx9: Handle non-zero source rect position in D3DXLoadSurfaceFromMemory().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=41936
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 88d8ae383932ad1c292c74da7dcc19f00d8423f7 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
8c85a63a2b [WINESYNC] d3dx9: Move the source rect alignment check into the condition for simple copy.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a9c158b72aae1efed159d40fde086cdc608bc62e by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
bbf66db254 [WINESYNC] d3dx9/tests: Improve tests to check for DXTn fallback formats.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d2f3fc03cb1dbcae77e199f3fd8eb2ccf419cfa5 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
882cc57c66 [WINESYNC] d3dx9: Handle compressed surfaces in D3DXLoadSurfaceFromMemory.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=24983
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 376182062ff1ab8e7835fd67bc650da83c2cc75d by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
e639a7847f [WINESYNC] d3dx9: Add traces to filtering functions.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1f9243c757589c6ff2333794c3a44327d64855ae by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
fb4694d510 [WINESYNC] d3dx9/tests: Add even more tests for misaligned block textures.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5472b8b98332400a7ad434ed94bed82b21f622fe by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
7715799cbd [WINESYNC] d3dx9/tests: Add more tests loading misaligned block textures.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c29f770e8bf1da56856b457cf92221e88f6323d4 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
8a753b054f [WINESYNC] d3dx9/tests: Add a test with a larger DXT5 texture.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b7656110e6e83866a33418bc6b48984632010e00 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
7cf0e71b4f [WINESYNC] d3dx9/tests: Add a test for loading a texture smaller than the block size.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 426d6776cff537e36bdb7c0fb7963a74e4a3251e by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
7b66aec721 [WINESYNC] d3dx9/tests: Add a test for loading surfaces not divisible by the block size.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7f39c726fc91d84d4b26241c3a031381ad9e59cb by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
eaf1129b76 [WINESYNC] d3dx9: Relax a block alignment check.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e371085aaf4424e6ef9b5b76ebf3107121d22f50 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
74df1d450b [WINESYNC] d3dx9: Simplify unsupported format check.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b744a309ace15a8c5494cf7134294c5869d2dade by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
8cce0b9007 [WINESYNC] d3dx9_36/tests: Spelling fixes in ok() messages.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 92c00c51b21594987d342b5ce00c174ab4e84595 by Francois Gouget <fgouget@free.fr>
2021-02-04 16:37:04 +01:00
winesync
3ff51fd68e [WINESYNC] d3dx9: Make qsort() callback functions cdecl.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 08b569d50599328df1531f20cceb5331bf718524 by Alexandre Julliard <julliard@winehq.org>
2021-02-04 16:37:04 +01:00
winesync
30042a5211 [WINESYNC] d3dx9/tests: Make the pixels array static.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 15dd8e2b981ca32cae94409153627b3300bbeab8 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
3b3672360f [WINESYNC] d3dx9: Get rid of unused unlock_surface() argument.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eadc7b3128afdf59891c6f9a1c568077c4e6d087 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:04 +01:00
winesync
8dcbf4645c [WINESYNC] d3dx9: Pass rectangle to {lock|unlock}_surface().
This fixes regressions introduced by commits
65956ae50a136fe8467a0332c7495f36617a16dc, 092c14b9d86ee1e96e465908cc524ec85988d0ff.
Surface source or destination rectangles were left behind.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47546
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 378204527e1f42ed1373a0cd7356770d235e319d by Paul Gofman <gofmanp@gmail.com>
2021-02-04 16:37:03 +01:00
winesync
224d70bd0c [WINESYNC] d3dx9: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9fb5745a7997bbfe033779650f1193d85369cef2 by Alexandre Julliard <julliard@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
bbc438a5d5 [WINESYNC] include/msvcrt: Add INFINITY and NAN definitions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a16ef96dc624edf2666aa125fbc1c197f5edcc1b by Alexandre Julliard <julliard@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
7240c0d945 [WINESYNC] d3dx9: Always free samplers (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7dc42119b40ad39165d881dd8d0e410d3e84fe5a by Sven Baars <sven.wine@gmail.com>
2021-02-04 16:37:03 +01:00
winesync
c2b534f4fd [WINESYNC] d3dx9: Release the full parameter name when a parameter is released (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 63443f249f4dfe748ce3872e74ecf5c1d8aa55d9 by Sven Baars <sven.wine@gmail.com>
2021-02-04 16:37:03 +01:00
winesync
e4ffc986e5 [WINESYNC] d3dx9: Don't use strcasecmp.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5c5a8ae23ff7fe9c103de4e3dfce06bf1b8778c1 by Piotr Caban <piotr@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
7fb747193a [WINESYNC] d3dx9: Fix argument type in convert_dib_to_bmp().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8bed853c4380ebf86220ffe2fd89d48d98a90921 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
e6deaabfc6 [WINESYNC] d3dx9: Generate ID3DXSkinInfo in D3DXLoadSkinMeshFromXof() when needed.
Based on a patch by Michael Müller.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=33904
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 70d722340ad546ab988fffe4577e0c0ebe35a982 by Vijay Kiran Kamuju <infyquest@gmail.com>
2021-02-04 16:37:03 +01:00
winesync
50442c0d0b [WINESYNC] d3dx9/tests: Add tests for 32 bpp BMP with alpha.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a30fd8c0e44833b2a6412987a348273bfe42fe2f by Christian Costa <titan.costa@gmail.com>
2021-02-04 16:37:03 +01:00
winesync
65ca5beb3d [WINESYNC] d3dx9/tests: Avoid a test failure on Vista testbot.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ccdb74d81ac4a95aa87414f6459a8b44d451358a by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
9b602dbdc9 [WINESYNC] d3dx9/tests: Improve D3DXMatrixInverse() test a tiny bit.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5c052b699e7ac5c0e4f2324fe31e2d022dcf4bb5 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
b238e9688c [WINESYNC] d3dx9/tests: Add initial tests for dummy skin info interface.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aec8e12a3d71272b31aa8b5b075fe1cd88517c92 by Michael Müller <michael@fds-team.de>
2021-02-04 16:37:03 +01:00
winesync
256cd6a4cb [WINESYNC] include: Fix D3DXF_FILELOADMEMORY definition.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c9c74b8b10116c3f0b3bd4d08724963245499a92 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
9add999c51 [WINESYNC] d3dx9: Secure against unsafe iface to COM object transitions.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cd3e5020e4c87f49eb042fff9f607b6d745a5d55 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
13aa089045 [WINESYNC] d3dx9: Get rid of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3b951b77f87ed9102fc7a2ccb0807b5592990147 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
b2df33e579 [WINESYNC] d3dx9: Move flags out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7f16670edc3ed5c8ab5bdd88e88a00f8ba1853dc by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
9fd48117e6 [WINESYNC] d3dx9: Avoid using This in d3dx_effect_Clone().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c56906599cdad729834a6807747ce2c928fc511d by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
2c660479ae [WINESYNC] d3dx9: Merge the two pool fields of struct d3dx_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ef974e59856d702523ef04b5e315d0c980097c8d by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
234a3a6389 [WINESYNC] d3dx9: Avoid using 'This' in d3dx_effect_GetPool().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3bd0fc3d6ad75ec723f2268e2d6de79be904de2c by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
eb06082f45 [WINESYNC] d3dx9: Simplify effect init.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9a121f511533abb801ce49011e2a089b15265a44 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
f336e915a2 [WINESYNC] d3dx9: Simplify effect cleanup.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 009279845d9503468d5d3d39e393ad2ffa00181d by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
275bd75bd6 [WINESYNC] d3dx9: Move techniques out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5fa06bbc302c0fdbf8a5e087b7f18445475add2a by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
f8ab5e6bfb [WINESYNC] d3dx9: Move parameters out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4c134a66b0c3c10d4ed334477385a91440069024 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
433f7dc030 [WINESYNC] d3dx9: Use get_version_counter_ptr() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9438d031277cce1a1c21e0739e12d4c37f365467 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
9931b438e9 [WINESYNC] d3dx9: Move technique_count out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 074e3232ee90c94f9a8e7c55988b29b40e1e3f0f by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
515c280579 [WINESYNC] d3dx9: Pass a struct d3dx_effect to d3dx9_create_object().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 92d2f6d99429df4b5f132eca2fa8a2c1eae4a6d0 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
9ed5adb0c1 [WINESYNC] d3dx9: Don't pass a struct d3dx9_base_effect to d3dx9_base_effect_init().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id de59a1297111dfd0be93dccaa2db31865c61b79a by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
a639b63404 [WINESYNC] d3dx9: Don't expose struct d3dx9_base_effect outside effect.c.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id baf4aaa359c75715e7840b4c045fdb22adf2bc8a by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
81c4bfa714 [WINESYNC] d3dx9: Pass a struct d3dx_effect to get_parameter_element_by_name().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 09770370c0b9159d3324684146544b6f441e4889 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
ee5b715bde [WINESYNC] d3dx9: Move full_name_tmp_size out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0c6345322983ed3df9100b801aaa56367b37a501 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
2493cdf262 [WINESYNC] d3dx9: Move full_name_tmp out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3779ff07b048bfdaf67674db89aedaa1e4b1e810 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
826d5b5fcb [WINESYNC] d3dx9: Move param_tree out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id adc1b5a8bc6bcce427e231485015da43d24ca5cb by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
6d0bce396f [WINESYNC] d3dx9: Avoid double free on effect initialization failure.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cffe35488dc16414c6938e0f1a0169fb59730c97 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:03 +01:00
winesync
3b863b3693 [WINESYNC] d3dx9: Pass a struct d3dx_effect to d3dx9_base_effect_cleanup().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2f16d2f4ca86263571797d9544a9534e8aa29c16 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
e60679e844 [WINESYNC] d3dx9: Pass a struct d3dx_effect to get_annotation_by_name().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7738fec56b8d55f006babf4d9fb7a1b79cf363af by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
6ff343ea9a [WINESYNC] d3dx9: Pass a struct d3dx_effect to add_param_to_tree().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 62a26e1ad0e18b8de8ac8154cbce6c6f66f2249b by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
7c212953a7 [WINESYNC] d3dx9: Pass a struct d3dx_effect to the version helpers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f9351bae3e22ac500c237ab5a0b0556561e913d6 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
ce95dc5813 [WINESYNC] d3dx9: Pass a struct d3dx_effect to get_valid_pass().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 956b30dbf3899e3cd0ccccc17d99f01047caf634 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
0c4e3081da [WINESYNC] d3dx9: Pass a struct d3dx_effect to get_valid_parameter().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6ecc2c51b3849d313ad670a4b0ff14ca50aeb26a by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
d14c6a9493 [WINESYNC] d3dx9: Merge the d3dx_effect_GetVertexShader() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 73a05456bf6eb1102c5e3cc361f906e65f62cfcf by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
50aa6ee7ea [WINESYNC] d3dx9: Merge the d3dx_effect_SetVectorArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a4ea70af146850d690e0de64436253aef098a86d by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
492a1837b7 [WINESYNC] d3dx9: Merge the d3dx_effect_SetVector() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6eb69d2cf6a9049a3fedc3ec71146b3745f17e2b by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
329ee4ce80 [WINESYNC] d3dx9: Merge the d3dx_effect_GetVectorArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4d978ec0812cd18960337d5709853d93d98a1f2e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
17776bdd0f [WINESYNC] d3dx9: Merge the d3dx_effect_GetVector() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3754ba683f2d3ccb16354a75b530c317382929d8 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:03 +01:00
winesync
a64947697d [WINESYNC] d3dx9: Merge the d3dx_effect_SetValue() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bd731f6dd12d1e61daf3d6abefb3e01be35f5104 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
fce46567f7 [WINESYNC] d3dx9: Merge the d3dx_effect_GetValue() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d4e39ee1d8a263d91bc291cacfe8938f81d447fc by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
e8b87e3799 [WINESYNC] d3dx9: Merge the d3dx_effect_SetTexture() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 918c13f48cab2fe9391148ae4281015c0e169378 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
13e4a05754 [WINESYNC] d3dx9: Merge the d3dx_effect_GetTexture() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f06d6ab0858db398576e36bf295be581952d6209 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
598c2e03b2 [WINESYNC] d3dx9: Merge the d3dx_effect_SetString() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e288158dec12f4f55aea01fb1e2879c6e9a18028 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
da7f239a06 [WINESYNC] d3dx9: Merge the d3dx_effect_GetString() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ea45ed1751860905daa33af5e45d38cbbeadd0ad by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
6dec261847 [WINESYNC] d3dx9: Merge the d3dx_effect_GetPixelShader() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7ce336969ca4f7adba33c45f5f746a8f656348cc by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
2a0486d854 [WINESYNC] d3dx9: Merge the d3dx_effect_GetParameterDesc() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 262238d46752700c2041cb9548724c66bd017eca by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
6d27669ad3 [WINESYNC] d3dx9: Merge the d3dx_effect_SetMatrixTransposePointerArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f34f13825fd060fda40f0a5b02dc1b420e3a8e1e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
7145cf23a4 [WINESYNC] d3dx9: Merge the d3dx_effect_SetMatrixTransposeArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9f1ed4fcdd053647f7e2a7626ab95d0a1e8914eb by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
3f197f6fc7 [WINESYNC] d3dx9: Merge the d3dx_effect_SetMatrixTranspose() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 81203bdb0462ecce8f2791f1599cf1fedf318ad7 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
b74269badf [WINESYNC] d3dx9: Merge the d3dx_effect_GetMatrixTransposePointerArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 95a8cfad14f1d87b9f7512f96c5c06edba04ca70 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
e9177cf564 [WINESYNC] d3dx9: Merge the d3dx_effect_GetMatrixTransposeArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 29bf6988e3ae7451b46c3c73a4ba95b41c17dea0 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
43bb890af9 [WINESYNC] d3dx9: Merge the d3dx_effect_GetMatrixTranspose() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2fdd724a41c137e7f82b9a4b042b68cef32ac281 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
efeffca80e [WINESYNC] d3dx9: Merge the d3dx_effect_SetMatrixPointerArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c47355a3dc3685c44982ecb9944c0826c0b03526 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
09e5a68482 [WINESYNC] d3dx9: Merge the d3dx_effect_SetMatrixArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 96e2d0e018ba469599d50527f187c53f93b76216 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
3d9993c20a [WINESYNC] d3dx9: Merge the d3dx_effect_SetMatrix() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b1621b2c28c57af09064d69e6cbe8573db88b555 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
99c88ea215 [WINESYNC] d3dx9: Merge the d3dx_effect_GetMatrixPointerArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e39845ac9a7f363ca824ff6354ade6b6425a35e9 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
644faeeb7e [WINESYNC] d3dx9: Merge the d3dx_effect_GetMatrixArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2d7430f7143acc9e14cd58d3bc598ca79f7bff5e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
2bbbe62494 [WINESYNC] d3dx9: Merge the d3dx_effect_GetMatrix() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 636a2b5a39f81699bddd289b04de9644611b8987 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
122fe3ff58 [WINESYNC] d3dx9: Merge the d3dx_effect_SetIntArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8ea0f9d4dd3e4d74af51df0a2dc2723f2be0da8c by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
6c31253e62 [WINESYNC] d3dx9: Merge the d3dx_effect_SetInt() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2e771d77761a78b1b597144edfd69ae05b31561e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
cdc0089c1c [WINESYNC] d3dx9: Merge the d3dx_effect_GetIntArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 570ae3b2aa2e7da3f14fbd59979a39e8f21763be by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
218bc69a38 [WINESYNC] d3dx9: Merge the d3dx_effect_GetInt() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5015e2a7cf5fa3779fd651817058e03c94807088 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
b1ee53bf49 [WINESYNC] d3dx9: Merge the d3dx_effect_SetFloatArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 86dff681fc6c36a77b84ec7ded4dfc3f889e2882 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
b6b435e16c [WINESYNC] d3dx9: Merge the d3dx_effect_SetFloat() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2543e78b828f842813066827b5b2fb4565a51f7e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
0e01a12034 [WINESYNC] d3dx9: Merge the d3dx_effect_GetFloatArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cf4c22bd712594f3589070c493fc550770ebc899 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
6450fd6db3 [WINESYNC] d3dx9: Merge the d3dx_effect_GetFloat() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 460fd21ccc6785172167553e6dd124fdec020d11 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
ab91d0f28e [WINESYNC] d3dx9: Merge the d3dx_effect_SetBoolArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e435a1442d6499f358168d8a0ca974b43ccd9140 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
022ce2f70b [WINESYNC] d3dx9: Merge the d3dx_effect_SetBool() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b4bc9ea7b711c03b93d15bb2ba04dfbbb9d70f72 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
3c49040030 [WINESYNC] d3dx9: Merge the d3dx_effect_GetBoolArray() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab7756619c1b16c761618a68d1b6a06ad437cbe8 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
706fd8dde3 [WINESYNC] d3dx9: Merge the d3dx_effect_GetBool() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cca43ca090ccb27c5e3d3564dbe69a424f0c9872 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
9a5e0c591c [WINESYNC] d3dx9: Move objects out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f0d7dd0761fc0b6a45b3d3ae136339d3c3bf8075 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
bd5f74314c [WINESYNC] d3dx9: Merge the d3dx_effect_GetPassDesc() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 52c2092fa92cd06ea2c1074072be4cadd872f083 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
2b9f231acf [WINESYNC] d3dx9: Pass a struct d3dx_effect to d3dx9_copy_data().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 26b9b04e7f40c7a2011684f01ff07be91047b492 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
44ec74a6a4 [WINESYNC] d3dx9: Move object_count out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 54bdc66acf4abe1f1fa38238ed824c2372e1ff91 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
8237867116 [WINESYNC] d3dx9: Pass a struct d3dx_effect to the get technique helpers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 42839d15e3ec829f939fe1f99ac6b025f64b18de by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
f23b53d642 [WINESYNC] d3dx9: Merge the d3dx_effect_GetTechnique() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a33b20a0604e29c4b502a0d77e8828e926b09a62 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
570dd1c48a [WINESYNC] d3dx9: Merge the d3dx_effect_GetTechniqueByName() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a2e0046fc52c4e08a64cbe76c78f184e7d5b27d2 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
97475aa65c [WINESYNC] d3dx9: Merge the d3dx_effect_GetTechniqueDesc() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 10aa0819138f4aaf0f872de74eaf953326afe997 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
43d0a88291 [WINESYNC] d3dx9: Merge the d3dx_effect_GetPassByName() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 730e44ebe224c1b70e9f6eaf6a9aaeb8bc38a20b by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
862292231b [WINESYNC] d3dx9: Merge the d3dx_effect_GetPass() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e419ac91ba5bd295b596f334951657b54dba3e99 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
3d7d27f805 [WINESYNC] d3dx9: Pass a struct d3dx_effect to get_annotation_from_object().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 89941842affb0fec7068a8bd7adca77d8c036032 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
de908e3bd1 [WINESYNC] d3dx9: Merge the d3dx_effect_GetAnnotationByName() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1dd9104724b333fe27c2a1b7e57b31c29a252420 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:02 +01:00
winesync
3a9af49488 [WINESYNC] d3dx9: Merge the d3dx_effect_GetAnnotation() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7a1df2b0069bde1a9a022c6454fb8b3e06181fd0 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
f3d009fd46 [WINESYNC] d3dx9: Remove an unneeded forward declaration.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 45e7e2f2d501d92436a00f97edec660a2f7a2927 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
773ed3502e [WINESYNC] d3dx9: Move parameter_count out of struct d3dx9_base_effect.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 58b87b0f3eb156718e297df6a64b96ff1f4e8621 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
aa84d04a66 [WINESYNC] d3dx9: Merge the d3dx_effect_GetParameterElement() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3899e79fc429b0c668166ccc98efbd60f5c63aa4 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
c45448a2ef [WINESYNC] d3dx9: Merge the d3dx_effect_GetParameterBySemantic() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 04c838fa605fe586e850b4ef2dd4f9f80d5daa2e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
2573aa0af9 [WINESYNC] d3dx9: Merge the d3dx_effect_GetParameter() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2f1ba910d133b93a3da55de4d0b3577936fd8224 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
265ca68eb5 [WINESYNC] d3dx9: Merge the d3dx_effect_GetParameterByName() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 78e067b0d0113f8f37c48366bda88d2454c8f841 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
684130bdd9 [WINESYNC] d3dx9: Pass a struct d3dx_effect to the d3dx_parse helpers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d265afcd8fb15438961d26f0160103846144a58e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
3c75e844c4 [WINESYNC] d3dx9/tests: Remove useless cast to self.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9b0258f5756ed60b334ac20ca2f6e7f64eb5077e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
ed2023fc76 [WINESYNC] d3dx9: Get rid of the ID3DXEffectImpl #define.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d18fb86134d40ccee8df84ce7ccc4e1bdcb2d481 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:01 +01:00
winesync
74a0f6629e [WINESYNC] d3dx9: Merge the d3dx9_effect_GetDesc() helper.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4b85165cdc297f97a3609cfab2d64d87e435397e by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
280deff8df [WINESYNC] d3dx9: Merge the stub ID3DXBaseEffect methods.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 715b932768d1f34815c6b0db18554e0d734bbec6 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
da833f59a6 [WINESYNC] d3dx9: Rename the ID3DXEffect object and methods.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 612196b64c6b17d694831b92e7182afe9b2d9aca by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
0a939c57a8 [WINESYNC] d3dx9: Simplify get_parameter_by_name().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4a9fe7a8a092095420532ae734ebce9978b1e608 by Matteo Bruni <mbruni@codeweavers.com>
2021-02-04 16:37:01 +01:00
winesync
25cd02e501 [WINESYNC] d3dx9/tests: Avoid using the comma operator (coccinellery).
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eb0eaf7027797c6a99b4b5ecdb70c5ba336dccc2 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
winesync
393ec322ef [WINESYNC] d3dx9: Remove redundant "not NULL" checks (coccinellery).
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id be30aab1e21e5b6811470a351ec0d6100e6e7687 by Michael Stefaniuc <mstefani@winehq.org>
2021-02-04 16:37:01 +01:00
Jérôme Gardou
6760065ef2 [D3DX9_xx] Reduce diff to wine 2021-02-04 16:37:01 +01:00
Jérôme Gardou
ad65e645dc [SDK/WINE] Add debugstr_a in wine/test.h 2021-02-04 16:37:01 +01:00
Jérôme Gardou
fa56912d42 [SPEC2DEF] Allow stubs with parameters, and assume stdcall in that case 2021-02-04 16:37:01 +01:00
Jérôme Gardou
86a0852ffb [SDK/CRT] Provide inline implementation of log2 2021-02-04 16:37:01 +01:00
Jérôme Gardou
edca86dadb [D3DX9_XX] Use a common header for every file 2021-02-04 16:37:01 +01:00
Jérôme Gardou
17fc441b38 [WINESYNC] Add missing file to d3dx9 configuration 2021-02-04 16:37:01 +01:00
Jérôme Gardou
7b1049c8fd [WINESYNC]: revert wine-staging patchset for d3dx9 2021-02-04 16:37:01 +01:00
Jérôme Gardou
79d15a1f37 [WINESYNC] Fix for older versions of PyYAML 2021-02-04 16:37:00 +01:00
Václav Zouzalík
f83c907902 [THEMES] Fix Lunar theme 2021-02-04 13:53:49 +01:00
Nikolay Burshtyn
87a76a3b53 [CDROM_NEW][DISK_NEW] Add Russian translation (#3427) 2021-02-04 14:14:33 +03:00
Hervé Poussineau
90f9666308 [FREELDR] In PXE, do not cache the current file
We can already restart reading the whole file if seeking backward,
and there is currently no more use case of backward seek.

By doing so, we gain 1MB of memory when using PXE.
2021-02-04 11:15:47 +01:00
Hervé Poussineau
ebb7088b02 [CMAKE] Remove unused variables _ELF_
This is not used anymore since r55855 (818418643e)
2021-02-04 11:14:59 +01:00
Jérôme Gardou
d52f937120 [KMTESTS:NTOS_MM] Purge & flush cache when there is a data section object.
Those purge & flush the mapped sections too. That's what fastfat_new & other FS drivers do.
2021-02-04 10:50:59 +01:00
Victor Perevertkin
111e40039e Revert "[CMD_WINETEST] Disable the test until fastfat_new is landed"
This reverts commit 8da0f868c5.
2021-02-03 23:50:55 +03:00
Jérôme Gardou
6f2b94c023 [NTOS:MM] Wake up the balancer as soon as we are low on page.
Fixes installing on a system with 64MB of RAM, if you feel like it.
2021-02-03 13:42:39 +01:00
Jérôme Gardou
cc9607e94e [NTOS:CC] Fix use of uninitialized variable 2021-02-03 13:35:17 +01:00
Jérôme Gardou
b0c143c710 [NTOS:MM][NTOS:CC][FASTFAT][FASTFAT_NEW] Massive overhaul
- Make Cc be a client of Mm
   - Cc now creates a section object for each Shared cache map it creates
   - Some functions where introduced into Mm in order to let Cc make notice of dirtified pages, file flushes & purges, etc.
 - Make Mm the real master of how pages are kept in memory for mapped files (including cached files)
   - Keep track of dirty pages
   - Do not dismiss pages as soon as section object are closed
 - Fine tune the balancer to account for this changes (far from perfect yet)
 - Those changes are incompatbile with fastfat -> enable fastfat_new
   - Make Cc routines compatible with it, esp. regarding file locking, write-behind, etc.
2021-02-03 10:29:45 +01:00
Jérôme Gardou
0699dcb50c [NTOS:EX] Restore sysinfo 2021-02-03 10:29:28 +01:00
Jérôme Gardou
14077e3f4e [NTOS:MM] Simplify a check 2021-02-03 09:41:24 +01:00
Jérôme Gardou
b7eb0fddf3 Address PR review 2021-02-03 09:41:24 +01:00
Jérôme Gardou
c0bf352069 [NTOS:MM] Fix regression of MmCanFileBeTruncated 2021-02-03 09:41:24 +01:00
Jérôme Gardou
7f7abc9838 [NTOS:MM] Simplify code & fix MSVC x64 build 2021-02-03 09:41:23 +01:00
Jérôme Gardou
2ba1926037 [NTOS:MM][NTOS:CC] Performance improvement again
Read files by 64kb chunks instead of page-sized chunks.
2021-02-03 09:41:23 +01:00
Jérôme Gardou
625f273361 [NTOS:MM] More fine-tuning of the memory balancer 2021-02-03 09:41:23 +01:00
Jérôme Gardou
41475dfcd7 [NTOS:CC] Performance improvements
Do not ditch the pages as soon as the section are unmapped
Improve MmBalancer "algorithm" (or whatever you call that)
Various needed fixes to get this going.
2021-02-03 09:41:23 +01:00
Jérôme Gardou
7fbf90d6fd [NTOS:CC] Fix a bug 2021-02-03 09:41:23 +01:00
Jérôme Gardou
ea354c4bc7 [NTOS:MM] Unconditionally purge cache on image section creation. 2021-02-03 09:41:23 +01:00
Jérôme Gardou
c1c51e31e4 [NTOS:MM] Keep a ref on the segment when mapping a page & keep trace of what is the highest offset mapped. 2021-02-03 09:41:23 +01:00
Jérôme Gardou
91a4e62376 [NTOS:MM] Improve MmCanFileBeTruncated 2021-02-03 09:41:23 +01:00
Jérôme Gardou
3e43aa1305 [NTOS:MM] Use 64-bit integer to count references on segments 2021-02-03 09:41:23 +01:00
Jérôme Gardou
cc6bc02b91 [NTOS:CC] Make sure to purge the Mm side in CcPurgeCacheSection 2021-02-03 09:41:23 +01:00
Jérôme Gardou
d0bf98663b [NTOS:CC] Be sure to flush the whole file in CcFlushCache 2021-02-03 09:41:23 +01:00
Jérôme Gardou
90c6a65efe [NTOS:MM] Introduce MmPurgeSegment & MmFlushSegment
Those will back CcFlushCache and CcPurgeCache.
2021-02-03 09:41:23 +01:00
Jérôme Gardou
8a8b4db447 [NTOS:MM] Make the page LRU list a real LRU list.
Also, implement flushing mapped sections to disk on shutdown.
2021-02-03 09:41:23 +01:00
Jérôme Gardou
bde2ee571a [NTOS:FSRTL] Properly leave FsRtl when returning STATUS_CANT_WAIT 2021-02-03 09:41:23 +01:00
Jérôme Gardou
3efc5b1734 [NTOS:MM] Fix unlocking on failure path 2021-02-03 09:41:23 +01:00
Jérôme Gardou
d23dbdda4c [NTOS:MM] Remove unused field 2021-02-03 09:41:23 +01:00
Jérôme Gardou
f201b8af78 [NTOS:MM] Do not acquire Pfn lock in MmGetRmapListHead
All callers already hold it
2021-02-03 09:41:23 +01:00
Jérôme Gardou
727e73f253 |NTOS:MM] Simplify some code 2021-02-03 09:41:23 +01:00
Jérôme Gardou
48e1c8593f [NTOS:PO] Flush dirty pages after flushing volumes 2021-02-03 09:41:23 +01:00
Jérôme Gardou
5949d5095d [NTOS:CC][NTOS:MM] Try respecting ValidDataLength 2021-02-03 09:41:23 +01:00
Jérôme Gardou
bdb73edab7 [NTOS:CC] Flush the whole VACB
Let Mm know what it has to do.
2021-02-03 09:41:23 +01:00
Jérôme Gardou
804f5a41ed [NTOS:CC] Improve trace messages 2021-02-03 09:41:23 +01:00
Jérôme Gardou
20fe42c9e9 [NTOS:CC] Simplify CcFlushCache implementation 2021-02-03 09:41:23 +01:00
Jérôme Gardou
9b6240ee03 [NTOS:CC] Get rid of ROS_VACB:Valid 2021-02-03 09:41:23 +01:00
Jérôme Gardou
e46f1a9af3 [NTOS:MM] Disable APC while performing Paged Read 2021-02-03 09:41:23 +01:00
Jérôme Gardou
02167f2fb3 [NTOS:CC] Properly return the public BCBs 2021-02-03 09:41:23 +01:00
Jérôme Gardou
33cde28312 [NTOS:CC] Simplify CcRosDeleteFileCache 2021-02-03 09:41:23 +01:00
Jérôme Gardou
a9193b5cc2 [NTOS:CC] Remove dead code 2021-02-03 09:41:23 +01:00
Jérôme Gardou
8ed15a49a7 [NTOS:MM] Fix a race 2021-02-03 09:41:23 +01:00
Jérôme Gardou
11eee4eeec [NTOS:MM] Check that we don't add rmap for NULL process 2021-02-03 09:41:23 +01:00
Jérôme Gardou
caf89b9582 [NTOS:MM] Fix a race condition when unmapping sections views 2021-02-03 09:41:23 +01:00
Jérôme Gardou
57ee31ee33 [NTOS:CC] Perform sanity checks before doing anything else 2021-02-03 09:41:23 +01:00
Jérôme Gardou
cff3c399c6 [NTOS:MM] Fix input validation/correction in MmMapViewInSystemSpace 2021-02-03 09:41:23 +01:00
Jérôme Gardou
8287a098b9 [NTOS:CC] Fix potnetial use-after-free 2021-02-03 09:41:23 +01:00
Jérôme Gardou
358d06c47c [NTOS:CC] Always honor WriteThrough parameter in CcUnpinRepinnedBcb 2021-02-03 09:41:23 +01:00
Jérôme Gardou
1505abbc09 [NTOS:CC] Do not write behind concurrently the same file 2021-02-03 09:41:23 +01:00
Jérôme Gardou
347a4f146b [NTOS] Loop again and again until the whole cache is empty when sutting down 2021-02-03 09:41:23 +01:00
Jérôme Gardou
addf824d87 [NTOS:MM] Keep image maps & file maps coherent at the time of creating the image map 2021-02-03 09:41:23 +01:00
Jérôme Gardou
543112008a Fix physical memory section creation 2021-02-03 09:41:22 +01:00
Jérôme Gardou
91f6fa0259 Disable CcScheduleReadAhead call 2021-02-03 09:41:22 +01:00
Jérôme Gardou
6d97d8d2e1 [NTOS:CC] Fix some tests, complain where the current implementation won't let us do the right thing 2021-02-03 09:41:22 +01:00
Jérôme Gardou
674ab3dce3 [NTOS:MM] Remove a check for now 2021-02-03 09:41:22 +01:00
Jérôme Gardou
1f796267bc [NTOS:MM] Do not reference the section when mapping it.
Referencing the segment is enough.
2021-02-03 09:41:22 +01:00
Jérôme Gardou
3c2b1bf59b [NTOS:MM] Save the dirty bit when sharing a segment page 2021-02-03 09:41:22 +01:00
Jérôme Gardou
3141668724 [NTOS:MM] Various fixes.
Fix MmFlushImageSection behaviour
Remove an invalid ASSERT
2021-02-03 09:41:22 +01:00
Jérôme Gardou
30f71c7fc0 [NTOS] Zero data unconditionally after segment end, unless section is created with SEC_RESERVE
Use a SEC_RESERVE section in Cc
2021-02-03 09:41:22 +01:00
Jérôme Gardou
a52bc6d179 [NTOS:CC] Restore read-ahead behaviour in CcCopyRead 2021-02-03 09:41:22 +01:00
Jérôme Gardou
4441b1cd44 [NTOS:CC] Fix some tests for CcCopyRead and CcCopyWrite
Most importantly: raise the right status when provided an invalid buffer.
2021-02-03 09:41:22 +01:00
Jérôme Gardou
aab24ed1b1 [NTOS:MM] Have the legacy Mm be less greedy about the number of pages it wants 2021-02-03 09:41:22 +01:00
Jérôme Gardou
fb07802956 [NTOS:MM] Make the situation about dirty pages in image map a bit clearer 2021-02-03 09:41:22 +01:00
Jérôme Gardou
cd23d6e19a [NTOS:CC] Honor FO_WRITE_THROUGH flag in CcCopyWrite and fix it in CcZeroData 2021-02-03 09:41:22 +01:00
Jérôme Gardou
f8aa14ce4e [NTOS:CC] Acquire file for flush when flushing if necessary 2021-02-03 09:41:22 +01:00
Jérôme Gardou
d9f7459bb1 [NTOS:MM] Fix file object bad referencing 2021-02-03 09:41:22 +01:00
Jérôme Gardou
2d3454a809 [NTOS:IO] VFAT sucks less now 2021-02-03 09:41:22 +01:00
Jérôme Gardou
cbfc04157d [NTOS:CC] File size check fix 2021-02-03 09:41:22 +01:00
Jérôme Gardou
e39fc52d25 [NTOS/MM] Set FSRTL_MOD_WRITE_TOP_LEVEL_IRP top-level IRP when paging-out 2021-02-03 09:41:22 +01:00
Jérôme Gardou
f114209782 [NTOS/MM] Do not zero out the tail of the segment if the mapping is not an image 2021-02-03 09:41:22 +01:00
Jérôme Gardou
7d70af61e8 [NTOS:MM] Acquire file lock when creating section 2021-02-03 09:41:22 +01:00
Jérôme Gardou
76ac898bc5 [SETUPLIB] Lock the volume before writing MBR boot code 2021-02-03 09:41:22 +01:00
Jérôme Gardou
d2fa434cb7 [NTOSKRNL] Address issues raised in PR 3361 review 2021-02-03 09:41:22 +01:00
Jérôme Gardou
70c62aa2c9 [NTOS:CC] Fix Vacb size usage & check 2021-02-03 09:41:22 +01:00
Jérôme Gardou
c74cbf0c0b [NTOS/CC] Be more precise when notifying Mm about dirty pages 2021-02-03 09:41:22 +01:00
Jérôme Gardou
c295d6b229 [NTOS:CC] Fix releasing VACB when an exception is raised in CcZeroData & CcCopyWrite 2021-02-03 09:41:22 +01:00
Jérôme Gardou
7f47f03296 [NTOS:CC] Rewrite the non-cached path of CcZeroData 2021-02-03 09:41:22 +01:00
Jérôme Gardou
36e18aab35 [NTOS:CC] Remove unused functions 2021-02-03 09:41:22 +01:00
Jérôme Gardou
7dab3583cc [NTOS/MM] Force flushing when the page is dirtified in user mode 2021-02-03 09:41:22 +01:00
Jérôme Gardou
91edefa11e [NTOS:MM] Do not limit ourselves in reading or writing the file 2021-02-03 09:41:22 +01:00
Jérôme Gardou
c05f3d8d1c [FASTFAT_NEW] Enable the driver 2021-02-03 09:41:22 +01:00
Jérôme Gardou
774a4c703f [NTOS/MM] Misc fixes
Purge data section object before creating an image mapping
Zero-out the tail of the page after reading from file
Properly map page as read-only when paging-in a COW memory map.
2021-02-03 09:41:22 +01:00
Jérôme Gardou
0933337404 [NTOS/MM] Do not dirtify section pages for system-space maps
Cc does it for itself.
2021-02-03 09:41:22 +01:00
Jérôme Gardou
d440434a8e [NTOS/MM] Do not error when FS returns STATUS_END_OF_FILE for paged read.
Also remove a seemingly invalid ASSERT
2021-02-03 09:41:22 +01:00
Jérôme Gardou
b46173edaf [NTOS/MM] DO not assert when being passed invalid parameters in MmCreateSection 2021-02-03 09:41:22 +01:00
Jérôme Gardou
ba49c39041 [NTOS/MM] Assert there are no RMAP left before freeing the page 2021-02-03 09:41:22 +01:00
Jérôme Gardou
d932bdb950 [NTOS:MM] Fix locking when paging out 2021-02-03 09:41:22 +01:00
Jérôme Gardou
d8cdb89fb0 [NTOSKRNL] Overhaul Cc and Mm relationship
Previously, when creating a file section, Mm requested Cc to cache the file, then Cc would request pages from Mm, then Mm would request them back to serve its file-mapping role
Now, Mm does it all by itself. If file cahcing is requested by the FS driver, then Cc creates a file mapping and uses that to serve its purpose.

This is a rewrite of Cc
2021-02-03 09:41:22 +01:00
Jérôme Gardou
e4047d1521 [NTOS/MM] Introduce MmArePagesResident and MmMakePagesResident 2021-02-03 09:41:22 +01:00
Jérôme Gardou
f1631b44e1 [NTOS/MM] Introduce MmMapViewInSystemSpaceEx 2021-02-03 09:41:22 +01:00
Jérôme Gardou
4f6fd6c42b [NTOS/MM] Infer that the Memory Area is an image mapping from its VAD node 2021-02-03 09:41:21 +01:00
Jérôme Gardou
c3bd70cfd1 [NTOSKRNL/MM] Fix a few wine tests 2021-02-03 09:41:21 +01:00
Jérôme Gardou
4abda863ce [NTOSKRNL/MM] Reduce use of MiIsRosSectionObject 2021-02-03 09:41:21 +01:00
Jérôme Gardou
b7d988ae5b [NTOSKRNL] Get rid of MM_ROS_SECTION_OBJECT 2021-02-03 09:41:21 +01:00
Jérôme Gardou
8b98ff66ea [NTOSKRNL] Store File Object in the segment instead of Section object 2021-02-03 09:41:21 +01:00
Jérôme Gardou
e980efebd4 [NTOSKRNL] Store the MM_IMAGE_SECTION_OBJECT pointer in SECTION::Segment 2021-02-03 09:41:21 +01:00
Jérôme Gardou
c6a87f28bf [NTOSKRNL] Get rid of MEMORY_AREA::Protect
Use the VAD node instead
2021-02-03 09:41:21 +01:00
Jérôme Gardou
c9f924940a [NTOSKRNL/MM] Get rid of useless members of MEMORY_AREA struct 2021-02-03 09:41:21 +01:00
Jérôme Gardou
defbf63416 [NTOSKRNL] Use PSECTION struct where possible 2021-02-03 09:41:21 +01:00
Jérôme Gardou
462d9a0974 [NTOSKRNL] Unload the cargo: We only use tiny bits of "NEWCC" 2021-02-03 09:41:21 +01:00
Jérôme Gardou
25722e647e [NTOSKRNL] Embed a SECTION struct inside MM_ROS_SECTION_OBJECT 2021-02-03 09:41:21 +01:00
Jérôme Gardou
c3ec5d801c [NTOSKRNL] Disable more unused code 2021-02-03 09:41:21 +01:00
Jérôme Gardou
10ac04ff6e [NTOSKRNL] Get rid of ROS_SECTION_OBJECT::AllocationAttributes in favor of MM_SECTION_FLAGS 2021-02-03 09:41:21 +01:00
Jérôme Gardou
819406ac97 [NTOSKRNL] Get rid of pagefile-backed sections support in legacy Mm 2021-02-03 09:41:21 +01:00
Jérôme Gardou
7afecee5eb [NTOSKRNL] Rename MM_ROS_SECTION_OBJECT:SectionPageProtection to InitialPageProtection 2021-02-03 09:41:21 +01:00
Jérôme Gardou
54c760574b [NTOSKRNL] Rename MM_ROS_SECTION_OBJECT:MaximumSize to SizeOfSection
For consistency with the SECTION struct
2021-02-03 09:41:21 +01:00
Jérôme Gardou
073ec9b0d4 [NTOSKRNL][NDK] Get rid of SECTION_OBJECT typedef
We will use the more recent SECTION (already used in ARM3) and this will avoid confusions
2021-02-03 09:41:21 +01:00
Jérôme Gardou
9b74e5ed4f [NTOSKRNL] Do not compile unused code 2021-02-03 09:41:21 +01:00
Václav Zouzalík
6d8aafb6ce [THEMES] Update Czech (cs-CZ) translation 2021-02-03 07:05:57 +01:00
Tibor Lajos Füzi
2608f280ea [TRANSLATION] update hungarian translation of cpl/timedate, cpl/main, cpl/desk 2021-02-03 06:52:45 +01:00
Jérôme Gardou
fe5e23e470 [KMTESTS:NTOS_CC] Fix a test format 2021-02-02 10:18:52 +01:00
Jérôme Gardou
857dd4ae36 [NTOS:MM] Properly handle the 1-offset of paging files 2021-02-02 10:17:28 +01:00
Jérôme Gardou
a46ee7dafe [KMTEST:NTOS_CC] Fix buffer size calculation 2021-02-02 10:15:19 +01:00
Serge Gautherie
fa47d6f852 [CMIPCI][DOC] Fix 4 DriverVer values
And add entry to '3rd Party Files.txt'.

Addendum to 4b4d95d (r39827) and ee4368d (r58644).
2021-02-02 01:56:50 +03:00
Serge Gautherie
c2a83d56a0 [GREEN][INF] Fix format of 3 DriverVer date values
GetVersionInformationFromInfFile() expects a 10-character date.
2021-02-02 01:56:50 +03:00
George Bișoc
1903b568b6 [NTOS:SE] Implement SECURITY_TOKEN_PROXY_DATA, SECURITY_TOKEN_AUDIT_D… (#3432)
ProxyData and AuditData are pointers to an arbitrary data, which instead, they should point to their respective data structures. This serves as preparation for SepFreeProxyData and SepCopyProxyData functions implementations in the future (regarding the proxy data stuff specifically).

For further details:
https://www.vergiliusproject.com/kernels/x86/Windows%202003/SP2/_TOKEN
https://www.nirsoft.net/kernel_struct/vista/SECURITY_TOKEN_AUDIT_DATA.html
https://www.nirsoft.net/kernel_struct/vista/SECURITY_TOKEN_PROXY_DATA.html
https://www.nirsoft.net/kernel_struct/vista/PROXY_CLASS.html
2021-02-02 01:55:42 +03:00
Stanislav Motylkov
34914ca220 [INF] Fix the date in DriverVer directive for HAL
CORE-17212
2021-02-02 01:54:06 +03:00
Stanislav Motylkov
df0261e799 [SCSIPORT] Append GEN_SCSIADAPTER compatible ID for legacy adapters (#3441)
Fixes UniATA root SCSI devices detection in the Device Manager.

Based on the description of GEN_SCSIADAPTER from Windows pnpscsi.inf:
- https://community.osr.com/discussion/41967/installing-isa-scsi-miniport-driver-through-f6-on-fresh-install-of-windows-2000-problem
- https://chat.reactos.org/reactos/pl/qii1w36wu7yrxyukh9b5dzwnje
- https://chat.reactos.org/reactos/pl/f5tanc9nfjdb5m17nhrq33994a

CORE-17398
2021-02-02 01:38:06 +03:00
George Bișoc
e4dd39f1a9 [BOOTDATA] Link the Accessibility Utility Manager for LiveCD builds (#3443) 2021-02-02 01:37:37 +03:00
Joachim Henze
d0c237a6ab [SYSDM] Fix sunrise regression CORE-17451
This fixes a regression with the AlphaBlending on single left-click
on the ros logo in general tab.
That regression was introduced by
0.4.15-dev-178-g d635ce0cc0

So it can be seen as an addendum to (#2707).

We luckily did not have any affected releases yet.
2021-02-01 21:13:59 +01:00
Hervé Poussineau
bfedf9760c [FREELDR] Disable SSE instructions for GCC x64
Even if all x64 CPUs can handle SSE instructions, prevent GCC x64 to
generate them, as FreeLoader is not ready to handle them.
2021-02-01 19:57:12 +01:00
Hervé Poussineau
bbf7b5b72a [CRT/x64] Correctly implement fabs for GCC
Note that MSVC does not recognize 'fabs' as a valid label name.
See fee844b6ff and 2f7cf157d8
2021-02-01 19:57:12 +01:00
Hervé Poussineau
349e0ddde8 [PSEH] Fix test on non-existent variable, so GCC x64 now always uses native SEH instead of PSEH 2021-02-01 19:57:12 +01:00
Jérôme Gardou
158235bdd5 [NTOS:KE] Fix EIP only when the breakpoint is a break
Fixes ntdll:exception winetest crash
ROSTESTS-80
2021-02-01 16:39:39 +01:00
Joachim Henze
2a321f6e3f [SYSDM] Fix a glitch in ja-JP that was introduced by (#3442)
Remove an unintended control that was
introduced by 0.4.15-dev-1676-g 50a01ed170
2021-02-01 16:14:39 +01:00
Serge Gautherie
511134ec91 [CMIPCI] Compile it as NT5.2, not NT6.0
Addendum to ba2ab59 (r61334).
2021-02-01 09:43:31 +01:00
Jérôme Gardou
d712c895fd [RTL] Fix a typo & remove useless cast 2021-02-01 09:09:19 +01:00
Colin Finck
1509f0e536 [SYSDM] Increase label width for all languages 2021-02-01 07:32:14 +01:00
Colin Finck
50a01ed170 [SYSDM] Introduce KERNEL_VERSION_REVISION_RC and align system uptime string 2021-02-01 07:32:14 +01:00
Colin Finck
39b6643030 [SYSDM] Move IDS_DEVS to the LANG_NEUTRAL resources to deduplicate it.
It should still be updated at some point, maybe automatically, but this should serve us well for the moment.

Use UTF-8 for the deduplicated string.
2021-02-01 07:32:14 +01:00
Colin Finck
1adbae9bae [SYSDM] Restore actual fix from 9a0246ef65 2021-02-01 07:32:14 +01:00
Colin Finck
c1356e8d47 Revert "[SYSDM] Fix version string cutoff CORE-17429"
This reverts commit be2518704e.
2021-02-01 07:32:14 +01:00
Hermès Bélusca-Maïto
3405cab9dd [USETUP] Only check whether the system partition is of recognized type and if not, install FreeLdr on floppy/removable media. 2021-02-01 01:48:15 +01:00
Hermès Bélusca-Maïto
74c0a37e2f [SETUPLIB][REACTOS][USETUP] Move partition types information to its dedicated file; update MBR partition types and add GPT GUID partition types. 2021-02-01 01:48:14 +01:00
Hermès Bélusca-Maïto
8f61f5c004 [USETUP] Add partition and disk description helpers to get standardized description strings. Replace and simplify USETUP code. 2021-02-01 01:48:10 +01:00
Victor Perevertkin
8248f02ff4 [HALX86] Restore Windows compatibility on reporting device IDs
And forwarding IRPs from FDO to PDO

This along with 8aff2c9de7 reverts the commit 74b889b397
2021-01-31 05:37:27 +03:00
Joachim Henze
f91efe1502 [SYSDM] Delete 2 forgotten defines
Addendum to 0.4.15-dev-1630-g be25187 (CORE-17429)
2021-01-30 20:07:30 +01:00
Eric Kohl
86a65fccb6 [SYSSETUP] Refactor ApplyAccountSettings() and add NewAdministratorName and NewGuestName options 2021-01-30 13:52:14 +01:00
Eric Kohl
cddc57431f [INF] defltwk.inf: Reset NewGuestName to default value 2021-01-30 13:49:21 +01:00
Eric Kohl
0edaeba452 [SYSSETUP][INF] Add account settings
- Add EnableAdminAccount and EnableGuestAccount options
- Fix typo: TICKS_PER_SECOND --> TICKS_PER_MINUTE
2021-01-30 09:38:00 +01:00
Jérôme Gardou
6a4c6ea5d0 [RTL] Implement RtlTryAcquireSRWLockExclusive & RtlTryAcquireSRWLockShared 2021-01-29 18:42:54 +01:00
Jérôme Gardou
2486558ae1 [RTL] Do not mess with critical section lock when there is no reason to.
- When process is shutting down.
 - When the caller is so drunk that they leave twice the pub altough they entered it only once.
2021-01-29 18:18:09 +01:00
Jérôme Gardou
6d697561f0 [RTL] Fix heap usage flags
- Use Heap->ForceFlags where needed
 - Use passed-in flags instead of the heap flags in some places
 - Do not recursively acquire the heap lock
2021-01-29 09:42:13 +01:00
Hervé Poussineau
d74df8af74 [SDK x64] Fix MSVC x64 compilation after 5d7dd4a3b5 2021-01-29 08:36:04 +01:00
Hervé Poussineau
db35a7861f [FREELDR] Fix MSVC x64 compilation after d2f73877b7 2021-01-29 07:46:13 +01:00
Hervé Poussineau
d2f73877b7 [FREELDR/x64] Change syntax to be compatible with GAS x64 2021-01-28 23:10:01 +01:00
Hervé Poussineau
ec7d874c18 [FREELDR/x64] Merge x64 and x86 versions, to fix compilation with GAS x64
Upper bits of rcx are already checked to be 0. So, we can only take care of lower bits.
This also generates smaller code.
2021-01-28 23:10:01 +01:00
Hervé Poussineau
2a6d8465d6 [KDVBOX] Fix compilation with GAS x64 2021-01-28 23:10:01 +01:00
Hervé Poussineau
794f15e45f [NTOSKRNL] Fix link with GCC x64
KeLowerIrql/KeRaiseIrqlToDpcLevel/KfRaiseIrql are defined as FORCEINLINE in ntoskrnl/ke/amd64/irql.c
Use KxLowerIrql/KxRaiseIrqlToDpcLevel/KxRaiseIrql instead, which call their respective Ke*/Kf* counterparts.
2021-01-28 23:10:01 +01:00
Hervé Poussineau
5904361a54 [FREELDR] In PE loader, use cache to not load twice the start of the file
This is especially important in PXE boot, where a seek backwards requires reloading the file from start.
2021-01-28 20:45:44 +01:00
Hervé Poussineau
9d110db433 [NTOS:KDBG] Support KDBG on x64 2021-01-28 20:44:21 +01:00
Hervé Poussineau
457b83f76a [PSEH] When using GCC x64, use native SEH support instead of PSEH 2021-01-28 20:44:21 +01:00
Hervé Poussineau
5d7dd4a3b5 [ASM x64] Prevent having same label multiple times in ntoskrnl/ke/amd64/trap.S 2021-01-28 20:31:17 +01:00
Hervé Poussineau
c345f7f137 [ASM x64] Make UNIMPLEMENTED macro self-suffisant
This fixes link errors with MsgUnimplemented not defined on binaries not linking to CRT.
2021-01-28 20:31:16 +01:00
Hervé Poussineau
ae4ce99e00 [ASM x64] Fix usage of macro .allocstack
.allocstack only accepts one 'size' parameter."
2021-01-28 20:31:16 +01:00
Victor Perevertkin
a7cb59728d [GITHUB] Fix PATH setting for Flex and Bison 2021-01-28 06:57:33 +03:00
Victor Perevertkin
5375e33490 [CMAKE] Generate Flex and Bison files at build time
We have Flex and Bison distributed along with RosBE 2.2 so this should
not be a problem
2021-01-28 06:43:05 +03:00
Victor Perevertkin
91fceab36e [NTOS:IO][NTOS:PNP] Add PiActionAddBootDevices device action
During the boot process, it makes possible to initalize the driver's
devices right after the driver is loaded. Moreover, this way one can be
sure that all critical devices are initialized before the
IopMarkBootPartition call (because we explicitly call the driver's
AddDevice routine now, after each driver is loaded)

CORE-7826
2021-01-27 05:15:16 +03:00
Victor Perevertkin
b0c931ac91 [PARTMGR] Remove hacks as PnP manager should not send bogus IRPs anymore 2021-01-27 05:15:16 +03:00
Victor Perevertkin
d14d7e5b8c [USBHUB] Add a delay hack for USB boot
CORE-7826
2021-01-27 05:15:15 +03:00
Victor Perevertkin
6f389a35db [SETUPLIB] Add a workaround for installing from USB drives 2021-01-27 05:15:15 +03:00
Victor Perevertkin
798fc13b48 [NTOS:PNP] Implement NT5.2-like DEVICE_NODE state management
- Use DeviceNode->State field and its values, instead of
  DeviceNode->Flags for tracking current node state
- Change DNF_* flags to the ones compatible with Windows XP+
- Simplify state changes for device nodes and encapsulate all the logic
  inside the PiDevNodeStateMachine routine. This makes the ground for
  future improvements in the device removal sequence and
  resource management
- Now values inside DeviceNode->State and ->Flags are compatible with
  the windbg !devnode macro and can be tracked using it
- BUGFIX: fixed cases where IRP_MN_START_DEVICE or
  IRP_MN_QUERY_DEVICE_RELATIONS may be sent to a device after a
  IRP_MN_REMOVE_DEVICE

CORE-7826
2021-01-27 05:15:15 +03:00
Victor Perevertkin
b704292808 [NTOS:IO] Add more enumeration requests during the boot process
This is to ensure that all needed devices are initialized during the
early boot

CORE-7826
2021-01-27 05:15:15 +03:00
Victor Perevertkin
e468da06be [SETUPAPI] Set the CONFIGFLAG_FAILEDINSTALL flag in SetupDiInstallDevice
The code follows the comment now. The fix may be wrong, but DNF_DISABLED
is a kernel flag and should definitely not be used in a dll.
2021-01-27 05:15:14 +03:00
Victor Perevertkin
942f2e43c1 [BOOTDATA] Don't remove critical device DB for the setup
We need the CDDB during the setup, so don't delete it for now.
The "proper" way for filling it is yet to be decided, Windows does that
from the data in txtsetup.sif file. Our final approach may be different
2021-01-27 05:15:14 +03:00
Victor Perevertkin
0b81691806 [DEVMGR] Remove no longer needed hack CORE-5643
This reverts commit f9739601b3.
2021-01-27 05:15:03 +03:00
Eric Kohl
c0caa5c0ae [SYSSETUP][INF] Add lockout setup to the security profile 2021-01-24 21:35:33 +01:00
Eric Kohl
83f3bd8bd6 [SYSSETUP][INF] Add password setup to the security profile 2021-01-24 15:28:23 +01:00
Jérôme Gardou
f63401060d [NTOS:MM] Fix compilation for amd64 port.
Addendum to 0919324772
2021-01-22 10:34:20 +01:00
Jérôme Gardou
0919324772 [NTOS:MM] Get rid of "compatibility layer" for hyper space mappings
Let's call that a bug layer instead.
2021-01-22 09:33:06 +01:00
Jérôme Gardou
57e8684bc6 [NTOS:MM] Allow "creating" a PDE in legacy Mm for foreign process 2021-01-22 09:32:36 +01:00
Jérôme Gardou
af3527d4d2 [MSVCRTEX] Do not include _CI* math functions
They are exported by msvcrt
CORE-17423
2021-01-21 09:43:43 +01:00
Joachim Henze
4e289ce0cc [SYSDM] Addendum CORE-17429
This define in resource.h is also not needed anymore.
2021-01-20 03:42:39 +01:00
Joachim Henze
9a0246ef65 [SYSDM] Improve de-DE Uptime format translation
I tried initially to use Tag(e) but that does look too
crowded with the stuff after it. Since Windows is also not
consistent with the () for singular vs plural, I did chose
always plural "Tage".
Most often people will see "0 Tage" anyway, and that fits well.
2021-01-20 03:16:07 +01:00
Joachim Henze
be2518704e [SYSDM] Fix version string cutoff CORE-17429
The version string cutoff started to happen when we switched from SVN
with its short revision number to git with the longer hashes.
0.4.7-dev-502-gc2c66af was the first git-only rev (2017-Oct-03)

This brings the dialogs layout closer to XP.
Also fixes some other truncations for specific languages.
And unifies the touched text controls sizes for all languages.

The credits have been moved to readme.txt where they are more present and
we can avoid having to groom all languages files each time we want to add
a new dev (and sysdm.cpl to grow each time). Less maintenance.

0.4.15-dev-1629-g9aa73da gcc 8.4.0 dbg RosBE2.2.1 I18N=all binary size
sysdm.cpl before: 925.696bytes  after: 705.024bytes
readme.txt still fits into a single NTFS cluster afterwards with 3702bytes
2021-01-20 02:45:44 +01:00
Hermès Bélusca-Maïto
9aa73da948 [XDK] Even the DBG_UNREFERENCED_PARAMETER() should use (void)P. Addendum to 46ca069e. 2021-01-18 22:23:24 +01:00
Victor Perevertkin
46ca069e42 [XDK] Remove UNREFERENCE_LOCAL_VARIABLE macro
Change UNREFERENCED_PARAMETER to (VOID)P to support const parameters
2021-01-19 00:15:02 +03:00
Victor Perevertkin
af0f8581ad [HDAUDBUS] Return failure from HDA_SendVerbs on a timeout
Addendum to 48b3c61b5d
2021-01-18 04:02:32 +03:00
Eric Kohl
497ca54205 [INF] Add default security settings for ReactOS Server 2021-01-17 15:12:18 +01:00
Eric Kohl
9011382e28 [SYSSETUP][INF] Add audit events setup 2021-01-17 11:46:34 +01:00
Eric Kohl
37cf6e109d [INF] Fix typos in defltwk.inf 2021-01-17 11:33:08 +01:00
Victor Perevertkin
66cf1d20f4 [SCSIPORT] Use pointer alignment for MiniPortDeviceExtension
This seems logical and some miniport drivers (uniata) actually rely on
that.

CORE-17424
2021-01-17 01:46:35 +03:00
Eric Kohl
e5c27b2fd6 [INF] Add 'Group Membership' section, missing Guest user rights and translated strings 2021-01-16 15:55:41 +01:00
Stanislav Motylkov
a5db1718cc [INF] Add Russian (ru-RU) translation to defltwk.inf
Addendum to baf9ff45.
2021-01-16 15:24:52 +03:00
Eric Kohl
baf9ff45bb [SYSETUP][INF] Add name support for account privilege setup 2021-01-16 13:18:08 +01:00
Mark Jansen
69dffed3f7 [CMAKE] Fix MSVC configuring 2021-01-15 20:43:10 +01:00
Reinhart Previano Koentjoro
9c8ed68544 [CMD] Improve Indonesian (id-ID) translation (#3417) 2021-01-12 13:14:08 +03:00
Stanislav Motylkov
f77f5a30cf [RAPPS] Fix pinned certificate issuer check 2021-01-11 19:16:16 +03:00
Alex Henrie
35f3034879 [NDK] "Reserved" member in SYSTEM_PROCESSOR_INFORMATION is "MaximumProcessors" for Windows 8+ (#3421)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2021-01-09 23:15:36 +01:00
Mark Jansen
b1bf3aae50 [CMAKE] Fix host-tools path for MSVC IDE 2021-01-08 21:12:11 +01:00
Hermès Bélusca-Maïto
1303a7dc1c [PSDK] Whoopsie... Fix "PPPARTITION_INFORMATION_GPT" typo (extra 'P'), caught by BieHDC :)
Addendum to 8a6ed591.
2021-01-08 17:12:21 +01:00
Stanislav Motylkov
795c9c439c [PARTINFO] Fix GCC build on GitHub Actions
Addendum to c087487b.
2021-01-08 16:36:48 +03:00
Hermès Bélusca-Maïto
c087487b1c [PARTINFO] Further improvements to the Partition Information Tool.
- Migrate all the IOCTL calls to NtDeviceIoControlFile() calls in
  order to know the actual returned data and Status values.

- Add support for displaying information retrieved from:
  * IOCTL_DISK_GET_DRIVE_GEOMETRY_EX ,
  * IOCTL_DISK_GET_PARTITION_INFO and IOCTL_DISK_GET_PARTITION_INFO_EX
    for "partition 0" (aka. the whole disk).

- Compactify the drive layouts after getting these from
  IOCTL_DISK_GET_DRIVE_LAYOUT(_EX).

- Fix the HexDump() when displaying a buffer whose size is not a
  multiple of 16.
2021-01-08 01:37:05 +01:00
Hermès Bélusca-Maïto
8a6ed59156 [PSDK] Add missing PPARTITION_INFORMATION_GPT, PPARTITION_INFORMATION_MBR, PPARTITION_INFORMATION_EX definitions.
Addendum to commit 7ae3d530.
2021-01-08 01:36:58 +01:00
Hervé Poussineau
0cce1348c6 [CRT/x64] Make _fpreset/_logb public, as they are exported using the .spec file 2021-01-07 21:12:11 +01:00
Hervé Poussineau
a644e7f5fd [CRT/x64] Disable MSVCRT__setjmp function, which references non-existent function __wine_setjmpex
_setjmp is already defined in sdk/lib/crt/setjmp/amd64/setjmp.s
2021-01-07 21:12:11 +01:00
Hervé Poussineau
ff7035d940 [ASM x64] Change ; by /* */ for comments
Syntax with semi-colon is not supported by gas.
2021-01-07 21:12:11 +01:00
Hervé Poussineau
4bb7bd1f50 [FRAMEDYN] Fix an x64 export (probably wrong copy/paste from x86 version) 2021-01-07 21:12:11 +01:00
Mas Ahmad Muhammad
4ca7926093 [TRANSLATION] Fix format for Indonesian translation (#3418)
- USETUP: Fix alignment on translation.
- SHELL32: Update and fix translation.
2021-01-07 18:47:10 +01:00
Joachim Henze
ab45955a5a [CMD] Consume only one line for the version header CORE-17420
Necessary because our version string got longer during 0.4.15-dev'ing.
We added the target platform.
2021-01-06 01:34:54 +01:00
Joachim Henze
1e9547e0d0 [SHELL32] Improve German (de-DE) translation 2021-01-06 00:41:45 +01:00
Joachim Henze
232c45fcd7 [WIN32SS][COMCTL32] Commit Flip_Fix_9.patch
flip_fix_9.patch fixes:
CORE-16984 " 'SPINA Thrulg' / 'SPINA Thyr' / 'Sim Thyr' have images flipped"
CORE-17194 "StretchDIBits test" isn't work correctly"
           "Output of 'Project 3 Test'"
CORE-14701 "DVDStyler 3.0.4 transparent toolbars"
CORE-14701 "DVDStyler 3.0.4 erroneously black around icons of welcome-dlg"
CORE-14671 "'Peazip' shows icons in buttons and menubar vertically flipped"
           "Double Commander shoes icons flipped in buttons, menubar, listview and the treeview"
CORE-13273 "Welcome to Lazarus" icon shows flipped
CORE-13026 "'CudaText app' icon shows flipped"

Not all of those are duplicates, although they appear to be at first glance.
It affects different controls and some of those tickets do have different 'guilty revs' than others.

The patch does consist of 3 parts:

1.) win32ss/gdi/ntgdi/dibobj.c
This one is the most clean part of it, that addresses most of the flipping issues now.

2.) The hack in comctl32.h redefining the version:
We used that in the past to appease some, but not all of the issues listed above.
But it does hide additional issues, e.g. in DvDStyler, therefore we seem to still need that appeasement even today.
Most likely it would make sense to aim to avoid this part in the future.
part 2.) was committed as first appeasement on its own already into
0.4.14-RC-24-g 198b61e
0.4.13-RC-7-g 67211fa
0.4.12-RC-5-g 8449527
0.4.11-RC-16-g b906163
0.4.10-RC-7-g f1e80fe
0.4.9-RC-34-g 9d758ae

3.) toolbar.c change
That part fixes at least the toolbar case for DvDStyler
without relying on the comctl32.h hack any longer,
but it was still not enough to completely get rid of part 2.) yet.

Many thanks to all contributors: 'I_kill_Bugs', Doug Lyons and also 'Julenuri' for testing.

The patch gave nice testbot results:
KVM:  https://reactos.org/testman/compare.php?ids=75704,75714
VBox: https://reactos.org/testman/compare.php?ids=75705,75715

and we also created a summary of manual test-results:
https://jira.reactos.org/browse/CORE-17415?focusedCommentId=126668&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-126668

If you read this comment via git blame and your goal is to get rid of the hack in comctl32.h, I would highly recommend
to redo the tests of that testing table, and if that is asked too much, then please test at least the following cases:
CORE-14701 "DVDStyler 3.0.4 transparent toolbars"
CORE-14701 "DVDStyler 3.0.4 erroneously black around icons of welcome-dlg"
           "DVDStyler 3.0.4 erroneously black/transparent within comboboxes of properties of VMGM menu"
and try to add what might be needed to fix them, and double-check again:
           "DoubleCommander optionsDlg the most complex testcase, contains flip-prone icons in treeview, listview, menubar, buttons, statics". Only some of its flipped icons were impacted by the comctl32.h change before.
2021-01-05 20:30:40 +01:00
Hervé Poussineau
5112776b2b [SDK] Fix _SEH2_GetExceptionInformation() macro in dummy SEH, to return the right structure 2021-01-05 19:24:23 +01:00
Hervé Poussineau
e581123c35 [NTOSKRNL] Correctly use SEH2 macros (fixes GCC x64 compilation) 2021-01-05 19:24:23 +01:00
Hervé Poussineau
80b1b0b294 [CRT] Fix hack for GCC x64, when CRT is linking against RosBE libstdc++ 2021-01-05 19:24:23 +01:00
David Abelenda
a4a0626f83 [KEYBOARD] Add Swiss French keyboard layout (#3408) 2021-01-05 17:48:53 +03:00
Piotr Hetnarowicz
74082ec644 [INF] Add missing Polish (pl-PL) translation to machine.inf (#3413) 2021-01-05 17:06:18 +03:00
Hervé Poussineau
31fd1ba0c6 [ACPI] Fix compilation with GCC x64 2021-01-05 14:19:45 +01:00
Hervé Poussineau
e3cbdcf2e9 [CRT] Use correct prototypes for GCC x64 2021-01-05 14:19:45 +01:00
Hervé Poussineau
de647b4155 [CRT] Remove bad define of _int128 in GCC x64 2021-01-05 14:19:45 +01:00
Hervé Poussineau
d0b46c6c43 [INCLUDE/WINE] Always define interlocked_* aliases
This was already true for MSVC and GCC x86, make it true for GCC x64.
2021-01-05 14:19:45 +01:00
Hervé Poussineau
3468e27cfe [SDK] Fix hack for GCC, so that it works on GCC x86 and GCC x64 2021-01-05 14:19:45 +01:00
Hervé Poussineau
3187e2a00b [ASM:X64] Remove XSAVE_ALIGN variable (as already done on x86) 2021-01-05 14:19:45 +01:00
Hervé Poussineau
39545c3385 [CMAKE] Use -Wno-error when compiling with GCC x64 2021-01-05 14:19:45 +01:00
Jérôme Gardou
5f3d3d7d48 [PSDK] Add more safe integer routines for LONGLONGs 2021-01-05 13:40:35 +01:00
Jérôme Gardou
c8d07514c8 [CMAKE] Fix GCC -fstack-protector usage 2021-01-05 13:38:57 +01:00
Jérôme Gardou
a853102a7b [MEDIA] Update Winesync doc 2021-01-05 11:03:13 +01:00
Jérôme Gardou
c590d6ddad [WINESYNC]: wininet is now in sync with wine-staging wine-6.0-rc1 2021-01-05 11:03:13 +01:00
winesync
208ef143d3 [WINESYNC] wininet: Replacing header fields should fail if they do not exist yet.
A lot of details are not properly covered by tests yet and were
marked with FIXME comments. The implementation was written in such
a way that it behaves identical to the old code in such situations.

wine-staging patch by Michael Müller <michael@fds-team.de>
2021-01-05 11:03:13 +01:00
winesync
aa27aac08b [WINESYNC] wininet: Strip filename if no path is set in cookie.
The order of the stored cookies doesn't match in /testC, so
be a bit less strict in the test.

wine-staging patch by Michael Müller <michael@fds-team.de>
2021-01-05 11:03:13 +01:00
winesync
ff5fa7aea4 [WINESYNC] wininet/tests: Check cookie behaviour when overriding host.
wine-staging patch by Michael Müller <michael@fds-team.de>
2021-01-05 11:03:13 +01:00
winesync
0adc3ed6ba [WINESYNC] wininet/tests: Test auth credential reusage with host override.
wine-staging patch by Michael Müller <michael@fds-team.de>
2021-01-05 11:03:13 +01:00
winesync
45c19ac584 [WINESYNC] wininet/tests: Add more tests for cookies.
wine-staging patch by Michael Müller <michael@fds-team.de>
2021-01-05 11:03:13 +01:00
winesync
e152f78aa3 [WINESYNC] wininet: Use wide-char string literals.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e88abf0dc4ae7ec6b2fd21130be09dadc478b9fc by Michael Stefaniuc <mstefani@winehq.org>
2021-01-05 11:03:13 +01:00
winesync
cde08ff2b7 [WINESYNC] wininet: Use wide-char string literals in struct initialization.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 085f3738a86e6fa0e12b3f59fa4a9ca86826bb60 by Michael Stefaniuc <mstefani@winehq.org>
2021-01-05 11:03:13 +01:00
winesync
23e96deb0b [WINESYNC] wininet: Correctly return error status from InternetSetFilePointer() stub.
Fixes Freestyle 2: Street Basketball update check failure.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 67295a7844b94ccbfce85dbee22a76f12c9f5b36 by Paul Gofman <pgofman@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
ef9a828ef8 [WINESYNC] wininet: Prevent use after free in logging.
Make logs which show values that are unmapped by cache_container_unlock_index()
go before it's called.

Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bcdb58cc7959afd5fa35ab039e6564934888b4c0 by Jan Sikorski <jsikorski@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
8bf2b3cf2c [WINESYNC] wininet: Implement INTERNET_OPTION_SECURITY_CERTIFICATE flag for InternetQueryOption.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ef88a70fa775f3e7a26d8f1618f32ee94bb9ea05 by Daniel Lehman <dlehman25@gmail.com>
2021-01-05 11:03:13 +01:00
Jérôme Gardou
81c312d3e0 [WINESYNC] Properly handle the case when the file doesn't exist on ReactOS side 2021-01-05 11:03:13 +01:00
winesync
5a47b6e97b [WINESYNC] winapi_test: Restore horizontal alignment of macro defines.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99c0ab2ea1f912ee699e307a77f26822dfef7b06 by Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
2021-01-05 11:03:13 +01:00
winesync
b89a2ee634 [WINESYNC] winapi_test: Horizontally align TEST_TYPE_SIGNED() parameter.
Signed-off-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c26d7470cc5b2dabf9c8b91d2b313eb0041bebae by Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
2021-01-05 11:03:13 +01:00
winesync
c1394ae71a [WINESYNC] wininet: Move INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT handling to helper.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a41cb33afaee0adc6fdf3b8c69b9fb545dc15a96 by Daniel Lehman <dlehman25@gmail.com>
2021-01-05 11:03:13 +01:00
winesync
94e13ca59b [WINESYNC] wininet: Handle empty expires for cookie setting.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c06e00ee6a15fd77faf66b28edac5e84ad30b550 by Jactry Zeng <jzeng@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
9982fa3c75 [WINESYNC] wininet: Get rid of user buffer in create_cookie_url().
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d2a1c906dc4979eeabe256f77a58d67290da372d by Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
2021-01-05 11:03:13 +01:00
winesync
e0e6d419c7 [WINESYNC] wininet/tests: Update for new WineHQ certificate.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ccd6b205fa99360e7437f1c5bc63e0075f8e6760 by Alexandre Julliard <julliard@winehq.org>
2021-01-05 11:03:13 +01:00
winesync
94937754ed [WINESYNC] wininet: Use stricmp() instead of _strnicmp(..., -1).
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id de5d147de8b3d9c2f65bcb6d5646320ef1d92e58 by Paul Gofman <gofmanp@gmail.com>
2021-01-05 11:03:13 +01:00
winesync
9b564981ba [WINESYNC] wininet: Use _ltow instead of sprintf for port number in InternetCreateUrl.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9fe900532eb310d114c04d15a8d0b986ec831552 by Jacek Caban <jacek@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
6d133af41e [WINESYNC] tools: Remove 0x0501 API versions forced by winapi_test.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id aa384d36429110970aa72acbc5043158de6aff03 by Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
2021-01-05 11:03:13 +01:00
winesync
82be999d2f [WINESYNC] wininet: Add stub for INTERNET_OPTION_IGNORE_OFFLINE.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48739
Signed-off-by: Roman Pišl <rpisl@seznam.cz>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6fcd1378b2516165468bcbd71263c1b18c6be491 by Roman Pišl <rpisl@seznam.cz>
2021-01-05 11:03:13 +01:00
winesync
d7743a2c91 [WINESYNC] wininet/tests: Fix test failures on Windows XP.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4c640f24c9901ccaf8706de31e22149130c57be6 by Hans Leidekker <hans@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
2ee9150c95 [WINESYNC] wininet/tests: Make a check for available data less strict.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3a22407396bfe18ef9bdab69ef192be10306142e by Hans Leidekker <hans@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
f64bdd0732 [WINESYNC] wininet/tests: Fix some test failures with Windows 10.
Windows 10 1607+ no longer validates a NULL window handle, so remove that test.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6b839a0f85236aac2cc794d5d586f1ba371866b1 by Zebediah Figura <z.figura12@gmail.com>
2021-01-05 11:03:13 +01:00
winesync
d4ceb8c619 [WINESYNC] wininet/tests: Simplify test_InternetErrorDlg().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id af9d246952b7aaf8f557ec1b85cbb4bce1245227 by Zebediah Figura <z.figura12@gmail.com>
2021-01-05 11:03:13 +01:00
winesync
4e286e01e6 [WINESYNC] wininet/tests: Don't test that the URL cache is used for persistent cookies.
This seems to be an implementation detail, which is no longer true in Windows
1709+.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4928c623dc7f3b7f2355cf61c9f97784ff2380fe by Zebediah Figura <z.figura12@gmail.com>
2021-01-05 11:03:13 +01:00
winesync
1fb556935e [WINESYNC] wininet: Don't set default gopher protocol in InternetCrackUrlW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4335be346271072f440419b9234883aef187d857 by Jacek Caban <jacek@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
9eddd0f193 [WINESYNC] wininet: Add missing schemes to url_schemes.
Fixes res URL scheme handling.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=31399
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 64cb9425da43271109bc1df8df4aa32132f257ae by Jacek Caban <jacek@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
1e7b402584 [WINESYNC] wininet: Fix the spelling of a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 84069679a407cf0b5b8d185b5d98e9afdb933c45 by Francois Gouget <fgouget@free.fr>
2021-01-05 11:03:13 +01:00
winesync
0a44ccfa80 [WINESYNC] wininet: Handle http_proxy variable entirely in Unicode.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cadad89d106186a9d0377607096a58677496ec50 by Alexandre Julliard <julliard@winehq.org>
2021-01-05 11:03:13 +01:00
winesync
5f12c8d726 [WINESYNC] wininet: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3c31cc5836026b45a40818ec874bbbcc4d6ad982 by Alexandre Julliard <julliard@winehq.org>
2021-01-05 11:03:13 +01:00
winesync
4eead52783 [WINESYNC] wininet: Import zlib inflate code.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cee281a036cf5e9017d5a25e0cbe75c2bcd2c146 by Alexandre Julliard <julliard@winehq.org>
2021-01-05 11:03:13 +01:00
winesync
33fde115eb [WINESYNC] wininet: Add support for detecting the proxy config URL.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a4357043ff9aa14f086207c239f0fc29c0a24b83 by Hans Leidekker <hans@codeweavers.com>
2021-01-05 11:03:13 +01:00
winesync
3e2348037b [WINESYNC] wininet/tests: Skip some FTP tests when no connection can be made.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 237d5636271a1a78b02a0eb7feaab7dfb9dfed57 by Sven Baars <sven.wine@gmail.com>
2021-01-05 11:03:13 +01:00
winesync
d9efda8225 [WINESYNC] wininet/tests: Fix some test failures on Windows.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8b2d3857136c50d56c706a7f880fc605b325e334 by Sven Baars <sven.wine@gmail.com>
2021-01-05 11:03:13 +01:00
Jérôme Gardou
4a3f32ff30 [WINESYNC]: revert wine-staging patchset for wininet 2021-01-05 11:03:13 +01:00
Jérôme Gardou
f997acf8e3 [WINESYNC] Add wininet entry 2021-01-05 11:03:13 +01:00
Stanislav Motylkov
8cf363feb1 [UNIATA] Fix one of INF sections that made device unrecognized
In fact, UniATA todo.txt file mentions it implicitly:
- 159.fix bug with invalid INF section under XP+    (43e2)

CORE-17398
2021-01-05 02:58:04 +03:00
Hermès Bélusca-Maïto
68182b2a52 [USETUP] Partial revert of 8b94515b for the ESCAPE key in the UpgradeRepairPage() screen.
The AsciiChar of the ESCAPE key should be 0x1B instead of zero; however
this is not the case due to the hacked keyboard layout currently being
used. This will be fixed later ...
2021-01-04 16:13:28 +01:00
Victor Perevertkin
06bff99edb [I8042PRT][RAMDISK] Fix usage of the RegistryPath in DriverEntry
We can't rely on it being zero-terminated, so ensure that it's
duplicated first before usage in RtlQueryRegistryValues
2021-01-04 17:19:12 +03:00
Victor Perevertkin
e12233daf6 [USETUP] Do not put ImagePath to the service registry entry
It is supposed to be there already
2021-01-04 16:50:33 +03:00
Victor Perevertkin
e5254974d2 [NTOS:IO] Start loading drivers from the disk only after SystemRoot is initialized
Add another PnPBootDriversInitialized variable to indicate a point where
both disk subsystem and SystemRoot symlink are initialized, and use it
in a PiCallDriverAddDevice call.
2021-01-04 16:50:33 +03:00
Victor Perevertkin
c4c0585f96 [NTOS:IO][NTOS:PNP] Implement PiCallDriverAddDevice
- Move the driver's name obtaining logic into the IopGetDriverNames
  function
- Create a new PiCallDriverAddDevice instead of PipCallDriverAddDevice
  and move it to pnpmgr/devaction.c file. Move around all its internal
  helpers too
- Support a proper Windows-compatible driver loading order for a PDO
  (lower filters, main service, upper filters, etc.)
- Set a correct Problem for the DeviceNode, in case of an error during
  driver loading
- Check the Start Type for all drivers before loading
- Do not try to load drivers during the early boot stage when there is
  no disk subsystem initialized
2021-01-04 16:50:33 +03:00
Victor Perevertkin
4c95339da0 [NTOS:IO] Refactoring of the driver initialization code (2)
- Do not hold the IopDriverLoadResource while trying to reference a
  driver object (but still acquire it when we actually need to load a
  driver)
- Change IopLoadDriver and IopInitializeDriverModule to use registry
  handle instead of a service name string and/or full registry path
- Do not try to reference a driver object inside IopLoadDriver. It's
  supposed to be done before the function call
2021-01-04 16:50:33 +03:00
Victor Perevertkin
a6a3aa0f0d [NTOS:IO] Refactor IopLoadUnloadDriver
- Split IopLoadUnloadDriver into IopLoadDriver and calling DriverUnload
- Schedule the worker for (un)loading driver in a separate routine
  (IopDoLoadUnloadDriver) this allows IopLoadDriver to be called
  separately (if we are sure that we're in the system process)
2021-01-04 16:50:32 +03:00
Victor Perevertkin
e18a32df3a [NTOS:IO] Refactoring of the driver initialization code
- Remove IopCreateDriver and put its code into IoCreateDriver and
  IopInitializeDriverModule. It's hard to extract a meaningful common
  part from it
- Refactor IopInitializeDriverModule. Extend and put the DriverName
  generation logic into it. Now this function frees the ModuleObject in
  case of failure and returns STATUS_FAILED_DRIVER_ENTRY in case of
  DriverInit failure (will be used later)
2021-01-04 16:50:32 +03:00
Victor Perevertkin
edb425d89e [CMAKE] Use consolidated registry.inf for generating SETUPREG.HIV
This way all registry data generated by add_registry_inf goes there.
SETUPREG.HIV increased by about 12KiB after that
2021-01-04 16:50:32 +03:00
Victor Perevertkin
6f0e37b042 [NTOS:PNP][NTOS:IO] Do not create a device object + node on every driver load
- Remove the usage of IopCreateDeviceNode and change it to
  PipAllocateDeviceNode where required
2021-01-04 16:50:32 +03:00
Victor Perevertkin
4f91354092 [HIVESYS] Add CDROM device class 2021-01-04 16:50:31 +03:00
Victor Perevertkin
b1c460d34e [I8042PRT] Add service registry entry for the driver 2021-01-04 16:50:31 +03:00
Victor Perevertkin
9029f51d8c [UNIATA] Reduce the stack usage in AtapiDmaInit 2021-01-04 16:43:23 +03:00
Piotr Hetnarowicz
eb5972010a [SHELL32] Improve Polish (pl-PL) translation (#3410) 2021-01-03 18:24:18 +03:00
Piotr Hetnarowicz
df7b892d97 [COMDLG32] Improve Polish (pl-PL) translation (#3411) 2021-01-03 15:54:10 +03:00
Eric Kohl
54d6fab0e1 [SAMSRV] Add 'Print Operators', 'Performance Monitor Users' and 'Performance Log Users' aliases to servers 2021-01-03 06:17:48 +01:00
Victor Perevertkin
e394a1312a [CMAKE] Replace CMAKE_AR with CMAKE_LINKER /LIB for msvc
Render the command to a variable for dealing with quotes properly

Addendum to ca1b2ada34 and b96e88894a
2021-01-03 04:06:51 +03:00
Victor Perevertkin
ca1b2ada34 [CMAKE] Replace DIVISION_SLASH unicode character with SOLIDUS
This fixes the build on some machines. In addition, replace
the hardcoded "LINK /LIB" with ${CMAKE_AR}

Addendum to b96e88894a
2021-01-03 03:46:12 +03:00
Hermès Bélusca-Maïto
0abff65a55 [USETUP] Minor improvements when initializing the console.
- Use NT values for uninitialized handle values.
- Cache the STD_INPUT_HANDLE.
- Free the console if GetConsoleScreenBufferInfo() fails in CONSOLE_Init().
2021-01-03 00:27:54 +01:00
Hermès Bélusca-Maïto
8b94515bd3 [USETUP] Fix handling of the ESCAPE key.
Its AsciiChar is not zero in Console-compatible code.
2021-01-03 00:27:50 +01:00
Eric Kohl
16532170de [SYSSETUP][INF] Add event log settings to the default security settings and apply them on setup 2021-01-02 21:18:18 +01:00
Thomas Faber
9587fe1c36 [ACPICA] Update to version 20201217. CORE-17410 2021-01-01 16:20:53 +01:00
Eric Kohl
8de143e058 [SYSSETUP] Rename defltws.inf to defltwk.inf 2021-01-01 11:14:28 +01:00
Eric Kohl
1627e44637 [INF] Rename defltws.inf to defltwk.inf 2021-01-01 11:12:36 +01:00
Eric Kohl
f1e768c070 [SAMSRV][INF] Add missing aliases and privileges
- Add the 'Backup Operators', 'Replicator', 'RemoteDesktop Users' and 'Network Configuration Operators' aliases.
- Add missing privileges for the aliases.

Happy new year 2021! :-)
2021-01-01 10:24:36 +01:00
Hermès Bélusca-Maïto
b570fac18b Happy New Year 2021 to the ReactOS Community!!
⚛️ 🍾 🥳 🎆 ☢️
2021-01-01 00:00:00 +01:00
Stanislav Motylkov
88d36c93a2 [UNIATA] Properly mark ReactOS diff from upstream
Addendum to 4b9cf2e (r71252), d14a872 (r73324), 7d65f2a (r71262), and 6c0ff7b.

CORE-11157 CORE-16078
2020-12-31 22:14:39 +03:00
Jérôme Gardou
c9f1501373 [FASTFAT_NEW] Fix callback calling convention 2020-12-31 17:14:04 +01:00
Serge Gautherie
685f15e253 [ACPI] acpi_create_registry_table(): Close the key handle, on errors (#3372)
Addendum to 44f1cf1 (r74559). CORE-12942
2020-12-31 17:42:42 +03:00
Serge Gautherie
309ed0d1fe [ACPI] AcpiRegOpenKey(): Add a missing OBJ_KERNEL_HANDLE (#3370)
CORE-10207
2020-12-31 17:42:03 +03:00
Stanislav Motylkov
0ed5db45a4 [UNIATA] Emulate SCSI INQUIRY to properly recognize Xbox DVD drives
CORE-16692
2020-12-31 15:54:42 +03:00
George Bișoc
c11d342f42 [OSK] Adjust the resource size, width and heigh properties of buttons (#3403)
For French (fr-FR) and French Canadian (fr-CA) translations.

CORE-17039
2020-12-31 01:48:34 +03:00
Tibor Lajos Füzi
82f0061ddc [TRANSLATION] Hungarian (hu-HU) translation update (#3388)
For mspaint, notepad, wordpad, cmd, cmdutils/help, appwiz, devmgr, newdev

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-12-31 01:42:34 +03:00
Erdem Ersoy
8a92b55649 [TRANSLATION] Update Turkish (tr-TR) translations of Control Panel applets (#3367) 2020-12-31 00:46:05 +03:00
Václav Zouzalík
d40f29601d [SHIMGVW] Update Czech (cs-CZ) translation (#3409)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-12-31 00:06:48 +03:00
Jérôme Gardou
8a6d653044 [CRT] Fix _onexit
Avoid calling malloc in CR initialisation code.
Have executables call msvcrt implementation, while the DLLs keep their own function tables

CORE-17362
2020-12-30 19:03:52 +01:00
Jérôme Gardou
6c6d9bee68 [CRT] Do not call atexit at process initialization
There is no guarantee that the underlying APIs are initialized at this point

CORE-17362
2020-12-30 19:03:52 +01:00
Jérôme Gardou
26863538a4 [CRT] Format source a bit.
This is horrendous.
2020-12-30 19:03:52 +01:00
Stanislav Motylkov
f234cb6e59 [NTOS:CM] Do not create ProcessorNameString value if there is no Brand String
If the CPU does support CPUID instruction but does not have the Brand String,
the legacy name detection should be performed either in CIM_Processor (WMI),
in the Processor device driver, or in the application itself.

The deleted Intel CPU name detection code can go to the WMI at some point.
In fact Windows XP and 2003 kernels do not have any strings of that kind.

This effectively reverts the hack committed 6 years ago in 7a985425 (r63798)
that was intended to workaround CORE-7952.

CORE-17413
2020-12-30 19:38:41 +03:00
Stanislav Motylkov
c57d0b7b98 [ACPI] Do not panic if ProcessorNameString does not exist
Windows does not create this value in the registry if the processor core
does not expose the Brand String. It's an optional value and existing code
accessing it already has proper NULL checks:
https://git.reactos.org/?p=reactos.git;a=blob;f=drivers/bus/acpi/buspdo.c;hb=b96e88894a4d55f5e8b94430deeb0f086151b24f#l748

This is the proper fix for regression in CORE-7952.
Addendum to 48912992 (r61666) and 4d992804 (r62642).

CORE-17413
2020-12-30 19:38:33 +03:00
Stanislav Motylkov
740beb65e6 [DXDIAG] If ProcessorNameString not found, fall back to Identifier
It also should have its own routine for detecting CPU name, add a comment.
Windows XP and 2003 does have CPU name strings in dxdiagn.dll.

CORE-17413
2020-12-30 19:38:26 +03:00
Stanislav Motylkov
e9f9f83c0a [SYSDM] If ProcessorNameString not found, fall back to Identifier
Also add a comment about CIM_Processor. CORE-17413
2020-12-30 19:38:14 +03:00
Jérôme Gardou
b96e88894a [CMAKE] Turn import libs into regular C static libs
Embed msvcrtex into libmsvcrt

Idea taken from Thomas Faber
2020-12-28 12:13:30 +01:00
Jérôme Gardou
cad583967b [GITHUB] Get LLVM latest version from chocolatey repository
Also, explicitly set target in toolchain file to help CMake getting things right.
2020-12-28 12:13:30 +01:00
Jérôme Gardou
56e56f8ecc [CMAKE] Use -fcommon when using CLang 2020-12-28 12:13:30 +01:00
Jérôme Gardou
5387a7ccb2 [SPEC2DEF] Work-around a bug in MS linker handling of extern forwarders 2020-12-28 12:13:30 +01:00
Jérôme Gardou
d53b03e676 [MSVCRT_WINETEST] Unconditionally link against oldnames 2020-12-28 12:13:30 +01:00
Jérôme Gardou
6fcd9f3184 [FTP] Always link agains oldnames 2020-12-28 12:13:30 +01:00
Victor Perevertkin
8ee88d3bd5 [NTOS:PNP] Send removal IRPs to a file system device object for mounted devices
If a DeviceObject has VPB attached, it should be treated in a special way

CORE-16106
2020-12-27 18:40:33 +03:00
Victor Perevertkin
62a4f9d42b [MOUNTMGR] Do not handle device removal notification
Do not treat target device change notification as
DEVICE_INTERFACE_CHANGE_NOTIFICATION. The notification have to be
unregistered while handling GUID_DEVICE_INTERFACE_REMOVAL, so
GUID_TARGET_DEVICE_REMOVE_COMPLETE should never be sent to mountmgr in a
normal case.

CORE-16106
2020-12-27 18:35:52 +03:00
Hermès Bélusca-Maïto
89f36bcfc8 [CONSRV] Less hardcoded magic values. 2020-12-27 00:52:01 +01:00
Hermès Bélusca-Maïto
a748350fc9 [NTOS:IO] Fail if the driver name passed to NtLoadDriver() is an empty string.
Otherwise an assertion on the driver name is hit later on.
Can be reproduced by calling NtLoadDriver with a valid UNICODE_STRING
of Length == 0.
2020-12-27 00:52:00 +01:00
Hermès Bélusca-Maïto
44511f0809 [NTOS:IO] Minor formatting only.
Making IopLoadUnloadDriver() looking similar to IopUnloadDriver().
2020-12-27 00:51:59 +01:00
Hermès Bélusca-Maïto
8be5f73255 [SAC] Fix the HeadlessInformation.PortType checks in DriverEntry(). 2020-12-27 00:51:58 +01:00
Hermès Bélusca-Maïto
5214d2fab7 [SAC] Use NULL for null pointer in last argument in HeadlessDispatch() calls. 2020-12-27 00:51:58 +01:00
Hermès Bélusca-Maïto
5dd0b32799 [FREELDR] EMS boot options: Parse NT kernel load options in a consistent manner. Addendum to d887308b.
In particular the parsing should not care about the letter case.
2020-12-27 00:51:57 +01:00
Hermès Bélusca-Maïto
fb9d8e5239 [PSDK][XDK] Add newer FILE_DEVICE_xxx DEVICE_TYPE defines. 2020-12-27 00:51:57 +01:00
Hermès Bélusca-Maïto
e8c9a73bb8 [USETUP] Free allocated memory after loading the new text-mode font from the .CAB file. 2020-12-27 00:51:56 +01:00
Hermès Bélusca-Maïto
4ab49bc276 [BLUE] IOCTL_CONSOLE_DRAW: Fix ConsoleDraw.SizeX/Y boundary checks. Always set the cursor position before possibly refreshing screen. 2020-12-27 00:51:42 +01:00
Baruch Rutman
f6de3342bf [GDI32_APITEST] Add tests for SetLayout and its effects (#3203)
As part of the efforts to fix mirroring (Right-to-left UI), this API test
should help determine what is wrong currently in how certain functions behave
when the DC is mirrored. It focuses mostly on BitBlt, StretchBlt and LPtoDP.
Inspired by PR #3109.

CORE-17298
2020-12-26 19:48:21 +03:00
Eric Kohl
7b20065211 [WIDL] Fix a deprecation message and hints on how to build a new scanner and parser 2020-12-26 14:22:43 +01:00
Eric Kohl
f9220ea444 [WIDL] Port ALLOCATE attribute support to our WIDL 2020-12-26 14:00:26 +01:00
Eric Kohl
65646a75a2 [DEVMGR] Report property changes by the device manager to the installer 2020-12-25 19:14:09 +01:00
Serge Gautherie
bb01b94f83 [SHELL32] spec: Fix SHGetAttributesFromDataObject() parameter types (#3317)
Addendum to cdb48b8. CORE-17337
2020-12-23 15:20:37 +03:00
Jérôme Gardou
b805a7dd50 [UMANDLG] Define Globals variable in only one translation unit 2020-12-22 13:15:01 +01:00
Jérôme Gardou
fab4e82647 [INCLUDE/IDL] Give implicit handles a more unique name
This avoids duplicated symbols when linking DLLs using more than one client or server stub
2020-12-22 13:14:13 +01:00
Jérôme Gardou
762f3b9d2a [CMAKE] Add missing dependencies on PSDK 2020-12-22 13:14:00 +01:00
Jérôme Gardou
988c682e8c [LIBXSLT] Fix public variable declarations when using clang-cl 2020-12-22 12:25:55 +01:00
Jérôme Gardou
bd0445dbf2 [NTOS/FSRTL] Implement FsRtlAcquireToCreateMappedSection using filter callbacks 2020-12-22 11:37:53 +01:00
Jérôme Gardou
6929451500 [KMTEST] Test what happens when CcSetFileSizes is called with data still mapped at the tail od the file 2020-12-22 11:35:30 +01:00
Jérôme Gardou
9e6866402b [FASTFAT_NEW] Fix ReactOS compiler workaround 2020-12-22 11:08:21 +01:00
Jérôme Gardou
57cf5cdc5d [FASTFAT_NEW] Tune compile options and definitions for debugging 2020-12-22 11:08:06 +01:00
Jérôme Gardou
db34250b03 [FASTFAT_NEW] Fix build 2020-12-22 11:07:54 +01:00
Jérôme Gardou
ef4c7ae978 [NTOS:IO] Validate input parameters in NtQueryDirectoryFile
It turns out this is not the job of the FS driver
2020-12-22 11:06:38 +01:00
Jérôme Gardou
1d1dba51db [NTOS:IO] Do not set Shared property of the file if we are failing in IoCheckShareAccess 2020-12-22 11:05:00 +01:00
Jérôme Gardou
115b8290cd [KMTESTS] Add more tests for CcMapData & CcPinRead
Those show the shortcomings of the current implementation in ReactOS
2020-12-22 11:03:51 +01:00
Jérôme Gardou
a6c0af2e21 [NTOS:IO] Do not pass bogus file offset to the FS in NtReadFile & NtWriteFile 2020-12-22 11:02:33 +01:00
Eric Kohl
94f01f5b64 [WINLOGON] Add hidden logon/logoff SFC notification 2020-12-21 20:42:40 +01:00
Oleg Dubinskiy
9de8787187 [REGEDIT] Display search finished messagebox when using Find Next (F3) menu item (#3371)
This repeats behaviour of Windows Regedit. CORE-17368
2020-12-21 20:48:52 +03:00
Dmitry Borisov
bc90cbbb88 [WIN32K:NTUSER] Fix gradient caption bars with low color depth (#3338)
This fixes a problem when the window title bar is dithered down
to the 16- or 256-color palette. See also commit 0705f30.
2020-12-20 23:12:30 +03:00
Dmitry Borisov
2e6c9ee1ca [USER32_APITEST] Add a test for SPI_GETGRADIENTCAPTIONS (#3338) 2020-12-20 23:12:20 +03:00
Oleg Dubinskiy
d5132f5ce3 [BROWSEUI][PSDK] Stubplement ShellTaskScheduler (#3326)
Required by MS Picture and Fax Viewer (shimgvw.dll).
Now it starts properly without replacing any other system files.

CORE-17337
2020-12-20 22:06:16 +03:00
Oleg Dubinskiy
1f5e0f3fa7 [BROWSEUI][PSDK] Stubplement UserAssist
Initial implementation of `CUserAssist` class, which contains `IUserAssist` interface.
See https://www.geoffchappell.com/studies/windows/ie/browseui/classes/userassist.htm.
Required by MS shell32.dll.

CORE-17345 CORE-17393
2020-12-20 17:32:11 +03:00
Eric Kohl
bb209e9010 [INTL] Broadcast a WM_SETTINGCHANGED message when settings have been changed. 2020-12-20 11:21:10 +01:00
Eric Kohl
497fe0a884 [INTL] Implement the selection of a property page by command line 2020-12-20 10:47:08 +01:00
Victor Perevertkin
97cf947919 [CDROM_NEW] Add the registry file to CMakeLists.txt
Addendum to 2f6abcc4c3
2020-12-19 21:41:52 +03:00
Victor Perevertkin
2f6abcc4c3 [CDROM_NEW] Add a registry file for use on livecd and setup 2020-12-19 21:24:24 +03:00
Victor Perevertkin
971cf12c9a [VBE] Enable the driver start in the registry 2020-12-19 21:00:06 +03:00
Victor Perevertkin
9bf65730ba [BOOTDATA] Enable loading of the pci.sys driver 2020-12-19 20:52:54 +03:00
Victor Perevertkin
85cb8a897d [BOOTDATA] Do not explicitly load driver libraries in txtsetup.sif
If any driver depends on them, they will be loaded automatically
2020-12-19 20:44:38 +03:00
Joachim Henze
449a341786 [WIN32SS] Trim EOL white-space
Addendum to 0.4.15-dev-1457-g 870aa1254f
2020-12-19 17:51:37 +01:00
Joachim Henze
870aa1254f [WIN32SS] Fix BSOD 0x1E nullptr deref via Git-bash CORE-16586
Thanks to the patches author Doug Lyons!
2020-12-19 17:47:33 +01:00
Joachim Henze
889eab78ca [CDFS] Fix a macro-copy-paste and shrink the binary size CORE-17405 2020-12-18 04:48:31 +01:00
Joachim Henze
b0d136ffcf [RTL] Fix build on MSVC bots part 2
Then stick with your stupid PCH on master already.
Addendum to 0.4.15-dev-1453-g 4ad7b6d
2020-12-17 15:01:50 +01:00
Joachim Henze
dd3c540928 [RDBSSLIB][RTL] Fix build on MSVC bots
Addendum to 0.4.15-dev-1453-g 4ad7b6d
Looks like CMake on master does not longer understand the syntax of
replace_compile_flags().
Will investigate that later again, when other issues have been
solved that do currently prevent me from testing that locally at all.
Most likely remove_target_compile_option() has to be used instead now.
2020-12-17 14:33:26 +01:00
Joachim Henze
4ad7b6d634 [APISETS][RDBSSLIB][RTL] Fix some build issues for MSVC Rls-config CORE-17402
A subset of the patch that is intended to fix all build issues in releases/0.4.14
for compiler MSVC 2010SP1 16.0.40219.1 with RosBE 2.1.6
I left out the changes for disk_new in master because the drivers sources
were replaced since the branching.

Thanks to Mark Jansen for providing the apisets part.

VBox https://reactos.org/testman/compare.php?ids=75522,75524
KVM https://reactos.org/testman/compare.php?ids=75521,75523
2020-12-17 13:31:43 +01:00
Victor Perevertkin
784725143e [KMTESTS:IO] Remove ReactOS-specific workaround in IoVolume test
ReactOS is now more compatible, and names volume devices as
"\Device\HarddiskVolume%u"
2020-12-16 01:25:08 +03:00
Victor Perevertkin
8da0f868c5 [CMD_WINETEST] Disable the test until fastfat_new is landed 2020-12-16 01:15:00 +03:00
Victor Perevertkin
f9f5a78715 [MOUNTMGR] Fix bugs in MountMgrQueryDosVolumePath
- Do not access uninitialized SymlinkInformation on failure case
  and just return
- Do not make an assumption that MOUNTMGR_TARGET_NAME has a zero-string
2020-12-16 01:13:57 +03:00
Jérôme Gardou
96ae15ac4b [NTOS:MM] Fix more 64 bit arithmetics 2020-12-15 10:08:25 +01:00
Victor Perevertkin
6bab72f69a [CMAKE] Fix RUNTIME_CHECKS dependent option
Addendum to 92dfec219d and a2a6038e56
2020-12-14 21:09:14 +03:00
Jérôme Gardou
abcbd44641 [NTOS:MM] Fix passing section size to MiCreatePagingFileMap & fix maximum size check
Also return the right status instead of stupidly asserting when failing to allocate memory.
2020-12-14 18:22:18 +01:00
Jérôme Gardou
cb196d1e39 [APITESTS] Do not compile SEH tests in when using dummy PSEH 2020-12-14 18:22:07 +01:00
Jérôme Gardou
003ad0ec07 [PSDK] define __analysis_noreturn for clang static analyzer 2020-12-14 18:22:07 +01:00
Eric Kohl
f095ff418b [SCSIPORT] Append the missing "SCSI <device type> Device" string to the device description 2020-12-13 16:24:58 +01:00
Eric Kohl
b71df06211 [INF] Include volume.inf in the build 2020-12-13 01:22:52 +01:00
Eric Kohl
fb500b884a [INF] Add an inf file for the volume device class 2020-12-13 01:21:22 +01:00
Eric Kohl
afbff37d98 [STORPROP] Add missing property provider stubs 2020-12-12 16:42:15 +01:00
Eric Kohl
e64984cabb [SCSIPORT] Trim the Device ID and the Device Description
- Extend CopyField to support a default character and trimming.
- Use CopyField instead of CopyFieldTruncate.

CORE-17396
2020-12-12 12:46:11 +01:00
Eric Kohl
8ba87f972d [SCSIPORT] Fix the hardware IDs and remove the superfluous one 2020-12-10 23:25:06 +01:00
Eric Kohl
5099f24373 [SCSIPORT] Add the enumerator (SCSI) to the Compatible IDs 2020-12-09 23:58:12 +01:00
Jérôme Gardou
8631e75837 [NTOS:CC] Acquire the master lock after freeing the VACB in CcRosFlushDirtyPages
Fixes a random ASSERT
2020-12-09 18:06:42 +01:00
Jérôme Gardou
b089903520 [SCSIPORT] Addendum to 58ad5d9e02 2020-12-09 12:40:51 +01:00
Jérôme Gardou
58ad5d9e02 [SCSIPORT] Fix locking the device extension.
From MSDN:
It is an error to call KeReleaseSpinLockFromDpcLevel if the specified spin lock was acquired by calling KeAcquireSpinLock because the caller's original IRQL is not restored, which can cause deadlocks or fatal page faults.
2020-12-09 12:24:23 +01:00
Jérôme Gardou
484e959c29 [USER32] Properly save EBX in the wndproc wrapper 2020-12-09 10:00:35 +01:00
Jérôme Gardou
3d4cf8d2d8 [NTOS/FSRTL] Fix MCB tests
- Fix behaviour when adding or removing entries in the middle of an existing run
 - Do not touch output parameters when failing, caller might rely on this.
2020-12-08 11:48:00 +01:00
Jérôme Gardou
b4debdcf4d [KMTEST:FSRTL] Add more tests for MCB API
These were obtained through debug prints of fastfat_new in ReactOS.
2020-12-08 11:48:00 +01:00
Jérôme Gardou
7bbfde2b49 [KMTESTS] Add more tests for CcCopyRead 2020-12-08 11:48:00 +01:00
Jérôme Gardou
08cf040dd5 [KMTESTS] Add more tests for CcCopyWrite 2020-12-08 11:48:00 +01:00
Victor Perevertkin
016dc28793 [NTOS:CONFIG] Release the lock in a failure case in CmLoadKey
This is a workaround, the real issue is still not resolved
CORE-17263
2020-12-08 13:44:27 +03:00
Victor Perevertkin
da1f4ed6af [SCSIPORT] Fix setting the "Driver" field in the DeviceMap\Scsi registry key 2020-12-08 01:32:15 +03:00
Eric Kohl
d9e20ae3fe Implement the StorageCoInstaller and configure it for CD-ROM and Disk devices
This sets the friendly name for CD-ROM and Disk devices.
2020-12-07 23:17:29 +01:00
Hermès Bélusca-Maïto
3d980c4a2c [NTOS:FSTUB] Addendum to 29615fee and 8d2fe541: Further remove useless casts.
Also, fix the MBR checksum calculation (missing ~CheckSum + 1), to fix
the calculation in accordance with how MS calculates the MBR checksums
(and what we do as well in
https://github.com/reactos/reactos/blob/master/base/setup/lib/utils/partlist.c#L1581
https://github.com/reactos/reactos/blob/master/boot/freeldr/freeldr/arch/i386/hwdisk.c#L291
).
2020-12-07 22:52:42 +01:00
Hermès Bélusca-Maïto
fd053237cb [NTOS:FSTUB] Minor formatting; put the PAGED_CODE() macros in evidence (instead of being lost in the declarations). 2020-12-07 22:51:15 +01:00
Victor Perevertkin
29615feeb6 [FSTUB] Fix bugs from 8d2fe54188
The buffer is now PUCHAR or PVOID everywhere
2020-12-07 19:50:51 +03:00
Victor Perevertkin
8d2fe54188 [FSTUB] Fix out of bounds access in IoReadDiskSignature
- Convert PARTITION_TABLE_OFFSET to the number of bytes instead of
  (number of bytes) / 2. This avoids many confusing casts
- Use a cache aligned buffer for MBR
2020-12-07 14:43:34 +03:00
Jérôme Gardou
5d4ece342c [CMAKE] Add a NO_REACTOS_BUILDNO option
This allows to not generate buildno.h and version.h after each commit and trigger the relinking of the complete module list
2020-12-07 11:32:37 +01:00
Hermès Bélusca-Maïto
7ae3d530db [PSDK] Re-arrange DISK/DRIVE/PARTITION layout-related structures in ntdddisk.h and winioctl.h. Add few missing structures in winioctl.h. 2020-12-06 23:44:10 +01:00
Victor Perevertkin
39c48a4d91 [USBSTOR] Remove workarounds for old storage stack 2020-12-06 23:32:29 +03:00
Victor Perevertkin
aa05649902 [SETUPAPI] Do not use strlen on buffers which may possibly contain REG_MULTI_SZ
CORE-14187
2020-12-06 19:49:57 +03:00
Victor Perevertkin
ff13301eb2 [UMPNPMGR] Set the data type in all cases of PNP_GetDeviceRegProp
CORE-14187
2020-12-06 19:48:38 +03:00
Victor Perevertkin
2d6c6fa38d [PARTMGR] Register a disk interface for disk PDO
CORE-14187
2020-12-06 19:47:15 +03:00
Timo Kreuzer
883ae6d93b [RTL] Fix RtlImageDirectoryEntryToData to support both 32 and 64 bit images 2020-12-06 16:37:57 +01:00
Eric Kohl
cac7b003c0 Implement IRP_MN_QUERY_DEVICE_TEXT.DeviceTextLocationInformation 2020-12-06 12:42:50 +01:00
Victor Perevertkin
f722be93d5 [USBSTOR] Enable USB (ATAPI) cdroms
With the cdrom_new driver, they now work

CORE-16112
2020-12-06 02:08:32 +03:00
Victor Perevertkin
cbe88e287f [USBSTOR][SCSIPORT] Use STORAGE_ADAPTER_DESCRIPTOR from WIN8
This way, these drivers are more compatible with classpnp and cdrom used
by ReactOS (and don't fire asserts)
2020-12-06 01:57:56 +03:00
Victor Perevertkin
139e8f5308 [BOOTDATA] Fix boot (addendum to dd56e065bc)
- GenCdRom is actually required now to be in CDDB
- Forgot to add partmgr registry keys

CORE-6264
2020-12-06 01:55:20 +03:00
Victor Perevertkin
dd56e065bc [REACTOS] Enable PnP storage stack
- Use PnP storage class drivers
- Make partmgr an upper filter driver for Disk class
- Fill upper filters in txtsetup and usetup/devinst
- Add cdrom driver to the critical device database

CORE-6264
2020-12-05 22:30:43 +03:00
Victor Perevertkin
fb155b4ea4 [SCSIPORT] Fix Sense request sending
- Pass all SRB flags which Windows scsiport passes
- Correctly reset the queue after completion

This fixes the bug when MS cdrom driver hangs after media ejection
2020-12-05 22:28:54 +03:00
Victor Perevertkin
a97c6e0aa9 [SCSIPORT] Make the driver PnP-aware
Basic functions are implemented in order to work in PnP stack,
only legacy (non-pnp) miniport drivers are supported.
Tested mostly with uniata

CORE-17132
2020-12-05 22:28:54 +03:00
Victor Perevertkin
582ca68696 [NTOS:PNP] Improve and refactor PnP notifications
- BUGFIX: do not call IoGetRelatedTargetDevice while guarded mutex is acquired
  (the function issues an APC, but they are disabled inside a critical section)
- BUGFIX: only the beginning of a structure for GUID_PNP_CUSTOM_NOTIFICATION was copied and queued.
  Just pass it as-is to a subscriber, without copying
- Don't convert event GUID to string, store and compare GUID struct itself
- Split IopNotifyPlugPlayNotification into 3 functions for each type of notification
  (less stack usage and for future changes)
- Move initialization code for notifications into a separate routine
- Use separate lists and locks for every type of notification
- Put "TargetDeviceChange" notifications into their place inside DEVICE_NODE
2020-12-05 22:25:40 +03:00
Victor Perevertkin
e3198fb644 [NTOS:PNP] Check if APCs are enabled before waiting inside IopSynchronousCall 2020-12-05 22:25:39 +03:00
Victor Perevertkin
9eafb2971f [NTOS:CONFIG] Comment out the assertion until fixed
CORE-17263
2020-12-05 22:17:08 +03:00
Victor Perevertkin
15a7b9dd2f [CLASSPNP][CDROM_NEW][DISK_NEW] Fix clang build
CORE-17129
2020-12-05 22:15:29 +03:00
Victor Perevertkin
fe1b98fc36 [CLASSPNP] Fix amd64 build
CORE-17129
2020-12-05 22:15:10 +03:00
Victor Perevertkin
eb682bbfab [DISK_NEW] Various small fixes
- Silence a (possibly wrong) assert in DiskShutdownFlush
- Fix build with GCC and MSVC amd64

CORE-17129
2020-12-05 22:14:50 +03:00
Mark Jansen
e1523dd28e [NTDLL_APITEST] Add test showing that RtlImageDirectoryEntryToData works on 32-bit and 64-bit images 2020-12-05 17:03:24 +01:00
Victor Perevertkin
99f16dc8a7 [STORAHCI] Do not put the driver onto cd
Meanwhile, fix add_registry_inf usage (it is really a driver inf)
2020-12-05 18:06:42 +03:00
Victor Perevertkin
16e5ce8fb1 [CMAKE] Use C_STANDARD property instead of command line option
Addendum to 64211aa696 and 19779b3f96
2020-12-05 15:35:06 +03:00
Jérôme Gardou
0db79d4aa9 [NTOSKRNL:FSRTL] Fix memory corruption when pruning tunnel cache 2020-12-04 16:08:14 +01:00
Jérôme Gardou
3ec3e1a7f6 [BTRFS] Fix wrong condition check 2020-12-04 15:49:39 +01:00
Hervé Poussineau
19779b3f96 [CMAKE] Our C code base is C99, so mark it as such.
This fixes 64211aa696, which mistakenly declared C11 as default.
2020-12-01 20:42:41 +01:00
Hervé Poussineau
06a6eda0a1 [DDK] Use FORCEINLINE instead of __inline, as in other DDK headers 2020-12-01 18:56:02 +01:00
Hervé Poussineau
b483be4af2 [UMPNPMGR] Remove invalid prototype of inline function
This fixes eede1b9b7a.
2020-12-01 18:51:42 +01:00
Hervé Poussineau
64211aa696 [CMAKE] Declare that we want to use C11/C++11
That way, we won't use whatever standard is the default on whatever compiler we are using.
This should also prevent using more recent features without warning.
2020-12-01 18:51:42 +01:00
Hervé Poussineau
4469ab3620 [CMAKE] Disable compression of debug sections in GCC <= 7.0
We use MSVC, Clang or GCC > 7.0 these days.
2020-12-01 18:44:53 +01:00
Riley Bell
3014417919 [SHELL32] Hide "This version of ReactOS is registered to:" text on condition (#3325)
When the system is not installed yet (e.g. LiveCD or 2nd installation stage)
there is no registered user and organization, so no need to show this text
label in the shell about dialog.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-11-30 03:12:32 +03:00
Oleg Dubinskiy
6bf7f83b2a [MSGINA] Improve exports for all stubbed functions (#3256)
Since they are completely undocumented and unlikely will be implemented in ROS,
stubbing them only in spec file seems to be a better solution than adding wrong
prototypes.

Use `stdcall -stub` instead of `stub` and enable parameters of the functions.
This allows to properly load our msgina.dll in Windows XP/2003.

Although it still doesn't boot to desktop with dll replaced, but nevertheless
the system crash that was caused by stubbed functions does no longer happen.
2020-11-28 17:32:53 +03:00
Oleg Dubinskiy
c0d2cd508f [MSGINA] Implement ShellTurnOffDialog (#3254)
Based on the following prototype: http://diendan.congdongcviet.com/threads/t13622::tim-handle-cua-cua-so-tat-may-tren-windows-nhu-the-nao.cpp?p=69284#post69284 (line 32) and return ShellShutdownDialog from it with all required parameters.
It allows to open the shutdown dialog properly from the Start menu with shell32.dll from Windows Server 2003 SP2 (when installing ReactOS as Workstation).

CORE-17313
2020-11-28 17:22:46 +03:00
Thomas Faber
828d5fa93e [NTOS:IO] Reduce stack usage in IopLoadServiceModule. CORE-17215 2020-11-27 12:44:35 +01:00
Thomas Faber
2858ff53ce [NTOS:KD] Avoid large stack buffer in KdpPrint. CORE-17215 2020-11-27 10:31:45 +01:00
Thomas Faber
ae1d272add [NTOS:PNP] Avoid recursion in IopTraverseDeviceTree(Node). CORE-17215 2020-11-27 10:31:41 +01:00
Stanislav Motylkov
5cb9f8765b [SMSS] Revert commit 131bc73
This is now fixed properly by de16ef3.
2020-11-26 13:06:20 +03:00
Stanislav Motylkov
34a634bbf6 [PARTINFO] Fix GitHub MSVC (amd64) build
Addendum to 878186b.
2020-11-26 12:22:31 +03:00
Hermès Bélusca-Maïto
878186b0c5 [ROSAPPS:PARTINFO] Implement display of IOCTL_DISK_GET_DRIVE_LAYOUT_EX info, for both MBR and GPT disks. 2020-11-26 03:33:40 +01:00
Hermès Bélusca-Maïto
118fa50269 [ROSAPPS:PARTINFO] Code formatting. 2020-11-26 03:33:37 +01:00
Hermès Bélusca-Maïto
de16ef3da0 [NDK] Add missing nop NEC definitions if not X86 (for consistency with what's done in the kernel-mode headers). Addendum to 9feab8e9. 2020-11-26 02:05:59 +01:00
Stanislav Motylkov
131bc73555 [SMSS] Fix x64 build. Addendum to a0721eb
This part is specific for x86 architecture.
2020-11-26 03:50:16 +03:00
Hermès Bélusca-Maïto
a0721ebdd3 [SMSS] Use the new IsNEC_98 macro defined for user-mode. 2020-11-26 00:29:34 +01:00
Hermès Bélusca-Maïto
9feab8e95a [NDK][XDK] Add some missing macros for run-time checks of X86 system architecture (NEC support). 2020-11-26 00:29:34 +01:00
Hermès Bélusca-Maïto
c295fb95e9 [XDK] Minor formatting; remove some extra newlines at end of files. 2020-11-26 00:29:20 +01:00
Hermès Bélusca-Maïto
a59cecd89d [SETUPLIB] Add two hacks in partlist.c for temporarily setting consistently the disk partition style.
Add two hacks in UpdateDiskLayout() and WritePartitions() so that the
disk partition style is consistently set to a known value MBR, especially
when that disk was previously new and uninitialized (RAW).
A proper fix will be developed later when support for GPT is added.
2020-11-24 04:37:52 +01:00
Hermès Bélusca-Maïto
05cd77028c [SETUPLIB][USETUP] Cleanup some code in USETUP. Redefine FormatPartition() and ChkdskPartition() helpers
so that they wrap the needed init steps for formatting/chkdsk'ing.

These helpers now accept a PPARTENTRY, together with the usual
formatting/chkdsk parameters. The helpers now determine the actual
NT path to use, and can perform the init steps on the partition
before performing the actual operation.

In particular, FormatPartition() is now made GPT-compliant. The
partition type retrieved by FileSystemToMBRPartitionType() is now
used as a hint for choosing FAT32 over FAT12/16, and only in the
case of a MBR partition that is *NOT* a recognized OEM partition,
it is used for updating the corresponding partition type. (OEM
partitions must retain their original type.)

The OEM partition types we (and NT) can recognize are specified
e.g. in the Microsoft Open-Specification [MS-DMRP] Appendix B
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dmrp/5f5043a3-9e6d-40cc-a05b-1a4a3617df32

Introduce an IsOEMPartition() macro to help checking for these types
(its name is based on the Is***Partition() macros from ntdddisk.h,
and from a dmdskmgr.dll export of similar name).
2020-11-24 03:24:41 +01:00
Hermès Bélusca-Maïto
9735a8379f [SETUPLIB] Make InferFileSystem() compatible for both MBR and GPT disks. Simplify the FSREC interface a bit.
Instead of providing an MBR partition type to InferFileSystem(), make
it call IOCTL_DISK_GET_PARTITION_INFO(_EX) to determine whether the
partition pointed by the path/handle is MBR or GPT. Then, only if it's
MBR, we retrieve its partition type in order to "guess" an adequate file
system name, in case the latter was not recognized already via regular
ways (via GetFileSystemName() / NtQueryVolumeInformationFile()).

- Remove the GetFileSystemNameByHandle() and InferFileSystemByHandle()
  functions. Instead, make the other GetFileSystemName*() and
  InferFileSystem*() functions accept a HANDLE as an alternative to the
  already-existing partition path string. These parameters are exclusive
  to each other.

- Rename SetPartitionType() -> SetMBRPartitionType(),
  and FileSystemToPartitionType() -> FileSystemToMBRPartitionType()
  in order to really clarify what they do (since this code is meant
  for MBR partitions only, not GPT ones).
2020-11-24 03:24:36 +01:00
Hermès Bélusca-Maïto
8d3e80e437 [FSLIB][FMIFS][AUTOCHK][SETUPLIB] Use more Windows-compatible (but not fully compatible yet) Format() and Chkdsk() ULIB functions.
[AUTOCHK] Add also support for scanning FATX volumes.

The Format(), FormatEx(), Chkdsk(), ChkdskEx() functions exposed by the
U*.DLL user-mode FS library dlls are different (and have different
prototypes) than the similarly-named functions exported by FMIFS.DLL .

In particular, what we used to call "xxxChkdskEx()" and "xxxFormatEx()"
in our U*.DLL libraries actually correspond more, from their arguments,
to the "Chkdsk()" and "Format()" functions in Windows' U*.DLL . Their
*Ex() counterparts instead take most of the parameters through a
structure passed by pointer.

On FMIFS.DLL side, while FMIFS!Chkdsk() calls U*.DLL!Chkdsk() and
FMIFS!ChkdskEx() calls U*.DLL!ChkdskEx() (and we do not implement these
*Ex() functions at the moment), both FMIFS!Format() and FMIFS!FormatEx()
call U*.DLL!Format() instead, while FMIFS!FormatEx2() calls
U*.DLL!FormatEx() (that we do not implement yet either) !!

To improve that, refactor the calls to these U*.DLL functions so as to
respect the more compatible prototypes: They contain the correct number
of parameters in a compatible order. However, some of the parameters do
not have the same types yet: the strings are kept here in PUNICODE_STRINGS,
while on Windows they are passed via an undocumented DSTRING struct, and
the FMIFS callback is instead a MESSAGE struct/class on Windows.
Finally, the MEDIA_TYPE parameter in U*.DLL!Format() is equivalent, yet
not fully 100% in 1-to-1 correspondence, with the FMIFS_MEDIA_FLAG used
in the corresponding FMIFS.DLL functions.

One thing to notice is that the U*.DLL!Format() (and the Ex) functions
support a BOOLEAN (a flag resp.) for telling that a backwards-compatible
FS version should be used instead of the (default) latest FS version.
This is used e.g. by the FAT FS, where by default FAT32 is selected
(depending also on other constraints like, the disk and the partition
sizes), unless that bit is set in which case, FAT16 (or 12) is used.
2020-11-22 21:57:07 +01:00
Hermès Bélusca-Maïto
cdaa5d5fc7 [BTRFSLIB] Reduce the diff with upstream, and fix a memory leak.
- Reduce the diff with upstream by aliasing malloc() and free()
  with RtlAllocateHeap() and RtlFreeHeap() respectively.

- Fix a memory leak in the failure code path of the do-while
  memory reallocation loop for IOCTL_BTRFS_QUERY_FILESYSTEMS
  in is_mounted_multi_device().
2020-11-22 21:34:13 +01:00
Hermès Bélusca-Maïto
65758cc3b4 [FMIFS] Whitespaces formatting only. 2020-11-22 21:34:04 +01:00
Hervé Poussineau
1a3c607f53 [NTOS:KD] Change the way we detect if exception if from KernelMode/UserMode
CORE-17381
2020-11-22 18:17:59 +01:00
Thomas Faber
044be0e314 [USER32_DYNAMIC_APITEST] Remove a tautological check. Spotted by clang. 2020-11-22 13:22:03 +01:00
Thomas Faber
99c02855a8 [GITHUB] Add clang-cl location to the beginning of PATH instead of the end.
Fixes build with the latest VS2019 (16.8.2).
The new version now adds Llvm\x64\bin to the PATH of the
"x64_x86 Cross Tools Commannd Prompt", so we must override this to
get x86 clang.
2020-11-22 13:21:58 +01:00
Thomas Faber
9cc1a26b70 [ACPICA] Update to version 20201113. CORE-17382 2020-11-22 11:23:25 +01:00
Tibor Lajos Füzi
07cc0b5a2b [TRANSLATION] Hungarian translation update for credui, devmgr, netid, sysdm (#3285) 2020-11-21 18:07:48 +01:00
He Yang
02c566b524 [TRANSLATION][CMD] Update zh-CN translation (partially) (#3330) 2020-11-21 18:05:22 +01:00
Aobi Chan CL
fc3ccb3948 [TRANSLATION] Improve zh-TW translation (#3218)
- Added zh-TW translation for the following modules: credui, crypt32, getuname, mapi32, themeui, shlwapi.
- Modify zh-TW translation for other files.
- Moving Traditional Chinese translation back to Zh.rc for files came from Wine (comdlg32).

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-11-21 18:03:37 +01:00
Hermès Bélusca-Maïto
e4f1b12606 Addendum to commit 3e79cb8e: Add also the official URL to the PCI IDs database. 2020-11-21 17:34:55 +01:00
Serge Gautherie
3e79cb8e6c [HALX86] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2020-11-14 03:15:02 .
Maintained by Albert Pool, Martin Mares, and other volunteers from the PCI ID Project.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-11-21 17:31:40 +01:00
Jérôme Gardou
f54c7b646c [VMAKE/WIDL] Properly fix build (try 3) 2020-11-20 19:57:48 +01:00
Jérôme Gardou
72d9471424 [CMAKE] Fix host tools dependency tracking 2020-11-20 19:57:48 +01:00
Stanislav Motylkov
059ba9b0c0 [RAPPS] Properly use FormatMessageW with WinInet message table
Addendum to fb1582d. CORE-17375 CORE-17377
2020-11-20 21:30:29 +03:00
Jérôme Gardou
8297109b95 [CMAKE/WIDL] Fix build (try 2) 2020-11-20 10:17:43 +01:00
Jérôme Gardou
acfff0919e [CMAKE/WIDL] Fix build 2020-11-20 10:12:31 +01:00
Jérôme Gardou
b587e7b32e [CMAKE/WIDL] Run widl from the source directory
This dramatically improves ccache direct hit rate as now the generated files are identical across build trees
2020-11-20 09:47:33 +01:00
Hervé Poussineau
44c6df4b27 [NTOS:KD] Correctly define previous mode when entering KDBG (addendum to 0c76bbfe98) 2020-11-17 14:23:36 +01:00
Jérôme Gardou
6488440a6a [PARTMGR] Use FORCEINLINE 2020-11-16 16:58:10 +01:00
Jérôme Gardou
02f4c755b8 [SDK] Use FORCEINLINE instead of inline 2020-11-16 16:58:10 +01:00
Jérôme Gardou
13dad0231a [NCFTP] declare DisposeWinsock as static 2020-11-16 16:58:10 +01:00
Jérôme Gardou
597660a4b7 [GITHUB] Add CLang build action 2020-11-16 16:58:10 +01:00
Jérôme Gardou
9e7071e8fb [NTOSKRNL] DO not disable optimisations when compiling with CLang 2020-11-16 16:58:10 +01:00
Jérôme Gardou
7a52db76c5 [RAPPS] Do not implicitly cast pointer to BOOL 2020-11-16 16:58:10 +01:00
Jérôme Gardou
b0abd14b03 [ATL] Declare pointer as return type for functions returning pointers 2020-11-16 16:58:10 +01:00
Jérôme Gardou
f424d52488 [EXT2FS] Use GNU89 standard when using CLang 2020-11-16 16:58:10 +01:00
Jérôme Gardou
cab3e62f0e [CDFS] Use GNU89 standard when using CLang 2020-11-16 16:58:10 +01:00
Jérôme Gardou
2c4c25e468 [MSVCRT] make some functions static 2020-11-16 16:58:10 +01:00
Jérôme Gardou
281389b7e7 [CRT] Use ASM aliases for CLang builds 2020-11-16 16:58:10 +01:00
Jérôme Gardou
567a5231d5 [NFS41_DRIVER] Use GNU89 standard when compiling with CLang. 2020-11-16 16:58:10 +01:00
Jérôme Gardou
1f8db9824e [STORAHCI] Use FORCEINLINE instead of __inline 2020-11-16 16:58:10 +01:00
Jérôme Gardou
e00922a0fe [NTOSKRNL] Link memcmp to the import lib when using CLang
CLang performs some optimisations on e.g. strcmp, but memcmp is not exported by ntoskrnl
2020-11-16 16:58:10 +01:00
Jérôme Gardou
378642eb4f [NDIS] Use FORCEINLINE instead of __inline 2020-11-16 16:58:10 +01:00
Jérôme Gardou
15c9f63b65 [MSVCRTEX] Add some floating point functions for CLang build
Clang makes optimisations requiring functions not present in msvcrt
2020-11-16 16:58:10 +01:00
Jérôme Gardou
3936c3f19e [CRT] Fix __forceinline definition for clang 2020-11-16 16:58:10 +01:00
Jérôme Gardou
f96e47db43 [CRT] Fix intrinsics definition with clang 2020-11-16 16:58:10 +01:00
Jérôme Gardou
edc1f3ca56 [CMAKE] Fix use of CLang
- Updated toolchain file
 - set GCC variable when using CLang in "GCC mode"
 - Properly retrieve GCC support libraries
 - Various flags needed to get this going
2020-11-16 16:58:10 +01:00
Hervé Poussineau
d6d5caec7c [NTOS:KD] Move some KDBG-specific variables to KDBG-specific file 2020-11-16 08:55:04 +01:00
Hervé Poussineau
0c76bbfe98 [NTOS:KD] Merge KdpReportExceptionStateChange() with kd64 version 2020-11-16 08:55:04 +01:00
Hervé Poussineau
baa47fa5e0 [NTOS:KD] Use a PCONTEXT instead of a PKTRAP_FRAME in KDBG 2020-11-16 08:55:03 +01:00
Hervé Poussineau
ba37323a62 [NTOS:KD] Move some declarations where they belong 2020-11-16 08:55:03 +01:00
Hervé Poussineau
67e9cc00b2 [NTOS:KD] Remove useless define
KdbEnterDebuggerException() is only called when KDBG is defined.
2020-11-16 08:55:03 +01:00
Hervé Poussineau
95faf65ebf [NTOS:KD] Remove useless variables/members
Those where only set and never read.
2020-11-16 08:55:03 +01:00
Hervé Poussineau
8d3a395101 [NTOS:KD] Remove Bochs port debugging
You can use serial port debugging instead.
2020-11-16 08:55:03 +01:00
Hervé Poussineau
8a62f277d8 [NTOS:KD] Remove useless implementation of BREAKPOINT_PRINT in KdSystemDebugControl
This is (as expected) handled in KdpTrap(), which also calls KdpPrint().
2020-11-16 08:55:03 +01:00
Hervé Poussineau
1eda7d7e99 [NTOS:KD] Merge KdpReportCommandStringStateChange() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
6f7835d30c [NTOS:KD] Merge KdpReportLoadSymbolsStateChange() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
e31be4ec25 [NTOS:KD] Merge KdEnableDebuggerWithLock()/KdDisableDebuggerWithLock() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
ebb6f29e69 [NTOS:KD] Merge KdEnterDebugger()/KdExitDebugger() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
81b184741d [NTOS:KD] Remove useless uses of _WINKD_ 2020-11-16 08:55:03 +01:00
Hervé Poussineau
329b9fa2fb [NTOS:KD] Merge KdpReport() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
a8662c73a5 [NTOS:KD] Merge KdpTrap() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
5730394bd0 [NTOS:KD] Merge KdpPrintString()/KdpPromptString() with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
d5fe15e5e6 [NTOS:KD] Merge KdpStub with kd64 version 2020-11-16 08:55:03 +01:00
Hervé Poussineau
c2946ced92 [NTOS:KD] Remove some now useless tests on _WINKD_ 2020-11-16 08:55:03 +01:00
Hervé Poussineau
660948ce6f [NTOS:KD] Merge some more functions with kd64
Functions are KdIsThisAKdTrap, KdUpdateDataBlock, KdEnterDebugger,
KdExitDebugger, KdRefreshDebuggerNotPresent, KdDisableDebugger,
KdEnableDebuggerWithLock, KdEnableDebugger, KdSystemDebugControl
2020-11-16 08:55:03 +01:00
Hervé Poussineau
d0e2fada23 [NTOS:KD] Rename KdpEnterDebuggerException to KdpTrap + add KdpStub forwarder
This removes somes uses of _WINKD_ macro.
2020-11-16 08:55:02 +01:00
Hervé Poussineau
4d84c856ad [NTOS:KD] Merge KdInitDebugger with kd64 version + move variable declarations to kd64/kddata.c
Remove now unused file kd/kdinit.c
2020-11-16 08:55:02 +01:00
Hervé Poussineau
777a2d94da [NTOS:KD] Import KdpCallInitRoutine() into KdDebuggerInitialize1() 2020-11-16 08:55:02 +01:00
Hervé Poussineau
9b43a3a067 [NTOS:KD] Move implementation of banner display from each debug output type to common code 2020-11-16 08:55:02 +01:00
Hervé Poussineau
6025df33a5 [NTOS:KD] Make implementation of KdInitSystem more similar with the kd64 one
Move some kd initializations into KdDebuggerInitialize0() function.
2020-11-16 08:55:02 +01:00
Hervé Poussineau
f417a53743 [NTOS:KD] Compile all kd64 files in kdbg mode 2020-11-16 08:55:02 +01:00
Hervé Poussineau
e09554a06c [NTOS:KD] Merge KdPowerTransition/KdChangeOption with kd64 version 2020-11-16 08:55:02 +01:00
Hervé Poussineau
453edbb5da [NTOS:KD] Implement empty versions of KdDebuggerInitialize0/KdSendPacket/KdReceivePacket
Move KdDebuggerInitialize1 to common code.
Add #defines to local names to prevent clashes with kdcom.dll
2020-11-16 08:55:02 +01:00
Hervé Poussineau
b18529de28 [NTOS:KD] Merge KdPollBreakIn() with kd64 version 2020-11-16 08:55:02 +01:00
Hervé Poussineau
1bee6bb8f3 [NTOS:KD] Remove invalid configuration (not _WINKD_ on amd64)
This was not working, as the file ntoskrnl/kd/amd64/kd.c was non-existent.
2020-11-16 08:55:02 +01:00
Hervé Poussineau
458f4edfd5 [NTOS:KD] Remove 'support' for Pice. It was only setting a flag. 2020-11-16 08:55:02 +01:00
Hervé Poussineau
0e391eecd1 [NTOS:KD] Remove GDB stubs
drivers/base/kdgdb/ should be used instead.
2020-11-16 08:55:02 +01:00
Hervé Poussineau
083cf05f7b [NTOS:KDBG] Remove useless file 2020-11-16 08:55:02 +01:00
Hervé Poussineau
129e009a2c [NTOS:IO] Do not translate resources of type CmResourceTypeDevicePrivate
CmResourceTypeDevicePrivate resources are created the the bus driver, for its own later use,
when children devices will receive the IRP_MN_START_DEVICE.

Do not translate them, as they have no meaning outside bus driver.
2020-11-15 18:38:37 +01:00
Hervé Poussineau
65cc802b73 [PCI] Accept a bus number range instead of a single bus number 2020-11-15 18:38:37 +01:00
Oleg Dubinskiy
6aae5f4fdd [REGEDIT] Make "finished find" messagebox owned by Regedit window (#3369)
Same behaviour as in MS Regedit.
CORE-17367
2020-11-14 19:21:10 +01:00
Serge Gautherie
b59bad8d10 [SAMSRV] SamIFree_SAMPR_USER_INFO_BUFFER: Add missing breaks. CORE-17355
Addendum to fda13e (r58742).
2020-11-14 15:23:41 +01:00
Serge Gautherie
3c4d6b0f9e [SAMSRV] SamrQueryInformationUser: Add missing break. CORE-17355
Addendum to 2f6a92c (r56820).
2020-11-14 15:22:05 +01:00
Vadim Galyant
40bb3786b6 [HALX86] Implement HalQueryAMLIIllegalIOPortAddresses case in HaliQuerySystemInformation
CORE-17359

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
Co-authored-by: Oleg Dubinskiy <oleg.dubinskij2013@yandex.ua>
2020-11-14 15:18:37 +01:00
Thomas Faber
507c442473 [NTOS:CM] Implement support for KeyValuePartialInformationAlign64. CORE-17358 2020-11-14 15:11:00 +01:00
Thomas Faber
b2cf64094c [NTDLL_APITEST] Add a test for KeyValuePartialInformationAlign64. CORE-17358 2020-11-14 15:10:59 +01:00
Serge Gautherie
33714797f4 [COMPBATT] Add a missing OBJ_KERNEL_HANDLE
CORE-10207
2020-11-14 12:03:27 +01:00
Serge Gautherie
b910409a4a [NTOS:KDBG] Add some missing OBJ_KERNEL_HANDLE
CORE-10207
2020-11-14 12:00:24 +01:00
Victor Perevertkin
4fc9467815 [PARTMGR] Disable driver startup 2020-11-13 04:13:32 +03:00
Victor Perevertkin
901c457b63 [PSDK] Add more 32 and 64-bit definitions to ntddscsi.h 2020-11-13 03:15:31 +03:00
Victor Perevertkin
bd8226afe7 [PARTMGR] Add the Partition Manager driver
This driver works as complement to disk.sys/classpnp.sys from Windows 10
Manages partition PDOs and exposes them as volumes to mountmgr.sys.
The driver is almost complete, just some minor IOCTLs missing (will be
added on demand)
2020-11-13 03:04:15 +03:00
Victor Perevertkin
bbfc515eb3 [MOUNTMGR] Volumes with NO_DRIVE_LETTER attribute should not be mounted, not the opposite 2020-11-12 19:19:27 +03:00
Victor Perevertkin
d6ef8f97e9 [NTOS:PNP] Enumerate the device tree after loading boot drivers and HAL 2020-11-10 01:59:49 +03:00
Adam Słaboń
334abba1c3 [BOOTDATA] Add an empty SystemPrefix value (#3362)
This gets "ReactOS" with Win2003 NT kernel + HAL boot a bit further.
(The "SystemPrefix" REG_DWORD value is part of license information in Win2000/XP/2003.)
2020-11-09 23:46:35 +01:00
Hermès Bélusca-Maïto
be01e6d76f [XDK] Update the definition of DEBUG_DEVICE_DESCRIPTOR and related structures with Vista,7,8,10 additions.
CORE-17360

Information from:
- https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/ntddk/ns-ntddk-debug_device_descriptor
- https://www.vergiliusproject.com
- https://codemachine.com
2020-11-09 22:33:02 +01:00
Jérôme Gardou
bf04126e02 |CMAKE] Use RULE_LAUNCH_COMPILE property to handle ccache 2020-11-09 10:47:19 +01:00
Jérôme Gardou
3acbec4851 [KDGDB] Always use kernel stack to get stack frame 2020-11-09 10:47:05 +01:00
Victor Perevertkin
f75318b606 [HALX86] Drop hacks in HalpAddDevice to work around PnP synchronization bugs
Our PnP manager handles OS boot in a synchronous manner thus we don't
need it anymore.
This effectively reverts f23e722, d974e84, 3aff101 and 4a9fcb6

CORE-5686
2020-11-09 01:28:50 +03:00
Victor Perevertkin
05a5edef12 [GITHUB] Enable amd64 artefacts and other minor changes
- Enable artefacts upload for amd64 builds
- Use environment files instead of ::set-env due to security issue
- Upgrade upload-artifact and cache packages to v2
2020-11-09 00:08:18 +03:00
Victor Perevertkin
b8525ce7a5 [MOUNTMGR] Fix ReparseFile concatenation in OnlineMountedVolumes
- ReparseFile was concatenated with itself, instead of ReparseIndex
- Meanwhile, use RtlAppendUnicodeStringToString for concatenating
  strings instead of raw memory operations
2020-11-08 23:32:25 +03:00
Timo Kreuzer
e67b62251f [NTOS:MM] Handle PXE/PPE gaps in MiDeleteVirtualAddresses 2020-11-07 20:16:41 +01:00
Timo Kreuzer
c5a700fd06 [HAL:X64] Fix/improve the BIOS interface
* Call HalInitializeBios both in phase 0 and 1
* In phase 0 allocate some physical memory, instead of using arbitrary hardcoded pages, that then end up as page tables and get filled with VESA tables
2020-11-07 18:46:20 +01:00
Timo Kreuzer
743c378ed1 [CMAKE] Add architecture to our build string
This introduces a new CMake variable WINARCH, which what Windows usually uses ("x86" instead of "i386") e.g. in sxs names.
2020-11-07 18:40:45 +01:00
Timo Kreuzer
0b0bb1a93b [SPEC2DEF] Implement support for private exports 2020-11-07 18:40:03 +01:00
Timo Kreuzer
00cfa8aac2 [WIN32K] Fix an ASSERT to ignore the upper 32 bits of a passed in GDI handle 2020-11-07 18:34:10 +01:00
Timo Kreuzer
490362cc67 [WIN32NT_APITEST] Add tests for truncated and extended handle to NtGdiDeleteObjectApp test 2020-11-07 18:34:10 +01:00
Timo Kreuzer
8df1bd612a [KERNEL32] Fix register initialization in BaseInitializeContext
Get rid of BaseThreadStartupThunk and BaseProcessStartThunk asm wrappers and go to the C functions directly (home space is allocated on the stack by the kernel)
2020-11-07 18:33:02 +01:00
Timo Kreuzer
2c2c570317 [PSAPI] Fix and simplify FindDeviceDriver
The previous version was miscalculating the buffer size on x64 (due to alignment) and always using a too small buffer.
The new version removes the size calculation entirely and uses the required size returned by NtQuerySystemInformation.
2020-11-07 17:39:42 +01:00
Jose Carlos Jesus
47a350c4db [SHELL32][SHELLEXT] Portuguese (PT) translation improvements and object adjustements (#3186)
- SHELL32: Improve Portuguese (PT) translation.
Minor objects adjustments to the text
and minor improvements to translation.

- SHELLEXT: Improve Portuguese (PT) translation to acppage rc file.
2020-11-07 17:30:36 +01:00
Jose Carlos Jesus
a012c3d507 [CMD] Add new portuguese (PT) translation (#3260) 2020-11-07 17:27:52 +01:00
Timo Kreuzer
274bc4de1c [NTOS:SE] Fix handling of relative security descriptors in SeQuerySecurityDescriptorInfo 2020-11-07 15:54:47 +01:00
Thomas Faber
dab6b26a57 [KMTESTS:HAL] Add a test for HalQueryAMLIIllegalIOPortAddresses. CORE-17359 2020-11-07 11:36:14 +01:00
Hermès Bélusca-Maïto
d829bcc629 [WINDOWSCODECS] It turns out that /wd4133 is not enough to demote the error; we need to use remove_target_compile_option() to completely remove the /we4133 flag.
Addendum to commits 7e116f0e and 00ed72d7.

This removes the "error C4133: 'function': incompatible types - from
'WICPixelFormatNumericRepresentation *' to 'DWORD *'"
message that still remains even when using /wd4133 .
2020-11-06 01:06:13 +01:00
Hermès Bélusca-Maïto
ce2c1f6321 [RAPPS.COM] Use HeapAlloc/Free instead of the deprecated LocalAlloc/Free.
And fix my build.
2020-11-06 01:06:12 +01:00
Hermès Bélusca-Maïto
ce55fef1e5 [NTOS:EX] Move the C_ASSERT UUID_CACHED_VALUES_STRUCT.GuidInit to a better place, where the structure is defined. 2020-11-06 01:06:12 +01:00
Hermès Bélusca-Maïto
3c722e35b1 [CMD][SERVMAN][SHELL32][WINSPOOL][ROSAPPS][NTOS:PNP] Fix my build. 2020-11-06 01:06:11 +01:00
Hermès Bélusca-Maïto
ec0853ba70 [SERVMAN] Fix trailing whitespace. 2020-11-06 01:06:10 +01:00
Hermès Bélusca-Maïto
f1a4a6e704 [USETUP] Introduce two helpers for formatting displayed disk and partition sizes in order to reduce code duplication. 2020-11-04 23:26:54 +01:00
Hermès Bélusca-Maïto
13dd01b44c [USETUP] Use pointers to const strings where meaningful. 2020-11-04 23:26:53 +01:00
Dmitry Borisov
4dc3125450 [PC98VID] Fix build for PC-98 target (#3352)
- Some prototypes are not needed anymore.

Addendum to 5c7ce4475e.
2020-11-05 00:26:37 +03:00
Mark Jansen
cf869e3444 [DNSAPI_APITEST] Fix null-reference in case of failure 2020-11-04 21:13:42 +01:00
Hermès Bélusca-Maïto
4792c007aa [FREELDR] Add the possibility to change the boot load options from TXTSETUP.SIF
at runtime from the boot selection menu or from FREELDR.INI.

CORE-17350, CORE-9023

For a proper override of the options by new user options, specify the
/SIFOPTIONSOVERRIDE switch in addition. Otherwise, user options are
merged with those retrieved from TXTSETUP.SIF, with priority given to
the former ones.

- Update the documentation for the 'ReactOSSetup' OS type in the
  FREELDR.INI file template.

- Use a different prompt in the custom boot options editor for the
  'ReactOSSetup' OS type, with adequate explanation.

- Get rid of the ReactOS-specific TXTSETUP.SIF 'DbgOsLoadOptions' value,
  and use instead the Windows-compatible 'SetupDebugOptions' value that
  is added to the other load options when debugging is to be enabled.
2020-11-04 19:59:28 +01:00
Hermès Bélusca-Maïto
d45b268127 [FREELDR] Fix x64 compilation warning (addendum to commit d887308b). 2020-11-04 19:59:27 +01:00
Victor Perevertkin
7c734db034 [WDF] Enable Resource and Interrupt APIs 2020-11-04 19:34:14 +03:00
Victor Perevertkin
ae72f18b55 [UNIATA] Add an inf file for UniATA Management Port 2020-11-03 23:23:35 +03:00
Victor Perevertkin
48b3c61b5d [HDAUDBUS] Add a timeout into HDA_SendVerbs
This function may stuck during device installation if there are issues
with interrupts (or with a device itself).

This fixes the boot on my testing ThinkPad x60s
2020-11-03 23:18:14 +03:00
Victor Perevertkin
da4ee18cc9 [STORPROP][CDROM_NEW][DISK_NEW] Improve disk and cdrom device installation
- Take a proper inf file for disk.sys
- Add class information into cdrom.inf
- Make a correct stub for storprop!DvdClassInstaller
2020-11-03 23:12:40 +03:00
Hermès Bélusca-Maïto
d887308b2f [FREELDR] Parse NT kernel load options in a consistent manner.
- Introduce a set of NtLdrGet(Next)Option(Ex) helpers that allow
  retrieving respectively, the "next" option in an options string,
  and retrieving a given named option in such an options string,
  by correctly parsing that string.

  Valid syntaxes:
      /OPTION1 /OPTION2/OPTION3 OPTION4 /OPTION5(=...) ...

  Options separators are slashes, or whitespace (space, tab), mandatory
  if no slash is used, and otherwise optional.

- Use these functions wherever NT load options are being parsed.

- Simplify the parsing of /DEBUGPORT=... using these functions.

- When parsing the /HAL=... or /KERNEL=... options, only the first
  encountered one is taken into account, any other ones are discarded.

- When parsing the other load options, only their first occurrences are
  taken into account, any other repetitions are discarded.
  * The NOPAE option overrides any previous PAE option.
  * Any NOEXECUTE(=) option should override any previous
    NOEXECUTE=ALWAYSOFF (or equivalently, EXECUTE) option.
2020-11-03 01:52:47 +01:00
Hermès Bélusca-Maïto
d8547a8f20 [FREELDR] In LoadReactOSSetup(), verify that our BootType is really ReactOSSetup. 2020-11-03 01:52:47 +01:00
Hermès Bélusca-Maïto
3033580c1a [FREELDR] Minor code formatting / renaming some variables. 2020-11-03 01:52:46 +01:00
Hermès Bélusca-Maïto
04b4e3b05d [FREELDR] Fix the parameter type of WinLdrSetupEms()
It's a NULL-terminated string. And thus avoid an unelegant cast.
2020-11-03 01:52:36 +01:00
Hermès Bélusca-Maïto
58866a112a [FREELDR] Remove the 'Setup' parameter of the LoadAndBootWindowsCommon() function.
This parameter is not needed since it's possible to determine, from
within this function, whether or not we are in Setup mode, by just
looking for the presence of a non NULL LoaderBlock->SetupLdrBlock.
2020-11-03 01:51:48 +01:00
Hermès Bélusca-Maïto
64ca7f6427 [FREELDR] Remove trailing whitespace. 2020-11-03 01:51:47 +01:00
Victor Perevertkin
1f377076d7 [WDF] Fix KMDF so it can compile with ReactOS SDK
Not all files are included, but these are necessary to compile cdrom driver.
So far it can only be statically linked with drivers, a proper
implementation requires wdfldr helper driver
2020-11-03 00:06:27 +03:00
Victor Perevertkin
8a978a179f [WDF] Add Windows Driver Framework files
Takern from Microsoft GitHub repo:
d9c6040fe9

Licensed under MIT
2020-11-03 00:06:26 +03:00
Victor Perevertkin
545df81502 [KMDF] Make KMDF headers compatible with our SDK and compilers 2020-11-03 00:06:25 +03:00
Victor Perevertkin
40462c924e [KMDF] Add Kernel-Mode Driver Framework headers v1.17
Taken from Microsoft GitHub repo:
d9c6040fe9

Licensed under MIT
2020-11-02 22:07:15 +03:00
Victor Perevertkin
5c7ce4475e [REACTOS] Cleanup INIT and some PAGE section allocations
- Change INIT_FUNCTION and INIT_SECTION to CODE_SEG("INIT") and DATA_SEG("INIT") respectively
- Remove INIT_FUNCTION from function prototypes
- Remove alloc_text pragma calls as they are not needed anymore
2020-11-02 21:45:31 +03:00
Victor Perevertkin
658f742c2d [NDK][CMAKE] Introduce DATA_SEG and CODE_SEG macro
These are for putting code and data to non-default sections
At the same time, move INIT section attributes declaration to cmake files
2020-11-02 21:27:06 +03:00
Victor Perevertkin
ba447018c8 [MOUNTMGR] Move the driver to drivers/storage
Effectively mountmgr.sys is an essential part of the storage stack
2020-11-01 12:35:56 +03:00
Timo Kreuzer
2c791cdde7 [CRT] Remove duplicated atexit/onexit code
This removes the broken wine version of atexit and onexit. It keeps only dllonexit, which is implemented properly. The previous __call_atexit is moved to where the mingw onexit/atexit code is and adjusts it to work with the existing code. A call to __call_atexit is added in __tmainCRTStartup after the main function was called.
2020-11-01 09:33:14 +01:00
Timo Kreuzer
d685dcee9b [CMAKE] Rename def files for import libraries on MSVC builds to *_implib.de like on GCC 2020-11-01 09:33:14 +01:00
Timo Kreuzer
935280bf14 [CRT_APITEST] Add test for atexit 2020-11-01 09:33:14 +01:00
Timo Kreuzer
17fa04f10b [NTOS:MM:X64] Fix MM_WAIT_ENTRY on x64 2020-11-01 09:32:27 +01:00
Timo Kreuzer
d4b4cf7448 [NTOS:MM] Make sure PXEs/PPEs and PDEs are always MM_EXECUTE_READWRITE
This is required since the NX protection proagates from the highest level, enforcing NX on the entire range, independent of whether lower level P*Es have the bit set or not. It might be useful to add a platform specific constant to allow making page tables NX on architectures that have a different behavior.
2020-11-01 09:32:27 +01:00
Timo Kreuzer
d55811f160 [NTOS:MM:X64] Fix session space initialization on x64 2020-11-01 09:32:27 +01:00
Timo Kreuzer
9095dbf5a5 [NTOS:MM:X64] Implement MmCreatePageFileMapping and MmDeletePageFileMapping 2020-11-01 09:32:27 +01:00
Timo Kreuzer
8980850d56 [NTOS:MM:X64] Simplify and fix x64 mapping code
- Use demand-zero-ptes in MiGetPteForProcess
- Handle NoExecute in MiSetPteProtection
- Fix MmIsPageSwapEntry
- Fix MmGetPageFileMapping
- remove obsolete functions.
2020-11-01 09:32:27 +01:00
Timo Kreuzer
0726cfce10 [NTOS:MM:X64] Handle PPEs and PXEs as well in MmInitializeProcessAddressSpace()
But don't set up the PFNs for the initial process on x64, as these have already been set up.
2020-11-01 09:32:27 +01:00
Timo Kreuzer
48d1bd2c88 [NTOS:MM:X64] On x64 allocate a VAD for the shared user page 2020-11-01 09:32:27 +01:00
Timo Kreuzer
a5d47ff72b [NTOS:MM:X64] On x64 reserve the address range between FFFF800000000000 and FFFFF68000000000 in MiInitSystemMemoryAreas() 2020-11-01 09:32:27 +01:00
Timo Kreuzer
a8ba58fbb0 [NTOS:MM:X64] Improve x64 Mm initialization
* Move MiBuildPfnDatabaseFromPageTables into MiBuildPfnDatabase
* Make sure to call MmInitializeProcessAddressSpace() from the x64 version of MiInitMachineDependent()
* Handle result of MmInitializeProcessAddressSpace in MiInitMachineDependent (Should do the same for x86)
* Remove obsolete x64 debug print
2020-11-01 09:32:27 +01:00
Serge Gautherie
81be201d98 [NTOS:CC] CcMdl*Complete(): Return if FastIO succeeded (#3303)
CORE-17342
2020-10-31 15:18:02 +01:00
Timo Kreuzer
cef57d3c44 [GDI32] Fix up GdiFixUpHandle 2020-10-31 14:24:09 +01:00
Timo Kreuzer
4048935988 [GDI32_APITEST] Add tests for truncated and extended handle to GetObject test 2020-10-31 14:24:09 +01:00
Timo Kreuzer
bdd4d5d8d8 [NTOS:KE:X64] Set the exception frame as well in KiInitializeContextThread 2020-10-31 14:23:16 +01:00
Timo Kreuzer
f66a7e2e48 [NTOS:KE:X64] Zero out the context in KiDispatchException 2020-10-31 14:23:16 +01:00
Timo Kreuzer
637183a12c [NTOS:KE:X64] Handle pending user APC on syscall exit (should be done on trap exit, too) 2020-10-31 14:23:16 +01:00
Timo Kreuzer
2a8c680dbe [NTOS:KE:X64][NTDLL:X64] Implement KiUserExceptionDispatcher and fix KiDispatchExceptionToUser 2020-10-31 14:23:16 +01:00
Timo Kreuzer
1bfacf06f7 [NTOS:KE:X64] Zero out volatiles when returning from a system call 2020-10-31 14:23:16 +01:00
Timo Kreuzer
a016ccd117 [NTOS:KE:X64][ASM:X64] Fix delivery of APCs
- Deliver pending APCs on trap exit
- Pass the trapframe of KiApcInterrupt to KiDeliverApcs, not NULL.
- Fix parameter passing from KiSwapContext to KiSwapContextInternal and KiSwapContextResume, so that the ApcBypass parameter is not uninitialized
- Fix return value of KiSwapContextResume to correctly indicate whether we want to have APCs directly delivered or not (when there are non, or when delivery is suppressed)
2020-10-31 14:23:16 +01:00
Timo Kreuzer
fdc1261fb7 [NTOS:KE:X64][NTDLL:X64] Implement x64 version of user callback code 2020-10-31 14:23:16 +01:00
Timo Kreuzer
52d1bb5ec9 [NTOS:KE:X64] Simplify KiInitializeUserApc 2020-10-31 14:23:16 +01:00
Timo Kreuzer
aaa86d078e [NTOS:KE:X64] Move KiInitializeUserApc to usercall.c 2020-10-31 14:23:16 +01:00
Timo Kreuzer
fbdff437fd [NTOS:KE:X64] Implement flushing the GDI batch 2020-10-31 14:23:16 +01:00
Timo Kreuzer
c86c55ace7 [NTOS:KE:X64] Change the logic of KeSwitchKernelStack and friends to be standards conforming
The previous version (like the x86 one) used a combination of C and asm code, called from C code to switch the stack. This is problematic, since there is no guarantee what assumptions C code makes about the stack (i.e. it can place any kind of stack pointers into registers or on the stack itself.) The new algorithm returns back to the systemcall entry point in asm, which then calls KiConvertToGuiThread, which is also asm and calls KeSwitchKernelStack ...
2020-10-31 14:23:16 +01:00
Timo Kreuzer
18b1aafd82 [NTOS:KE:X64] Improve kernel stack switching on GUI system calls
To be 100% correct and not rely on assumptions, stack switching can only be done when all previous code - starting with the syscall entry point - is pure asm code, since we can't rely on the C compiler to not use stack addresses in a way that is not transparent. Therefore the new code uses the same mechanism as for normal system calls, returning the address of the asm function KiConvertToGuiThread, which is then called like an Nt* function would be called normally. KiConvertToGuiThread then allocated a new stack, switches to it (which is now fine, since all the code is asm), frees the old stack, calls PsConvertToGuiThread (which now will not try to allocate another stack, since we already have one) and then jumps into the middle of KiSystemCallEntry64, where the system call is handled again.
Also simplify KiSystemCallEntry64 a bit by copying the first parameters into the trap frame, avoiding to allocate additional stack space for the call to KiSystemCallHandler, which now overlaps with the space that is allocated for the Nt* function.
Finally fix the locations where r10 and r11 are stored, which is TrapFrame->Rcx and TrapFrame->EFlags, based on the situation in user mode.
2020-10-31 14:23:16 +01:00
Timo Kreuzer
a6732905b8 [NTOS:KE:X64] Implement KiConvertToGuiThread, KeSwitchKernelStack and support for win32k syscalls in KiSystemCallHandler 2020-10-31 14:23:16 +01:00
Timo Kreuzer
fe6752f852 [NTOS:KE:X64] Fix bugs in KeContextToTrapFrame and KeTrapFrameToContext
Set valid EFlags, the non-volatiles need to be taken from the exception frame, because the ones from the trap frame might not be set.
2020-10-31 14:23:16 +01:00
Timo Kreuzer
a662c6f180 [NTOS:KE:X64] Silence KiRundownThread, it has nothing to do 2020-10-31 14:23:16 +01:00
Timo Kreuzer
eda01e5be7 [NTOS:KE:X64] Fix KiWriteSystemTime 2020-10-31 14:23:16 +01:00
Timo Kreuzer
7e6dce6aa1 [ASM:X64] Save GS base MSR in trap frame 2020-10-31 14:23:16 +01:00
Timo Kreuzer
8ec888487a [ASM:X64] ASSERT that interrupts are enabled, when returning to user mode 2020-10-31 14:23:16 +01:00
Timo Kreuzer
ce5aa24c50 [ASM:X64] Add initial version of kxamd64.inc, macamd64.inc 2020-10-31 14:23:16 +01:00
Timo Kreuzer
fe36f081c7 [COMPILER_APITEST] Add SEH tests from MS (#2435)
* [COMPILER_APITEST] Import MS EH/SEH tests

Taken from https://github.com/microsoft/compiler-tests

* [CRT] Add missing declaration of _longjmpex

* [COMPILER_APITEST] Add cmake build files for MS SEH test

It is built as a static library

* [COMPILER_APITEST] Fix GCC build of MS SEH tests

There are a number of hacks in there now. Also the volatile hacks should be separated and sent upstream.

* [COMPILER_APITEST] Fix x64 build of MS SEH tests

* [COMPILER_APITEST] Fix clang build of MS SEH tests

* [COMPILER_APITEST] Include MS SEH tests
2020-10-31 11:08:27 +01:00
Serge Gautherie
698a8e6554 [DOC] 3rd Party Files.txt: Add 'rdesktop' entry (#3333) 2020-10-30 15:35:49 +03:00
Hermès Bélusca-Maïto
731eddfe40 [BASESRV] Re-enable and actually fix the CsrValidateMessageBuffer() checks in BaseSrvDefineDosDevice(). (#3304)
Addendum to commit 0a392b18.

The actual problem that existed all along was that the buffers being
validated with CsrValidateMessageBuffer() were not the correct ones!

What had to be checked is the string buffer **INSIDE** the UNICODE_STRING
structures! Indeed, it is these buffers that we are allocating on client side,
see https://github.com/reactos/reactos/blob/9b421af1/dll/win32/kernel32/client/dosdev.c#L324-L336

Dedicated to Pierre Schweitzer.
2020-10-30 01:58:16 +01:00
Hermès Bélusca-Maïto
f4279fc356 [CSRSRV] Clarify few comments, and use MAXULONG. 2020-10-30 01:55:16 +01:00
Mark Jansen
9b421af118 [NTDLL_APITEST] Fix LdrEnumResources testdata initialization
ROSTESTS-361
2020-10-29 20:17:58 +01:00
Timo Kreuzer
0e5a4d5afe [PSDK] Import some SAL headers from MS
Taken from https://github.com/microsoft/ChakraCore/tree/master/pal/inc/rt

* Move _Check_return_opt_ and _Check_return_wat_ to crtdefs.h
* Update sal.h from https://github.com/microsoft/ChakraCore/blob/master/pal/inc/rt/sal.h
* Import no_sal2.h from MS and remove the one in NDK
* Import specstrings.h from MS
* Import specstrings_strict.h from MS
* Add specstrings_undef.h (based on defines in specstrings_strict.h)
* Remove __REACTOS__ hacks from cdfs
2020-10-29 06:51:28 +01:00
Jérôme Gardou
95d873091b [CMAKE] Make reactos_cab_inf really depend on reactos.inf
Instead of being always out of date & always trigger reactos.cab creation
2020-10-28 18:03:34 +01:00
Jérôme Gardou
b2cf5a4c03 Revert "[CMAKE] Make unattended bootcd configurable via cmake"
This reverts commit cfd4ef9384.
This was way more controversial than I would have thought
2020-10-26 18:13:50 +01:00
Mark Jansen
c3b3fcd111 [RAPPS] Abort screenshot iteration on the first not found
This should decrease startup time / db parse time
2020-10-25 20:30:03 +01:00
Mark Jansen
964c22c1ca [RAPPS][RAPPS.COM] Introduce a rapps console shim
rapps.com will be launched when running 'rapps' from cmd or
from run, and since it is a console application, explorer/ cmd will
wait for it.
This rapps.com passes the commandline to rapps.exe,
and wait for rapps.exe to exit before closing.

CORE-17281
2020-10-25 15:44:33 +01:00
Carlo Bramini
4ffd9fb3a0 [DBGHELP] Add missing support for AMD64. (#3083)
See:
https://docs.microsoft.com/en-us/windows/win32/api/winnt/ns-winnt-context
2020-10-25 12:30:37 +01:00
Doug Lyons
8081ba9332 [WIN32SS] Repaint the whole window frame on some style bits set (#3199)
This fixes the ReactOS Calculator buttons disappearing in CORE-16827
2020-10-24 22:35:45 +03:00
Thomas Faber
303f17f884 [FASTFAT] Implement the overflow queue. CORE-17344 CORE-17328
This avoids blocking all Ex worker threads in fastfat, thereby making Cc
unable to issue the lazy writes that would unblock those workers.
This is more or less directly taken from fastfat_new.
2020-10-24 19:53:36 +02:00
Oleg Dubinskiy
cdb48b8219 [SHELL32] Stub SHGetShellStyleHInstance and SHGetAttributesFromDataObject CORE-17337 (#3295)
They are required by MS Picture and Fax Viewer (shimgvw.dll), together with MS browseui.dll.
CORE-17337
2020-10-24 18:04:54 +03:00
Oleg Dubinskiy
d0a7df49fa [BROWSEUI] CCommonBrowser class should support aggregation (#3308)
It will remove the following error from the log when use MS shell32.dll in ReactOS:
`fixme:(dll/win32/ole32/compobj.c:3454) Class {af604efe-8897-11d1-b944-00a0c90312e1} does not support aggregation`.
References:
https://www.geoffchappell.com/studies/windows/ie/browseui/classes/ccommonbrowser.htm
https://docs.microsoft.com/en-us/cpp/atl/reference/aggregation-and-class-factory-macros?view=vs-2019
CORE-17345
2020-10-24 18:02:18 +03:00
Victor Perevertkin
dcfb80c47a [DOC] Add more files to "3rd Party Files.txt" 2020-10-24 17:07:13 +03:00
Timo Kreuzer
a713e63b8b [COMPILER_APITEST] Add new compiler_apitest, using pseh tests 2020-10-24 13:26:33 +02:00
Timo Kreuzer
69e80a1e74 [PSEH2_TEST] Move it to apitests
The folder name is compiler, because it is going to be part of a new compiler_apitest.
2020-10-24 13:26:33 +02:00
Timo Kreuzer
1fa9fdb625 [PSEH2_TEST] Fix compilation with MSVC 2020-10-24 13:26:33 +02:00
Piotr Hetnarowicz
16d8190f51 [SHELL32] PL-pl Dialogs fix v2
shell32.dll PL-pl
-FIXED: invisible icon,text & description
2020-10-24 10:20:59 +02:00
Serge Gautherie
be08d69bc3 [MLANG] Fix scripts values in fnIMLangFontLink2_GetScriptFontInfo()
MSVC:
'...\mlang.c(3568): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)'

Import
2dc0758b5d
2020-10-24 10:17:05 +02:00
Victor Perevertkin
119f102f63 [DOC] Make "3rd Party Files.txt" a main source about 3rd party projects
- Add path and license information to "3rd Party Files.txt"
- Merge README.FSD with it
- Rename README.WINE to WINESYNC.txt
2020-10-24 06:34:55 +03:00
Serge Gautherie
a2a6038e56 [CMAKE] MSVC RUNTIME_CHECKS is a 'Debug'-only feature
"cl : Command line error D8016 : '/Ox' and '/RTC1' command-line options are incompatible"

Addendum to 92dfec219d.
2020-10-24 04:28:16 +03:00
Jérôme Gardou
de40118362 [CMAKE] Make unattended bootcd configurable via cmake
Instead of messing around with a file in the source tree and risk commiting it

use cmake -DUNATTENDED_BOOTCD=yes to enable it, and use the UNATTENDED_BOOTCD_* cache variables to configure
2020-10-23 10:31:57 +02:00
Jérôme Gardou
23e04ae1ee [CMAKE] Use an INTERFACE library to perform the msvcrt <-> msvcrtex binding 2020-10-22 18:07:27 +02:00
Jérôme Gardou
bada20a361 [APISETS] Declare them as modules instead of win32dll 2020-10-22 18:07:27 +02:00
Jérôme Gardou
5c25e816bf [CMAKE] Only link msvcrtex to win32cui, win32gui, win32dll, win32ocx and cpl modules 2020-10-22 18:07:27 +02:00
Jérôme Gardou
840fe4d6ac [CMAKE] Introduce the REACTOS_MODULE_TYPE target property
And set it in set_module_type function
2020-10-22 18:07:27 +02:00
Jérôme Gardou
c321d3e88b [CRTDLL] Make this a stand-alone CRT DLL
Because CRTs must be isolated from each other.
This basically reverts commit f0c91ae
2020-10-22 18:07:27 +02:00
Victor Perevertkin
953c03c336 [DEVMGR] Avoid buffer overflow when device reg key size is > 100 chars 2020-10-22 14:38:55 +03:00
Jérôme Gardou
bbe47e61b1 |CMAKE] Use ExternalProject for host-tools build 2020-10-22 09:31:11 +02:00
Katayama Hirofumi MZ
6cb3b62b4c [APISETS] Revert 'Try to fix build of both case of MSVC AND CLANG' 2020-10-22 09:18:32 +09:00
Katayama Hirofumi MZ
926ada989c [APISETS] Try to fix build of both case of MSVC AND CLANG 2020-10-22 09:07:15 +09:00
Katayama Hirofumi MZ
89bd2d12da [INCLUDE] Use HeapAlloc/HeapFree in layout.h
CORE-17341
2020-10-22 08:07:32 +09:00
Katayama Hirofumi MZ
de8d156e2c [SHELL32] Resizable for SHBrowseForFolder (#3299)
Make the dialog box of SHBrowseForFolder function resizable. CORE-17341
2020-10-21 22:25:16 +09:00
Victor Perevertkin
ba09834c5e [PARPORT] Fix I/O port length check
The Standard Parallel Port (SPP) has 3 registers, not 4: data, status, control
This fixes the driver on the Compaq N600c laptop
2020-10-21 15:24:10 +03:00
Jérôme Gardou
f26754e6dd [NTOSKRNL] Completely disable optimizations when using GDB 2020-10-21 13:11:20 +02:00
Jérôme Gardou
ab825334dd Apply suggestions from code review
Beautification and clarity

Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-10-20 21:44:54 +02:00
Jérôme Gardou
c004b53d77 Apply suggestions from code review
Style fixes

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
2020-10-20 21:44:54 +02:00
Jérôme Gardou
00ed72d7e8 [CMAKE] Get rid of add_compile_flags
Use add_compile_options and the like instead
2020-10-20 21:44:54 +02:00
Jérôme Gardou
84621b3634 [CMAKE] Get rid of replace_compiler_option macro
This is not used anymore
2020-10-20 21:44:54 +02:00
Jérôme Gardou
683489ccf1 [CMAKE] Use -ffile-prefix-map for GCC builds
And also simplify the __RELFILE__ macro definition for the other cases
2020-10-20 21:44:54 +02:00
Jérôme Gardou
ed61512236 [CMAKE] Get rid of add_compile_flags_language macro
in favor of add_compile_options and the like with generator expressions
Also take this as an opportunity to remove the C++11 standard hack, GCC 8 now defaults to C++14
2020-10-20 21:44:54 +02:00
Jérôme Gardou
7e116f0ef3 [CMAKE] Get rid of replace_compile_flags
Introduce a finer-grained remove_target_compile_option instead
2020-10-20 21:44:54 +02:00
Jérôme Gardou
b52fa999eb [CMAKE] Get rid of replace_compile_flags_language macro
It was only used in the set_cpp macro
2020-10-20 21:44:54 +02:00
Jérôme Gardou
907025a018 [CMAKE] Introduce the atl_classes interface library
This takes care of adding the relvant include directory and the _ATL_NO_EXCEPTIONS define, if needed
2020-10-20 21:44:54 +02:00
Jérôme Gardou
8b28f8d9ba [CMAKE] Allow INTERFACE libraries for MSVC IDEs 2020-10-20 21:44:54 +02:00
Jérôme Gardou
d6ea8659c8 [CMAKE] Get rid of the set_cpp macro
Instead of messing with global variables and the like, we introduce two target properties:
 - WITH_CXX_EXCEPTIONS: if you want to use C++ exceptions
 - WITH_CXX_RTTI: if you need RTTI in your module
You can use the newly introduced set_target_cpp_properties function, with WITH_EXCEPTIONS and WITH_RTTI arguments
We also introduce two libraries :
 - cpprt: for C++ runtime routines
 - cppstl: for the C++ standard template library

NB: On GCC, this requires to create imported libraries with the related built-in libraries:libsupc++, limingwex, libstdc++

Finally, we manage the relevant flags with the ad-hoc generator expressions

So, if you don't need exceptions, nor RTTI, nor use any runtime at all: you simply have nothing else to do than add your C++ file to your module
2020-10-20 21:44:54 +02:00
Jérôme Gardou
980ce77316 [CMAKE] CMakeParseArguments is not needed anymore, cmake_parse_arguments is a builtin since CMake 3.5 2020-10-20 21:44:54 +02:00
Jérôme Gardou
15dd31377a Revert "[NTOS/MM] Initialize process Working set and start implementing adding entries to it"
This reverts commit 5abc016401.
Not ready for prime time
2020-10-20 15:56:53 +02:00
Jérôme Gardou
1c528cbf84 Revert "[NTOS/MM]
- Fix PFNs tracing
     - Add private pages to the process working set"

This reverts commit 4c5351bf55.
Not ready for prime time
2020-10-20 15:56:21 +02:00
Jérôme Gardou
7b3faadaf5 [CMAKE] Add target-level dependency between ntdll_apitest and load_notifications 2020-10-20 15:21:00 +02:00
Jérôme Gardou
971b3223ba [CMAKE] Use explicit path for "custom.dll" dependency 2020-10-20 15:21:00 +02:00
Jérôme Gardou
d0ed4fdb3a [CMAKE] Fix generation of UTF-16 inf file 2020-10-20 15:21:00 +02:00
Jérôme Gardou
4c5351bf55 [NTOS/MM]
- Fix PFNs tracing
 - Add private pages to the process working set
2020-10-20 15:20:59 +02:00
Jérôme Gardou
5abc016401 [NTOS/MM] Initialize process Working set and start implementing adding entries to it 2020-10-20 15:20:59 +02:00
Hermès Bélusca-Maïto
6c94e4f487 [USETUP] Work around GCC's complaints (will be fixed properly later on). 2020-10-20 01:32:30 +02:00
Hermès Bélusca-Maïto
08924c1850 [USETUP][SETUPLIB] Continue hiding the FAT32 format in the format list, but take it into account anyway later on.
The formatter will select it anyway as soon as the partition size
permits it. We make it available internally however so as to "emulate"
FMIFS functionality.

Now rely on the partition filesystem for InstallVBRToPartition() instead
of the unreliable and deprecated partition type.
2020-10-20 01:19:58 +02:00
Hermès Bélusca-Maïto
593bcce999 [SETUPLIB] Code re-organization in bootsup.c and fsutil.c.
- Move the actual VBR bootcode installation helpers into fsutil.c
  (they depend on the selected filesystem).

- Introduce InstallBootCodeToDisk() and InstallBootCodeToFile()
  and bootcode.c helpers, in order to replace the several functions
  that were duplicating the same code.
2020-10-18 20:56:16 +02:00
Hermès Bélusca-Maïto
b51b8ee2d5 [SETUPLIB] Move the filesystem recognition helpers to their own file. 2020-10-18 20:56:16 +02:00
Stanislav Motylkov
8a4273b6ee [FREELDR] Add variable for default text color
On PC/AT-compatible machines it's Gray, and on NEC PC-98 series it's White.
2020-10-17 19:28:08 +03:00
Stanislav Motylkov
db1b04340f [FREELDR] Use BIOS font and accelerated text drawing on NEC PC-98
Both features are switchable via global variables.
2020-10-17 19:28:05 +03:00
Serge Gautherie
90a6086f17 [NTOSKRNL] include/config.h: Sync it to current code (#3263)
* SERIALIZE_DBGPRINT: Removed on c15e04c (r18078).
* ENABLE_VALIDATE_POOL: Removed on 5899e14 (r42249).
* TAG_STATISTICS_TRACKING: Removed on 5899e14 (r42249).
* POOL_DEBUG_APIS: Removed on 5899e14 (r42249).
* R_RZ: Removed on 7d21cf7 (r48999).
* R_STACK: Removed on 7d21cf7 (r48999).
* WHOLE_PAGE_ALLOCATIONS: Removed on b431563 (r17306).
+
* _GLOBAL_PAGES_ARE_AWESOME_: Move it here.
2020-10-17 18:09:11 +02:00
Hermès Bélusca-Maïto
c7c0b09eb6 [BASESRV] Use the correct value for the last parameter of a CsrValidateMessageBuffer() call. 2020-10-17 16:55:56 +02:00
Hermès Bélusca-Maïto
bd2a40d57b [NTOS:IO] Some fixes for IoRaiseHardError(). (#3302)
CORE-14037

- Fix buggy retrieval of the current calling Irp->Tail.Overlay.Thread.

- The 4th argument (KernelRoutine) to the KeInitializeApc() is **NOT**
  optional; however its 5th argument (RundownRoutine) is.
  So use the mandatory routine for freeing the allocated APC instead.
  We don't use the rundown routine yet.

- Check whether the ExAllocatePoolWithTag() call failed or not before
  queueing the allocated APC.
2020-10-17 16:13:05 +02:00
Serge Gautherie
7790670dd8 [NTOS:EX] ExUuidCreate(): Correctly fill Uuid->Data4
ROSTESTS-359

Co-authored-by: Nguyen Trung Khanh <nguyentrungkhanh97@gmail.com>
2020-10-17 15:00:19 +02:00
Katayama Hirofumi MZ
24833a6dde [BROWSEUI] Implement CLSID_ACListISF (#3298)
Implement enumeration of IShellFolder items of auto-completion. CORE-9281
2020-10-17 17:49:24 +09:00
Victor Perevertkin
1b45d9ee4b [SCSIPORT] Split scsiport.c file into several ones, prepare for the refactoring
CORE-17132
2020-10-17 04:06:36 +03:00
Stanislav Motylkov
9be9750dc8 [SETUPLIB] Fix some copy-pasta comments, no code changes 2020-10-17 00:48:30 +03:00
Thomas Faber
320abafdc3 [FASTFAT] Ensure that deferred write IRP contexts are not touched. CORE-17328
Cc may decide to process deferred writes any time, so the context might
already be freed by the time we return from CcDeferWrite.
Also mark the IRP as pending, since we're going to return STATUS_PENDING.
2020-10-16 16:18:56 +02:00
Thomas Faber
6b3f309a08 [NTOS] Consistently use MUTANT_INCREMENT.
Spotted by Hermès.
2020-10-16 16:09:54 +02:00
Victor Perevertkin
83b85e2124 [CDROM_NEW] Import Microsoft CDROM class driver from GitHub
The source code is licensed under MS-PL license, taken from Windows Driver Samples
repository (microsoft/Windows-driver-samples@master/storage/class/cdrom/)
Synched with commit 96eb96dfb613e4c745db6bd1f53a92fe7e2290fc
The driver is written for Windows 10 and uses KMDF so we compile it with ntoskrnl_vista
and wdf01000 statically linked (for wdf01000 this will likely be changed in future)

CORE-17129
2020-10-16 04:37:10 +03:00
Thomas Faber
3499b96682 [ACPICA] Update to version 20200925. CORE-17170 2020-10-16 01:21:52 +02:00
Thomas Faber
8605f660f4 [ACPICA] Update to version 20200717. CORE-17170 2020-10-16 01:21:47 +02:00
Omer I.S
c758d15d0a [RAPPS] Update Hebrew (he-IL) translation (#3297) 2020-10-15 17:12:50 +03:00
Thomas Faber
ba9bf73d48 [NTOS:MM] Acquire PsLoadedModuleResource when walking PsLoadedModuleList. CORE-16449 2020-10-15 14:49:20 +02:00
Thomas Faber
a30edc324e [NTOS:MM] Acquire MmSystemLoadLock in MiFindInitializationCode. CORE-16449
We might otherwise free the INIT section for an image that's in the
process of being loaded by Mm.
2020-10-15 14:49:11 +02:00
Jérôme Gardou
a385a78cf0 [OLE32_WINETEST] Fix build with lower optimization level 2020-10-15 11:53:11 +02:00
Jérôme Gardou
68dcd87d38 [WINED3D] Fix build with lower optimization levels 2020-10-15 11:36:01 +02:00
Jérôme Gardou
612b1f2e6e [UDFS] Fix build with lower optimization level 2020-10-15 11:29:09 +02:00
Hermès Bélusca-Maïto
2c2114d9d8 [BOOTDATA] Update display names for the GMT+0 time zones.
Following advice from
https://support.microsoft.com/en-us/help/3162835/june-2016-dst-and-time-zone-update-for-windows
2020-10-13 18:17:36 +02:00
Hermès Bélusca-Maïto
cf93097514 [BOOTDATA] Update some time zones for Russia.
CORE-17336

- Move Novosibirsk to GMT+07:00 (was GMT+06:00 previously).
- Move Magadan to GMT+11:00 (was GMT+10:00 previously).
- Add Omsk time zone GMT+06:00
- Add Tomsk time zone GMT+07:00
2020-10-13 18:04:23 +02:00
Katayama Hirofumi MZ
58b0558f94 [NTUSER] Fix Shell Hook HSHELL_WINDOWCREATED (#3294)
Fix Shell Hook and reduce failures of shell32_apitest ShellHook testcase. Fix the condition of notifying shell hook HSHELL_WINDOWCREATED in ntuser/winpos.c. CORE-17330
2020-10-13 16:37:52 +09:00
Doug Lyons
79794b524c [FASTFAT] Fix create for DOT and DOT-DOT leaving bad directory entry (#3241) 2020-10-12 18:54:06 +03:00
Adam Słaboń
ea3973f12e [BOOTDATA] Comment out vgaoem.fon (#3291)
This font has been added in 383ea7d and then disabled from builds in 4cd2a93 due to regressions it was causing.
Also disable it in registry to not break NTLDR boot again.
2020-10-12 14:48:49 +03:00
Katayama Hirofumi MZ
0089291751 [SHELL32_APITEST] Add ShellHook testcase (#3289)
Add a testcase named ShellHook for shell hook. This testcase will test HSHELL_WINDOWCREATED especially. HSHELL_WINDOWCREATED affects display of task bar panes. CORE-17330
2020-10-12 09:52:21 +09:00
chirsz
a91a709a8d [CMD] Fix a typo in filename completion (#3293)
Fix filename completion that could cause a incorrect result when the path
contains "dots". (See also HBelusca@d12169b.)
See CORE-8623 and CORE-1901 (bug introduced in r25896 / 54cf74f).

For example:

- The current directory is `C:\Documents and Settings\Administrator\`, and you
  input `".` and press TAB. The completion result would be `".Administrator"`,
  which even does not exist.

- You input "some(file).ext", and you remove the final quote (or the quote
  and "ext") and you attempt to complete the file name.

- Import two additional fixes from HBelusca@a826730: Fix the search ordering
  in the comparisons between szSearch1, szSearch2 and szSearch3.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-10-11 21:57:08 +02:00
Mark Jansen
7a2c1f7d0b [RAPPS] Re-add support for icons named after the ini file 2020-10-11 17:01:06 +02:00
Mark Jansen
12caaece25 [RAPPS] Fix certificate pinning error displaying garbage 2020-10-11 17:01:06 +02:00
Mark Jansen
12489f691b [RAPPS] Bump the rapps user agent version 2020-10-11 17:01:06 +02:00
Mark Jansen
d564b4afc3 [RAPPS] Update rapps DB location to the new database 2020-10-11 17:01:06 +02:00
Mark Jansen
26da451ba5 [RAPPS] Delete icons and temp screenshot when cleaning up the db 2020-10-11 17:01:05 +02:00
Mark Jansen
a3a12271e1 [RAPPS] Add directory extraction capabilities for the .cab file 2020-10-11 17:01:05 +02:00
Mark Jansen
4f25a47677 [RAPPS] Add support for a rapps db with the file:/// scheme
This makes it easier to test locally
2020-10-11 17:01:05 +02:00
Mark Jansen
a7c1f9a014 [PSDK] Add some argument names 2020-10-11 17:00:59 +02:00
Mark Jansen
7ed0f25b64 [GDI32] Prevent double initialization in GdiProcessSetup
Found with Application Verifier :)
2020-10-11 16:30:39 +02:00
Alexander Rechitskiy
49a8816a82 [README] Improving the readability of the stability warning (#3287)
Now the warning looks and reads better than a huge chunk of text in bold and italics at once.
2020-10-11 02:40:48 +03:00
Serge Gautherie
05347f7168 [PSDK] dsrole.h: Define DSROLE_PRIMARY_DS_READONLY (#3288) 2020-10-10 22:27:07 +02:00
Hermès Bélusca-Maïto
87e2ec585f [SMSS] Use RTL string-safe functions in critical places. Add validity checks for returned NtQueryValueKey() data. (#2704)
- Not all the wcscpy() / swprintf() calls have been converted to their
  string-safe equivalents. Instead I used the string-safe functions only
  for places where strings of unknown length were copied into fixed-size
  internal buffers. On the contrary, for known-fixed-length strings being
  copied or numbers being converted to string representations in large
  enough buffers, I kept the original function calls.

- Verify the registry data that has been returned by NtQueryValueKey():
  * When expecting (not multi) strings, check whether the data type is
    either REG_SZ or REG_EXPAND_SZ.
  * When expecting DWORD values, check whether the data type is
    REG_DWORD and whether the data length is (greater or) equal to
    sizeof(ULONG).
2020-10-10 16:25:22 +02:00
Katayama Hirofumi MZ
8ee0ee6a88 [FONTS] Improve vgaoem.fon compatibilities by Fony
I have edited the font file vgaoem.fon with Fony application.
I adjusted the bitmap and the metrics.
The font name was "XFreeVGA" but now I renamed it as "Terminal".

(C) AJCD 1995 (C) 2009 grischka (C) khmz.
CORE-17327
2020-10-10 22:54:39 +09:00
Katayama Hirofumi MZ
a5f36688cd [FONTS] Add CORE-* comments into CMakeLists.txt
CORE-17327
2020-10-10 22:53:15 +09:00
Dmitry Borisov
310a24da6e [INPORT] Add driver for bus mouse devices (#3173)
It adds basic input support for:
- Standard Bus Mouse
- Standard InPort Mouse
- Logitech Bus Mouse
- Microsoft Bus Mouse
- Microsoft InPort Mouse
- NEC PC-98 Bus Mouse

Untested on PC/AT, but should work.
2020-10-10 16:46:16 +03:00
Dmitry Borisov
c464b02c90 [NTOS:PNP] Install mouse driver on NEC PC-98 series (#3173)
The current implementation of device tree enumeration does not distinguish
between possible identifier strings. This change is not a hack,
NT 5.2 still creates a new device node for this hardware ID.
The entire function should be rewritten to match Windows implementation.
2020-10-10 16:24:17 +03:00
Dmitry Borisov
d50cbb6eed [INF] Remove duplicated manufacturer names (#3173)
[BOOTDATA] Change the computer name to ensure naming consistency
2020-10-10 16:24:11 +03:00
Katayama Hirofumi MZ
4cd2a93bda [FONTS] Disable vgaoem.fon to fix font display problems
The vgaoem.fon font file was added at 383ea7d.
But adding vgaoem.fon made a regression in font display on FireFox 48.
So, we temporarily disable this font file.

CORE-17327
2020-10-10 21:12:26 +09:00
Katayama Hirofumi MZ
247f2e4705 [FONTS] Make vgaoem.fon monospaced in settings
The font file vgaoem.fon was not monospaced in font file settings.
CORE-17327
2020-10-10 21:05:09 +09:00
Serge Gautherie
ad4c174eb6 [SYSSETUP] fr-FR: Change keyboard accelerator for Owner Organization field (#3282)
'S' is already used for Next ('Suivant') button.
2020-10-08 22:41:33 +02:00
Serge Gautherie
374f9db341 [GFLAGS] ModifyStatus(): Remove a remnant HeapFree() (#3283)
Addendum to ec62127. CORE-17325
2020-10-08 22:39:31 +02:00
Thomas Faber
ef1c726621 [NTOS:MM] Print debugging information in case CORE-16449 happens. 2020-10-08 08:59:46 +02:00
Adam Słaboń
383ea7d92b [BOOTDATA][FONTS] Add vgaoem.fon font (#3272)
Converted from the XFree vga.bdf font.
This is needed for Vista+ x64 Winload. ReactOS x64 now boots with Vista x64 Winload out of the box (like Windows Server 2003 x64).
Tested with winload.exe from Vista x64 RTM (6.0.6000.16386) and winload.efi from Server 2008 x64 Beta 3 (6.0.6001.16497).
2020-10-06 23:39:14 +09:00
Katayama Hirofumi MZ
957d07436b [BROWSEUI] Remove '\1' from AutoComplete list (#3264)
Delete "backslash one" (indicates SW_ values) from auto-completion list. CORE-9281
2020-10-06 17:44:20 +09:00
Adam Słaboń
0689455bb3 [BOOTDATA] Comment out biosinfo.inf (#3266)
This entry is unused as there is no biosinfo.inf anywhere yet, and it only breaks boot with NTLDR.
2020-10-05 23:20:03 +02:00
Hermès Bélusca-Maïto
0ff9b0ff7e [WINLOGON] Display the shutdown message popup dialog on the current input desktop. (#3259)
CORE-17050

Display the shutdown message popup dialog on the current input desktop,
and periodically monitor for any change of the input desktop. When the
latter changes, close the dialog and recreate it on the new input desktop.

In addition, retain the current dialog position and restore it when the
dialog is recreated on the new desktop.
2020-10-05 02:26:03 +02:00
Hermès Bélusca-Maïto
be7bfc813d [WINLOGON] Minor formatting only.
Add also original author's name (from original PR #458).
2020-10-05 02:26:02 +02:00
Hermès Bélusca-Maïto
d86301f72b [NTDLL:CSR] Perform more thorough validation of the parameters in CsrAllocateCaptureBuffer().
Complements commit 7e2db773.

- Validate the argument count.

- Validate the total buffer size: the total size of the header plus
  the pointer-offset array and the provided buffer, together with
  the alignment padding for each argument, must be less than MAXLONG
  aligned to 4-byte boundary.
2020-10-05 02:22:45 +02:00
Hermès Bélusca-Maïto
b3fa53f818 [NTDLL:CSR] Fix a bug in the calculation of the capture buffer size in CsrAllocateCaptureBuffer().
Take the alignment padding for each argument into account, **BEFORE**
doing the final size alignment on a 4-byte boundary. Thus, the capture
buffer size value is properly aligned, and passes the validation tests
on the server side (in CSRSRV!CsrCaptureArguments), see commit 7e2db773.

This bug was put in evidence in x64 builds where the memory alignments
were more tight than in the x86 builds.
2020-10-05 02:22:43 +02:00
Hirofumi Katayama
14c18657bc [BROWSEUI] Fix assertion in CACLCustomMRU::AddMRUString
CORE-9281
2020-10-05 08:49:42 +09:00
Hirofumi Katayama
179da0b237 [SHLWAPI] Fix parameter ordering at call of AutoComplete_AdaptFlags
CORE-9281
2020-10-05 08:47:21 +09:00
Mark Jansen
bac45efe5d [SHELL32][BROWSEUI] Fix usage of ILGetDisplayNameEx 2020-10-04 19:34:20 +02:00
Mark Jansen
b3f2ba0522 [BROWSEUI] Show virtual folders in the log for SHOpenFolderWindow 2020-10-04 19:34:20 +02:00
Mark Jansen
ca087b6a18 [BROWSEUI] Update the current directory before creating a view
This way, when the view asks for a directory _during creation_ it
does not get either an old, or an invalid directory
CORE-17270
2020-10-04 19:34:20 +02:00
Mark Jansen
7b17d8d900 [BROWSEUI] Remove refactoring leftovers 2020-10-04 19:34:20 +02:00
Joachim Henze
5bb36e92c5 [WDMAUD.DRV] Revert "Workaround multiple issues with AC97 driver from rapps"
This reverts commit 0.4.15-dev-791-g
6d7ebc2048

It was a workaround just. To bypass sysaudio. It had a very positive effect on
our playback performance, but using the different codepaths did also lead to
regressions, that I have no idea how to address, therefore I think it's my
personal responsibility to revert it. I guess it's better to improve on the
code-paths that we intend to use finally, instead of fixing what will
be dead paths in the future.

The revert will fix:
- CORE-17277 crash of dsound:duplex on "GCCLin_x86 on Test VBox"
- CORE-17278 crash of dsound:capture on "GCCLin_x86 on Test VBox"
- CORE-17285 Realtek HD Audio does no longer work in ReactOS

But ofc now we will suffer again from very severe things that the hack could workaround:
- CORE-13202 Unhandled exception from wdmaud.drv when recording sound in Scratch 1.4 leads to app-crash
- CORE-13488 A deadlock in "DiabloII" character selection screen and "The Lion King II"
- CORE-8726/CORE-9986/CORE-16564 AC97 driver from rapps will need reboot-orgies again, does not longer
  work in the same session that we installed the driver
- CORE-9981 "DosBox + Commander Keen6" totally garbled sound output instead of music
    "ScummVM 2.0 with Monkey Island 2" totally garbled sound output instead of music
- the test execution times of "GCCLin_x86 on Test VBox" will almost double
2020-10-03 16:39:13 +02:00
Joachim Henze
c947eb4d17 [COMCTL32] Button.c Fix CORE-17260
Press'n'Hold of a button, then leaving the button rect
should redraw the button in unpressed state

Thanks to JIRA user 'I_kill_Bugs' for perfecting
my initial experiments to fix that.

It regressed by 0.4.9-dev-719-g
b3fb8555bf

No need to sync anything with Wine, their code is
correct on Wine head. The bug was in ros specific diff.
2020-10-03 15:38:02 +02:00
Thomas Faber
e57a59a60a [NTOS:MM] Fail on SizeOfRawData overflow. CORE-17284
Fixes the corresponding tests in ntdll_apitest:NtMapViewOfSection.
Also add a TODO for the remaining test failures.
2020-10-03 13:20:25 +02:00
Thomas Faber
b957af4b6b [NTOS:MM] VirtualSize overrides SizeOfRawData when mapping PE files. CORE-17284
This fixes the related failures in ntdll_apitest:NtMapViewOfSection
as well as loading of OrgPlayer's DragDrop.ocx.
2020-10-03 13:13:35 +02:00
Thomas Faber
9b1fb8d6fd [NTDLL_APITEST] Add test for an image file where SizeOfRawData > VirtualSize. CORE-17284 2020-10-03 13:13:35 +02:00
Thomas Faber
1c404d838a [NTDLL:LDR] Fail if section creation fails in LdrpCreateDllSection. CORE-17284
Otherwise we'd call ZwQuerySection on an invalid handle and get:
(ntoskrnl/mm/section.c:4320) Failed to reference section: 0xc0000008

Also correctly check DllCharacteristics: If the argument is missing, the
file is _not_ a system file, i.e. we should check for restrictions.
2020-10-03 13:10:09 +02:00
Thomas Brogan
2e1aeb12df [TCPIP] Add NULL checks in DispTdiQueryInformation. CORE-12274
Add additional NULL checks to DispTdiQueryInformation,
which return STATUS_INVALID_PARAMETER.

Co-authored-by: Peter Hater <7element@mail.bg>
2020-10-03 13:05:12 +02:00
Katayama Hirofumi MZ
bb8cb671b8 [BROWSEUI] Accept TypedURLs to CLSID_ACLCustomMRU (#3250)
Related to #3249. IACLCustomMRU has a special case of TypedURLs. The TypedURLs key consists of the registry values of "url1", "url2", "url3" etc instead of "MRUList", "a", "b" etc. CORE-9281
2020-10-02 21:27:23 +09:00
Hermès Bélusca-Maïto
434fa562ce [USETUP] Do a trick to avoid visual "blinking" during screen clearing. (#3255)
CORE-17312

Hide everything under the same foreground & background colors, so that
the actual color and text blanking reset does not create a visual "blinking".
Then, blank the text and finally reset the actual foreground &
background colors.

We do this because we cannot do the screen scrolling trick that would
allow to change both the text and the colors at the same time (the
function is currently not available in our console "emulation" layer).
2020-10-02 00:20:21 +02:00
Hermès Bélusca-Maïto
66302e477c [USETUP] Minor formatting only. 2020-10-02 00:04:11 +02:00
Katayama Hirofumi MZ
0733d96d9d [COMCTL32] Fix wrong behavior about Tab key
Pressing Tab key should focus next dialog item.
Fix 0a8fb87 and 3f30b1e.
CORE-3479
2020-10-01 22:53:59 +09:00
Timo Kreuzer
3d17a7590d [NTOS:MM] Fix paged pool initialization on x64 2020-10-01 11:24:42 +02:00
Hermès Bélusca-Maïto
ffc96d26ec [UMPNPMGR][USETUP] Fix the way device-install events are queued and dequeued. Fixes CORE-16103.
Dedicated to the hard work of Joachim Henze! xD

This reverts part of commit 043a98dd (see also commit b2aeafca).

Contrary to what I assumed in commit 043a98dd (and was also assumed in
the older commit b2aeafca), we cannot use the singled-linked lists to
queue and dequeue the PnP device-install events, because:

- the events must be treated from the oldest to the newest ones, for
  consistency, otherwise this creates problems, as shown by e.g. CORE-16103;

- the system singled-linked lists only offer access to the top of the
  list (like a stack) instead of to both the top and the bottom of the
  list, as would be required for a queue. Using the SLISTs would mean
  that only the newest-received events would be treated first, while the
  oldest (which were the first received) events would be treated last,
  and this is wrong.

Therefore one must use e.g. the standard doubly-linked list. Also, using
locked operations (insertion & removal) on the list of device-install
events is necessary, because these operations are done concurrently by
two different threads: PnpEventThread() and DeviceInstallThread().
Since the interlocked linked list functions are not available in user-mode,
we need to use instead locking access through e.g. a mutex.
2020-10-01 01:52:09 +02:00
Katayama Hirofumi MZ
828a65f470 [BROWSEUI_APITEST] Follow-up of #3249 (b1c3329)
CORE-9281
2020-10-01 05:03:34 +09:00
Katayama Hirofumi MZ
b1c33293b0 [BROWSEUI_APITEST] Strengthen IACLCustomMRU testcase (#3249)
Add some tests for "TypedURLs" of a special case. The TypedURLs registry key consists of the registry values of "url1", "url2", "url3" etc instead of "MRUList", "a", "b" etc. CORE-9281
2020-09-30 20:51:49 +09:00
Joachim Henze
d2bbf54b6f [MSGINA] Allow to pair FriendlyShutDownDlg with 'Server' CORE-17282
A ros specific addition that does not exist on Windows.

Default for Server is still the classic shutdown dlg,
no change on that.

But interested users can manually now create the registry setting
"EnforceFriendlyShutdown" REG_DWORD to "1"
within "SYSTEM\\CurrentControlSet\\Control\\Windows"
to allow overriding the Windows default behavior
without relying on changing the product version number, because
that would not be side-effect-free.

Addendum to 0.4.15-dev-650-g
2edcb58e65
2020-09-30 13:08:58 +02:00
Katayama Hirofumi MZ
e1a01de7f7 [BROWSEUI] Fix Edit_BackWord function (#3247)
Fix and improve Edit_BackWord function (for Ctrl+Back key combination on auto-completion in edit boxes) by using GetStringTypeW. CORE-1419
2020-09-28 22:05:14 +09:00
Katayama Hirofumi MZ
a822eadce6 [SHELL32] CoUninitialize only if CoInitialize* is successful
Technically CoUninitialize should be called only if CoInitializeEx succeeded (including S_FALSE).
CORE-1419
2020-09-28 20:13:28 +09:00
Katayama Hirofumi MZ
467feb9996 [BROWSEUI] Follow-up part 3 of #3242 (6b6f971)
Also recognize slash, dot, colon, and semicolon.
CORE-1419
2020-09-28 10:58:22 +09:00
Katayama Hirofumi MZ
737278276f [BROWSEUI] Follow-up part 2 of #3242 (6b6f971)
Don't recognize backslash of the last character.
CORE-1419
2020-09-28 10:41:21 +09:00
Katayama Hirofumi MZ
9812bce271 [BROWSEUI] Follow-up of #3242 (6b6f971)
Recognize backslashes in Ctrl+Back.
CORE-1419
2020-09-28 10:14:36 +09:00
Katayama Hirofumi MZ
6b6f971939 [BROWSEUI][SHELL32] Enable Ctrl+Backspace in AutoComplete edit boxes (#3242)
The key combination Ctrl+Back is well working in auto-completion edit boxes. CORE-1419
2020-09-28 09:27:01 +09:00
Hermès Bélusca-Maïto
f5ba9de2ee [CMD] Fix substring-substitute regression from commit cdc8e45b (use signed offsets). 2020-09-28 00:41:17 +02:00
Timo Kreuzer
f2e3e8a1eb [NTOS] Remove an old hack 2020-09-28 00:27:30 +02:00
Timo Kreuzer
d74037b666 [NTOS:PS] Fix size handling in ProcessDeviceMap
If you want to know the details, browse history or use git blame.
2020-09-28 00:24:53 +02:00
Hermès Bélusca-Maïto
895dccd4ac [CMD] Cleanup all batch contexts if the execution loop stopped due to EXIT. 2020-09-27 20:26:36 +02:00
Timo Kreuzer
68cb54dc58 [SHELL32] Fix usage of return value 2020-09-27 19:58:21 +02:00
Hermès Bélusca-Maïto
f0fccb752f [CMD] Fix batch/CALL arguments initialization.
- Move initialization of bc->raw_params also in BatchParams().

- The bc->raw_params, i.e. the unparsed batch/CALL parameters obtained
  with %*, has any leading and trailing whitespace trimmed
  (since Windows 2000+).
2020-09-27 19:06:10 +02:00
Hermès Bélusca-Maïto
37bda06eed [CMD] CALL: Fix the implementation of the CALL command, make it more compatible with Windows' CMD.
- Fail if no parameter is provided.

- The "CALL :label args..." syntax is available only when command extensions
  are enabled. Fail if this syntax is used outside of a batch context.

- Reparse the CALL command parameter with the command parser, in order
  to accurately parse and interpret it as a possible command (including
  escape carets, etc...) and not duplicate the logic.
  ** CURRENT Windows' CMD-compatibility LIMITATION ** (may be lifted in
  a "ROS-specific" running mode of CMD): only allow standard commands to
  be specified as parameter of the CALL command.

  This reparsing behaviour can be observed in Windows' CMD, by dumping
  the interpreted commands after enabling the cmd!fDumpParse flag from
  a debugger (using public symbols).

- When reparsing, we should tell the parser to NOT ignore lines that
  start with a colon, because in this situation these are to be
  considered as valid "commands" (for parsing "CALL :label").

  * For Windows' CMD-compatibility, the remaining escape carets need to
    be doubled again so that, after the new parser step, they are escaped
    back to their original form. But then we also need to do it the "buggy"
    way à la Windows, where carets in quotes are doubled either! However
    when being re-parsed, since they are in quotes they remain doubled!!
    (see "Phase 6" in https://stackoverflow.com/a/4095133/13530036 ).

  * A MSCMD_CALL_QUIRKS define allows to disable this buggy behaviour,
    and instead tell the parser to not not interpret the escape carets.

- When initializing a new batch context when the "CALL :label" syntax is
  used, ensure that we reuse the same batch file position pointer as its
  parent, so as to have correct call label ordering behaviour.

  That is,

  :label
  ECHO hi
  CALL :label
  :label
  ECHO bye

  should display:

  hi
  bye
  bye

  i.e., the CALL calls the second label instead of the first one (and
  thus entering into an infinite loop).

  Finally, the "CALL :label" syntax strips the first ':' away, so, as a
  side-effect, the command "CALL :EOF" fails (otherwise it would perform
  a "GOTO :EOF" and succeeds), while "CALL ::EOF" succeeds.

Fixes some cmd_winetests.
2020-09-27 19:05:23 +02:00
Hermès Bélusca-Maïto
4f4af5d271 [CMD_ROSTEST] Add tests for CALL label parsing, and for CALL and GOTO behaviour.
Tests adapted from https://stackoverflow.com/q/31987023/13530036
and from https://stackoverflow.com/a/38938416/13530036 .

- Test when CALL with a label containing /? actually calls GOTO's help,
  and test when CALL's help is displayed instead.

- Test when CALL with a label containing /?, but specified by variables,
  do NOT trigger GOTO's or CALL's help.

- Test the effect of the presence of escape carets in CALL label string.

- Test that CALL indeed supports double delayed expansion. Adapted from
  https://stackoverflow.com/a/31990563/13530036 .
2020-09-27 19:04:51 +02:00
Katayama Hirofumi MZ
fe41acdc11 [SHLWAPI] Follow-up of #3230 (f496a5f)
CORE-9281
2020-09-27 15:47:10 +09:00
Katayama Hirofumi MZ
f496a5fc4f [SHLWAPI] 1/3-implement SHAutoComplete (#3230)
Retrial of #3214. Try to implment shlwapi!SHAutoComplete function. Unfinished. CORE-9281
2020-09-27 15:27:18 +09:00
Hermès Bélusca-Maïto
d029a626e9 [CMD] Make the command-line parser more compatible with Windows' CMD one.
All these modifications have been verified with Windows' CMD, either
by using written cmd_rostests and the existing cmd_winetests, or
manually by enabling the flags cmd!fDumpTokens and cmd!fDumpParse
(available in the public symbols) and analyzing how the tokens are
being parsed, as well as the generated command tree.

See also the following links for more details (but remember that these
observations have to be double-checked in Windows' CMD!):

* Parser rules: https://stackoverflow.com/a/4095133/13530036
* Discussion: https://www.dostips.com/forum/viewtopic.php?f=3&t=8355
* Numbers parsing: https://www.dostips.com/forum/viewtopic.php?t=3758
* Label names vs. GOTO and CALL: https://www.dostips.com/forum/viewtopic.php?f=3&t=3803
  and: https://www.dostips.com/forum/viewtopic.php?f=3&t=3803&p=55405#p55405

- Fix REM command parsing. A C_COMMAND-like structure should still
  be built, so that it can show up during batch command echo. However
  some specific handling needs to be done, so use instead a new C_REM
  command type.
  Escape carets are parsed differently than usual: they are explicitly
  kept in the command line and don't participate in line continuations.
  Also, the Windows' CMD behaviour is to discards everything before the
  last line continuation.

- Prefix operator '@' (the "silent" operator) is parsed as a separate
  command. Thus, the command @@foo@bar is parsed as: '@', '@', 'foo@bar'.

- Improve the checks for numbered redirection.
  For this purpose, we check whether this is a number, that is in first
  position in the current parsing buffer or is preceded by a whitespace-
  like separator, including standard command operators (excepting '@' !)
  and double-quotes.

- Empty command blocks, i.e. "( )", standing by themselves, or present
  in IF or FOR commands, are considered invalid. (The closing parenthesis
  is considered "unexpected".)

- Ignore single closing parenthesis when being outside of command blocks,
  thus interpreting it as a command, and ignore explicitly everything
  following on the same line, including line continuations.
  This very specific situation can happen e.g. while running in batch mode,
  when jumping to a label present inside a command block.
  See the code for a thorough explanation.

- Detect whether a parenthesized block is not terminated at the end
  of a command stream (getting a NUL character instead of a newline),
  and if so, bail out early instead of entering into an infinite loop.

- Perform a similar check for the parenthesized list in FOR commands.

- Initialize the static 'InsideBlock' value to a known value.

- The '&' operator (multi-commmand) is allowed to have an empty RHS.
  When such situation occurs, turn the CurrentTokenType to TOK_END
  so as to avoid a parse error later on.

- The main body of a IF statement, or its 'else' clause, as well as
  the main body of a FOR statement, must not be empty, otherwise this
  is considered a syntax error. If so, call ParseError() that sets
  the 'bParseError' flag, and forcing all batch execution to stop.
2020-09-27 02:27:15 +02:00
Adam Słaboń
50ff453434 [TRANSLATION] Polish translation update (#3233) 2020-09-26 21:42:36 +03:00
Hermès Bélusca-Maïto
7988a2ac54 [CMD_ROSTEST] Add more tests for the command echoer and new tests for the parser. 2020-09-26 17:51:07 +02:00
Kyle Katarn
b217d8bd14 [ROSTEST] Fix copy paste bug in RtlBitmap.c 2020-09-26 17:12:36 +02:00
Katayama Hirofumi MZ
c8e1460ac5 [COMDLG32] Support shortcut keys on Open/Save Dialog (#3238)
Enable key accelerators on File Open/Save Dialog. CORE-14332
2020-09-26 21:26:06 +09:00
Katayama Hirofumi MZ
1062a297bf [DRIVERS][SCSIPORT] Fix build fdc47e7 2020-09-26 11:20:11 +09:00
Katayama Hirofumi MZ
f341e60fbe [USER32] Mute 'Imm Api Table Init 2' spam
CORE-11700
2020-09-26 11:13:43 +09:00
Victor Perevertkin
fdc47e7ea7 [SCSIPORT][FORMATTING] Fix formatting and PCH generation 2020-09-26 03:47:52 +03:00
Mark Jansen
3da04a9b68 [RAPPS] Remove string casts after the conutils fix 2020-09-25 22:03:28 +02:00
Timo Kreuzer
d8b5c00c33 [KERNEL32_VISTA] Move vista.c from kernel32 to kernel32_vista
- Remove duplicated functions
- Use AreFileApisANSI() instead of global variable bIsFileApiAnsi in shared kernel32_shared
2020-09-25 09:45:54 +02:00
Timo Kreuzer
fcd83242d4 [KERNEL32] Move some functions into a static library to be shared between kernel32 and kernel32_vista 2020-09-25 09:45:54 +02:00
Timo Kreuzer
4e72da0858 [KERNEL32_VISTA] Move under kernel32 2020-09-25 09:45:54 +02:00
Timo Kreuzer
ab43f86980 [KSECDD] Fix RtlEncryptMemory and improve test 2020-09-25 09:39:51 +02:00
Katayama Hirofumi MZ
ed02f41af5 [SHELL32] Call SHAutoComplete on 'Run' dialog
CORE-9281
2020-09-25 15:59:30 +09:00
Katayama Hirofumi MZ
0a8fb87d84 [COMCTL32] IP Address controls follow-up of #3212 (3f30b1e)
The rightest field didn't work Left arrow key.

CORE-3479
2020-09-25 15:32:58 +09:00
Kyle Katarn
b9754fa5d6 [SETUP][MMSYS][SHELL32] Adding missing French translation (and update existing ones) (#3232)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-25 01:39:31 +02:00
Victor Perevertkin
bb94e711ef [NTOSKRNL_VISTA] Add stubs for functions needed in KMDF 2020-09-25 01:28:55 +03:00
Victor Perevertkin
d01518da7c [XDK] Add definitions required for newer storage class drivers (cdrom)
That introduced some warnings in the current code which were corrected as well

CORE-17129
2020-09-24 22:30:52 +03:00
Victor Perevertkin
be276dde28 [XDK][NTOSKRNL_VISTA] Put NTKRNLVISTAAPI to XDK headers
for vista+ APIs implemented in ntoskrnl_vista.
Now if you statically link ntoskrnl_vista into a driver,
NTKERNELAPI will automatically be removed from an API definition
2020-09-24 21:51:57 +03:00
Victor Perevertkin
7af229f5b5 [PSDK] Fix order and formatting of IOCTL definitions in ntddcdrm.h 2020-09-24 17:44:18 +03:00
Victor Perevertkin
99489553fc [PSDK] Add definitions required for newer storage class drivers (cdrom)
CORE-17129
2020-09-24 17:31:15 +03:00
Victor Perevertkin
d7d716a64c [DDK] Add definitions required for newer storage class drivers (cdrom)
CORE-17129
2020-09-24 05:47:48 +03:00
Victor Perevertkin
f7c58468f1 [XDK] Move UNREACHABLE macro definition to ntbasedef.h 2020-09-24 05:35:43 +03:00
Victor Perevertkin
87a5311116 [SDK] Fix __forceinline definition for C++ 2020-09-24 05:33:35 +03:00
Katayama Hirofumi MZ
33fe4333f4 [USER32] Load IMM table (#3215)
Implement the IMM function table in module user32.dll. CORE-11700
File immtable.h is located at win32ss/user/user32/include, that is a list of the DEFINE_IMM_ENTRY macro calls.
2020-09-23 21:42:54 +09:00
Katayama Hirofumi MZ
3f30b1eda7 [COMCTL32] Improve IP Address Controls (Tab and caret) (#3212)
Improve IP address controls.
- Set focus to EDIT control to show caret.
- Process WM_GETDLGCODE messages on EDIT control to catch Tab key.
- Process Tab key and Shift+Tab key in processing WM_KEYDOWN.
CORE-3479
2020-09-23 08:32:40 +09:00
Hermès Bélusca-Maïto
17e094cd34 [CMD] SET: Diverse fixes for the arithmetic-expression parser (/A option).
- Detect whether a division by zero is done, and fail if so.

- Detect whether an invalid number is provided:
  * If _tcstol() fails with errno == ERANGE, we've got an overflow or
    underflow.
  * If the next character where _tcstol() is not a whitespace but is a
    character compatible with the first character of an identifier, the
    number is invalid.

- Add + to the list of existing unary operators (!,~,-), and parse them
  where many of these are present. Indeed, expressions like: +3, -+-+3,
  !!-+3 (or with other unary ops, etc.) are valid.

- Operators constituted of more than one characters, can contain
  whitespace separating their constituting characters.
  Thus, "a + = 3" is equivalent to "a += 3" (and the same for -=, *=,
  /=, %=, &=, |= and ^=), and "a < < 3" is equivalent to "a << 3" (and
  the same for >>, <<= and >>=).

- After evaluating everything, if unparsed data remains, fail and bail out.

- Return Windows' CMD-compatible errorlevels.

See https://ss64.com/nt/set.html for more details.

Fixes some cmd_winetests.
2020-09-23 00:22:48 +02:00
Hermès Bélusca-Maïto
f5cf67f455 [CMD_ROSTEST] Add tests for SET /A errorlevels. 2020-09-23 00:22:48 +02:00
Hermès Bélusca-Maïto
87a5403318 [CMD] Add a MSCMD_BATCH_ECHO define for enabling Windows' CMD.EXE way of preserving/restoring the echo flag across batch calls.
Observation shows that this is done only when the top-level batch file
is being run (and then terminates); the echo flag is not restored to its
previous state when a child batch file terminates and gives main back to
its parent batch.
2020-09-23 00:22:47 +02:00
Hermès Bélusca-Maïto
141378cfc8 [CMD] ASSOC: Simplify the code and make it more robust; fix returned ERRORLEVEL values.
- Make sure that non-administrator users can list associations, and
  display appropriate error messages when e.g. they don't have sufficient
  privileges to perform an operation.

- Make the helper functions all return Win32 values, used as the
  ERRORVALUE, except when a specific extension association fails to be
  displayed, in which case the ERRORVALUE is normalized to 1.

- Since the 'param' is a modifiable string (that can be modified by the
  command, independently of the way it's called), just use it to isolate
  the extension by zeroing out the equls-sign separator.
2020-09-23 00:22:47 +02:00
Hermès Bélusca-Maïto
63316df520 [CMD] Change ERRORLEVEL behaviour for commands ASSOC, PATH, PROMPT and SET.
Commands APPEND/DPATH and FTYPE are also concerned by this; however
we do not implement them in our CMD.EXE yet.

These commands set the ERRORLEVEL differently, whether or not they are
run manually from the command-line/from a .BAT file, or from a .CMD file:

- From command-line/.BAT file, these commands set the ERRORLEVEL only if
  an error occurs. So, if two commands are run consecutively and the first
  one fails, the ERRORLEVEL will remain set even if the second command
  succeeds.

- However, when being run from a .CMD file, these command will always
  set the ERRORLEVEL. In the example case described above, the second
  command that succeeds will reset the ERRORLEVEL to 0.

This behaviour is determined from the top-level batch/script file being
run. This means that, if a .BAT file is first started, then starts a
.CMD file, the commands will still behave the .BAT way; on the opposite,
if a .CMD file is first started, then starts a .BAT file, these commands
will still behave the .CMD way.

To implement this we introduce one global BATCH_TYPE enum variable that
is initialized to the corresponding batch/script file type when the
top-level script is loaded. It is reset to "none" when that script
terminates.

See https://ss64.com/nt/errorlevel.html for more details,
section "Old style .bat Batch files vs .cmd Batch scripts",
and https://groups.google.com/forum/#!msg/microsoft.public.win2000.cmdprompt.admin/XHeUq8oe2wk/LIEViGNmkK0J
(comment by Mark Zbikowski).
2020-09-23 00:22:46 +02:00
Hermès Bélusca-Maïto
0b400bbb98 [CMD_ROSTEST] Add tests for particular ERRORLEVEL behaviour in some commands. 2020-09-23 00:22:45 +02:00
Hermès Bélusca-Maïto
a5d7a2cd61 [CMD] Code style and formatting fixes for assoc.c and path.c 2020-09-23 00:22:45 +02:00
Hermès Bélusca-Maïto
69258973e0 [CMD_ROSTEST] Add tests for the FOR /F "tokens=" command. See commit 0695ecbf. 2020-09-22 23:08:13 +02:00
Doug Lyons
90be2f4e1b [IPHLPAPI] Fix for hasArp which crashes some iphlpapi tests. (#3216)
CORE-16513
2020-09-22 15:50:41 +02:00
Michael Stamper
e45bacda07 [PORTCLS] Fix audio stutter with official AC97 driver (#3225)
Replace call to AllocatedBufferSize(), with BufferSize().

Indeed (quoting https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/portcls/nf-portcls-idmachannel-buffersize ):

> The BufferSize() method returns the buffer size that was set by the previous call to IDmaChannel::SetBufferSize(). If SetBufferSize() has not been called since the IDmaChannel::AllocateBuffer() call, BufferSize returns the allocated buffer size. The DMA-channel object does not actually use this value internally. This value is maintained by the object to **allow its various clients to communicate the intended size of the buffer**.

And this is exactly what we want to do.
2020-09-22 15:49:34 +02:00
Hermès Bélusca-Maïto
0695ecbfd6 [CMD] FOR: Additional Windows' CMD compatibility "fixes" for FOR /F token parsing command.
This compatibility behaviour implements the buggy behaviour of FOR /F
token parsing that can be observed in Windows' CMD, and that is tested
by the cmd_winetests.
It can be disabled at compile time via the MSCMD_FOR_QUIRKS define.

It fixes additional cmd_winetests, in concert with commit cb2a9c31.

Explanation of the implemented buggy behaviour
==============================================

In principle, the "tokens=x,y,m-n[*]" option describes a list of token
numbers (must be between 1 and 31) that will be assigned into variables.
Theoretically this option does not cumulate: only the latest 'tokens='
specification should be taken into account.

However things are not that simple in practice. First, not all of the
"tokens=" option state is reset when more than one specification is
provided. Second, when specifying a token range, e.g. "1-5", Windows'
CMD just ignores without error ranges that are not specified in
increasing order. Thus for example, a range "5-1" is ignored without
error. Then, token numbers strictly greater than 31 are just ignored,
and if they appear in a range, the whole range is ignored.

Another bug is the following one: suppose that the 'tokens'
specification reads:
  "tokens=1-5,1-30" , or: "tokens=1-5,3" ,
i.e. more than one range, that overlap partially. Then the actual total
number of variables will not be of the larger range size, but will be
the sum, instead.
Thus, in the first example, a total of 5 + 30 == 35 variables (> 31) is
allocated, while in the second example, a total of 5 + 1 == 6 variables
is allocated, even if they won't all store data !!
In the first example, only the first 30 FOR variables will be used, and
the 5 others will contain an empty string. In the second example, only
the first 5 FOR variables will be used, and the other one will be empty.

We also see that due to that, the "Variables" buffer of fixed size
cannot always be used (since it can contain at most 32 variables).

Last but not least, when more than one "tokens=" specification is
provided, for example:
  "tokens=1-31 tokens=1-20"
a total number of 31 FOR variables (because 31 is the max of 31 and 20)
is allocated, **but** only 20 are actually used, and the 11 others
return an empty string.

And in the specification: "tokens=1-31,* tokens=1-20", a total of
31 + 1 + 20 = 52 variables is initialized, but only the first 20 will
be used, and no "remaining-line" token (the '*' one) is used.
2020-09-21 03:31:01 +02:00
Hermès Bélusca-Maïto
e904471023 [CMD] IF: Fix x64 warning C4267. 2020-09-21 03:31:01 +02:00
Timo Kreuzer
cb22d5f697 [NTOS:PS] On x64 don't fail in NtSetInformationProcess with ProcessUserModeIOPL information class, instead just don't do anything.
For NT6+ appcompat setting return STATUS_NOT_IMPLEMENTED
2020-09-20 23:08:17 +02:00
Timo Kreuzer
26484eea9f [NTOS:MM] Fix MiSubsectionPteToSubsection 2020-09-20 23:08:17 +02:00
Timo Kreuzer
896d090ee6 [NTOS:MM] Call MiSessionAddProcess() from MmCreateProcess() like on x86 2020-09-20 23:08:17 +02:00
Timo Kreuzer
bebcda0b0b [NTOS:MM] In the x64 version of MmCreateProcessAddressSpace() zero out all page table PFNs 2020-09-20 23:08:17 +02:00
Timo Kreuzer
04f0c7d0d7 [NTOS:KE] Zero out ExceptionFrame member in Syscall handler 2020-09-20 23:08:17 +02:00
Timo Kreuzer
366e8a840c [NTOS:KE] Disable interrupts before lowering IRQL in KiDpcInterruptHandler to avoid stacking up DPC interrupts 2020-09-20 23:08:17 +02:00
Timo Kreuzer
3aaee35629 [NTOS:KE] Save and restore previous mode in KiZwSystemService and fix restoring the trap frame 2020-09-20 23:08:17 +02:00
Timo Kreuzer
b2a483b9ea [NTOS:KE] Don't use FrLdrDbgPrint anymore. It served us well, but now it's time to go away. 2020-09-20 23:08:17 +02:00
Timo Kreuzer
0343ac4f0b [HAL] Use iretq instead of iret 2020-09-20 23:08:17 +02:00
Timo Kreuzer
3bbcc16d8e [HAL] Fix calculation of timer increment 2020-09-20 23:08:17 +02:00
Timo Kreuzer
64d7db506c [CRT] Return from fpreset() 2020-09-20 23:08:17 +02:00
Timo Kreuzer
aff33c855d [CRT] Use chkstk_ms.s on x64 builds 2020-09-20 23:08:17 +02:00
Timo Kreuzer
38be76187a [ASM] Fix KUMS_CONTEXT_HEADER offsets in ksamd64.template.h 2020-09-20 23:08:17 +02:00
Timo Kreuzer
867820124b [BOOTDATA] Use reactos subfolder as source dir on bootcd for now 2020-09-20 23:08:17 +02:00
Timo Kreuzer
280aa21179 [CMAKE] Add baseaddress_msvc_x64.cmake 2020-09-20 23:08:17 +02:00
William Kent
427ea67b9c [RTL] Add code to SxS manifest parser to parse XML namespaces (#2512)
* [XDK] Typo fix
* [XDK] Add missing ACTIVATION_CONTEXT_SECTION values
* [RTL] Merge changes from Wine
* [ROSTESTS] Fix typo
* [NTDLL] Typo fix
* Add test for new functionality
* [ROSTESTS] Fix path
* [ROSTESTS] Add test to testlist.c
2020-09-20 22:56:42 +02:00
Oleg Dubinskiy
b62948ef77 [RAPPS] Use RegDeleteKeyExW for deleting the apps strings from registry only if it is available in advapi32
Otherwise, use `RegDeleteKeyW` instead, on Windows versions whose don't have the Ex function (XP SP3 x32, Server 2003 SP0 and earlier).
It will fix regression with Rapps startup there, due to that missing function.
CORE-17264
2020-09-20 19:23:06 +02:00
Serge Gautherie
889b077b23 [REACTOS] *.spec: Fix some function/parameter types (#3154) 2020-09-20 19:21:11 +02:00
Oleg Dubinskiy
7eb90143f8 [RAPPS] Display custom applications icons for installed applications CORE-17257 (#3144)
* [RAPPS] Display custom applications icons for installed applications
- Implement `RetrieveIcon` helper function in `CInstalledApplicationInfo` class, which retrueves the current app's icon from registry, same as it done for `CAvailableApplicationInfo`.
- Use it for loading the icon in `CAppsListView::AddInstalledApplication` function, via `ExtractIconW`. Load default Rapps icon only when the app has no its custom icon.
- Retrieve `DisplayIcon` value from registry in `CInstalledApps::Enum` function, same as other registry values (like app name, description, etc).Store it in `szDisplayIcon` string, which is used in `CInstalledApplicationInfo::RetrieveIcon` for retrieving the data of that value.
- Increase `LISTVIEW_ICON_SIZE` macro from 24 to 32, so 32x32 icon size is now used instead of 24x24. This makes displayed icons more accurate, since most of apps contain 32x32 icon, so they look a bit distorted with 24x24 size.
2020-09-20 19:19:59 +02:00
Mark Jansen
5730485a51 [SDK] Add dummy import lib files for MSVC_IDE build,
to work around a CMake bug generating broken dll targets
ROSBE-159
2020-09-20 19:18:15 +02:00
Mark Jansen
7119b13a28 [CREATECABFILE] Update rapps example scripts for new usage 2020-09-20 17:30:26 +02:00
Mark Jansen
70193adc89 [CABMAN] Add commandline support for creating a cab with folders
CORE-17230
2020-09-20 17:28:02 +02:00
Katayama Hirofumi MZ
a9f60321f0 [MORE] Implement 'Q' key for 'Quit' (#3210)
Implement 'Quit' action for keyboard key 'Q'. CORE-4019
2020-09-20 07:16:21 +09:00
Hermès Bélusca-Maïto
5d5a1a455c [CMD] FOR: Fix a bug when parsing the "delims=" option in FOR loops.
Suppose the following FOR-loop command, to be run from the command-line
(if using a batch file, double each percent '%' sign):

  FOR %l IN ("a,b,c,d,e" "f,g,h,i,j") DO (
    FOR /F "delims=, tokens=1-3*" %a IN (%l) DO @echo %a-%b-%c-%d
  )

The outermost FOR-loop enumerates the two strings "a,b,c,d,e" and
"f,g,h,i,j" (placed in %l), and parse each of these in turn, splitting
them at each specified delimiter (here only one character) ',' and storing
the results in consecutive tokens %a, %b, %c, %d, with the last token %d
containing all the remaining string (non-split).
The expected result is:

  a-b-c-d,e
  f-g-h-i,j

However, due to the way the delimiters string specified by the "delims="
option is stored (no stack/heap duplication of the FOR-option substring,
but reading from it directly), during the first run of the innermost
FOR-loop, the option string "delims=, tokens=1-3*" was truncated to just
after the ',' due to the erroneous "delims=" parsing, so that when this
FOR-loop ran for a second time (to deal with the second string), the option
string was already erroneously truncated, without the "tokens=..." part,
so that the parsing results were not stored in the tokens and resulting in:

  a-b-c-d,e
  f-%b-%c-%d

instead. The solution is to save where the "delims=" string needs to be
cut, but wait until running the actual FOR-loop to terminate it (and
saving the original character too), run the FOR-loop body, and then
restore the original character where termination took place. This allows
having the FOR-loop option string valid for the next execution of the
FOR-loop.
2020-09-19 19:44:56 +02:00
Hermès Bélusca-Maïto
5cf0517be1 [CMD] Code formatting in SubstituteVar(). 2020-09-19 19:44:55 +02:00
Hermès Bélusca-Maïto
cdc8e45b48 [CMD] Fix delayed expansion of variables.
CORE-13682

- Split SubstituteVars() into its main loop and a helper SubstituteVar()
  that just substitutes only one variable.

- Use this new helper as the basis of the proper implementation of the
  delayed expansion of variables.

- Fix a bug introduced in commit 495c82cc, when GetBatchVar() fails.
2020-09-19 19:44:55 +02:00
Hermès Bélusca-Maïto
cb2a9c31a6 [CMD] Some fixes for getting the enhanced '%~XXX' batch/FOR variables.
CORE-11857 CORE-13736

It will be followed with a separate fix for the FOR-loop code.
Fixes some cmd_winetests.

A NULL pointer can be returned for a valid existing batch/FOR variable,
in which case the enhanced-variable getter should return an empty string.
This situation can happen e.g. when forcing a FOR-loop to tokenize a
text line with not enough tokens in it.
2020-09-19 19:44:54 +02:00
Hermès Bélusca-Maïto
014efdf7e8 [CMD_ROSTEST] Add tests for delayed expansion. 2020-09-19 19:44:53 +02:00
Kyle Katarn
da36f799c7 [SHELL32] Minimal SHRunControlPanel implementation (#3095)
CORE-9215
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-09-19 16:23:44 +02:00
Katayama Hirofumi MZ
ab115e30fe [IMM32][INCLUDE] Add immtable.h and modify imm32.spec (#3207)
- Add immtable.h header into win32ss/user/user32/misc/.
- Modify imm32.spec file.
CORE-11700
2020-09-19 22:47:40 +09:00
He Yang
fbbc3efd60 [RAPPS] Update help command (#3209)
Add missing FIND and INFO commands to the usage help string.
2020-09-19 15:20:14 +03:00
Katayama Hirofumi MZ
d905dd5318 [APPWIZ] Add ES_AUTOHSCROLL to allow users to enter long text
CORE-17291
2020-09-19 13:50:58 +09:00
Kyle Katarn
a5a30fc249 [SHELL32][SHELLEXT] Fix use of SHFileOperation results and improve log on failure / fix log spam (#3198) 2020-09-18 21:19:55 +02:00
Katayama Hirofumi MZ
3ad5ae6389 [SDK][INCLUDE] Add ANSI/Unicode mappings for SHAboutInfo and SHGetValueGoodBoot 2020-09-18 17:30:16 +09:00
Katayama Hirofumi MZ
efde1f4268 [SDK][INCLUDE] Add SHGetValueGoodBootA/W prototypes 2020-09-18 17:22:16 +09:00
Katayama Hirofumi MZ
733d6cebed [SDK][INCLUDE] Add SHAnsiToUnicodeCP and SHUnicodeToAnsiCP prototypes 2020-09-18 17:09:29 +09:00
Aobi Chan CL
e160524395 [TRANSLATION] Chinese Traditional translation improvements (#3085)
- Add Chinese Traditional language support for CHARMAP_NEW, DRWTSN32, UTILMAN, CHKDSK.
- Improve translation for CLIPBRD, MSCONFIG(_NEW), NOTEPAD, SHUTDOWN, SNDREC32, WINHLP32, DISKPART, FORMAT, REGSVR32, RUNDLL32, USERINIT, DESK.CPL and TIMEDATE.CPL.
2020-09-18 00:50:27 +02:00
Kyle Katarn
ac2b2ef8c7 [CMD] HISTORY: Fix command output (missing linefeed) (#3205)
CORE-12603

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-18 00:17:08 +02:00
Katayama Hirofumi MZ
378b26ce27 [KERNEL32] Improve SetComputerNameExW (#3171)
Reduce failures of kernel32_apitest SetComputerNameExW testcase and improve SetComputerNameExW.
2020-09-17 23:51:47 +09:00
Katayama Hirofumi MZ
8c87489a43 [COMCTL32][SHELL32] Fix arrow keys and reordering on ListView (#3162)
- Disable special auto-arrange codes in LISTVIEW_GetNextItem function.
- Add auto-arrange reordering codes on CDefView.
CORE-16875
2020-09-17 22:18:34 +09:00
Jérôme Gardou
0f66c66f72 [DBGHELP_WINETEST] Add from wine-staging 5.16 2020-09-16 10:36:03 +02:00
Jérôme Gardou
f2cf465dba [DOC] Update README.WINE to reflect dbghelp latest status 2020-09-16 10:36:03 +02:00
Jérôme Gardou
7837dcfc60 [WINESYNC]: dbghelp is now in sync with wine-staging wine-5.16 2020-09-16 10:36:02 +02:00
winesync
c15a8e78b0 [WINESYNC] dbghelp: Always check for debug symbols in BINDIR.
wine-staging patch by Sebastian Lackner <sebastian@fds-team.de>
2020-09-16 10:36:02 +02:00
winesync
767cb4cff4 [WINESYNC] dbghelp: Add xmm and mxcsr register mapping functions for i386.
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e965d60b542c0baa6f79605f45669a2ea9bceb8 by Vijay Kiran Kamuju <infyquest@gmail.com>
2020-09-16 10:36:02 +02:00
winesync
97b990849f [WINESYNC] dbghelp: Replace another usage of GetEnvironmentVariable() with the target process's environment.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 70b2d181b1547dbe3c2a62e57c6afb0ee903f358 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:36:02 +02:00
winesync
ee8def7d76 [WINESYNC] dbghelp: Ignore missing debug info in SymInitializeW.
When fInvadeProcess is used, we return an error if the target process
is found but its debug info is not. We should only return an error if
the process is not found.

This fixes a SymInitializeW popup error on Hard Reset Redux startup.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 774ee4734a7d6c02f648fdf1747df837c964583d by Rémi Bernon <rbernon@codeweavers.com>
2020-09-16 10:36:01 +02:00
winesync
c8c8313c67 [WINESYNC] dbghelp: Remove support for PPC32.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 30f17befaf216a42a4e2cfbca3ed7bdce43e476a by André Hentschel <nerv@dawncrow.de>
2020-09-16 10:36:01 +02:00
winesync
5637f59e51 [WINESYNC] dbghelp: Use debuggee environment in search_unix_path.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7b6f6257bc7e9d8f8a93dfa969510ab4aa16e765 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:36:00 +02:00
winesync
76ecb16c96 [WINESYNC] dbghelp: Fix the spelling of a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab4665f4ae3c67317e21d42868cae0af72ffcb7a by Francois Gouget <fgouget@free.fr>
2020-09-16 10:36:00 +02:00
winesync
be0572902a [WINESYNC] dbghelp: Use debuggee environment variables in search_dll_path.
This fixes searching wow32 binaries, where debuggee search path is
different than debugger's.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2b0977fc711e1faadfef69e3a46c2d1848b4826b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:36:00 +02:00
winesync
37eff17d4d [WINESYNC] dbghelp: Use stricmp() instead of _strnicmp(..., -1).
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 341feeb10eddd3d139c4c206a43db80d0671ff3b by Alexandre Julliard <julliard@winehq.org>
2020-09-16 10:35:59 +02:00
winesync
4cc24ef20e [WINESYNC] dbghelp: Make qsort callback explicitly cdecl.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0163db5152124efbd1a5ba46aa52a6da66d897d5 by Alexandre Julliard <julliard@winehq.org>
2020-09-16 10:35:59 +02:00
Jérôme Gardou
55d0c3cf66 [WINESYNC] Improve script
- Fix situation with added or deleted files
 - Improve getting blob IDs
 - Improve messages
2020-09-16 10:35:58 +02:00
winesync
4710112bb7 [WINESYNC] dbghelp: Get rid of no longer needed #ifdefs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e014d325ddb87dbb4678ef47ef17f9e7f49b0248 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:58 +02:00
winesync
63c0d5e35a [WINESYNC] dbghelp: Get rid of no longer needed HAVE_ZLIB checks.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6b1bc0beac510aa48a848b8182b9310f92609dd0 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:58 +02:00
winesync
0fd6a91bf1 [WINESYNC] dbghelp: Don't use PATH to search for libraries.
It should be used only for the main executable, for which we get full
path anyway.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5bc58410f28aefea3c3f41e056a372aff4dceac7 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:58 +02:00
winesync
9a9f849895 [WINESYNC] dbghelp: Remove unneeded includes.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ceae3f0207fb8f174d0a762ef7fe4f405316541f by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:57 +02:00
winesync
237aa3a9c1 [WINESYNC] dbghelp: Import zlib inflate code.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d483eb21cff1f2b44f048195106d87a414dd66b8 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:57 +02:00
winesync
b991284341 [WINESYNC] dbghelp: Always build all loader backends.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 131fb79535c74e8011ac82c279f6f4a9d971e1af by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:57 +02:00
winesync
833e54f874 [WINESYNC] dbghelp: Fix GCC warnings in macho_module.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9896f1ce33561771989d3117c1536fb472df8558 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:57 +02:00
winesync
27e660114b [WINESYNC] dbghelp: Introduce read_process_memory helper.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 26f5bfdd4d071a91a38b25c0064ed5ea48993249 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:56 +02:00
winesync
4959c2568a [WINESYNC] dbghelp: Ignore N_INDR symbols.
These are aliases for another symbol. They are often seen on Mac OS when
a dylib reexports some symbols defined in another dylib.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 53b5c3b6c674f4bd6d02f20986598b5b6580a2d8 by Chip Davis <cdavis@codeweavers.com>
2020-09-16 10:35:56 +02:00
winesync
9a390991b8 [WINESYNC] dbghelp: Use mount manager to lookup dsym by uuid.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 88edff846714422c9f875fe6c9e509ee34072d27 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:56 +02:00
winesync
329ea60f7c [WINESYNC] dbghelp: Factor out query_dsym.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c3c2cda9d2792f8c9c612b5bd6e9fd4d08cbb073 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:56 +02:00
winesync
e2e7cce46f [WINESYNC] dbghelp: Don't bother trying to initialize loader backend if we can't get debug base address from PEB.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3047385437c7ef36996d0418ac378677f3e9d67c by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:56 +02:00
winesync
13d60fef36 [WINESYNC] dbghelp: Get rid of get_dyld_image_info_address.
We should get the address from PEB anyway.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f2b8af7e7e159a5259aaab42169c4f8220b121eb by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:55 +02:00
winesync
7a5f84b3a8 [WINESYNC] dbghelp: Don't use _NSGetExecutablePath in macho_search_loader.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dab78486d3d0063e32e99fb795311b74eb632d3a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:55 +02:00
winesync
ad13638bd6 [WINESYNC] dbghelp: Use local constants definitions instead of mach-o/loader.h.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e341bd7fe4f2572597ee10cbed5bb2a76ddcc03a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:55 +02:00
winesync
1358cd2d9b [WINESYNC] dbghelp: Don't use stdint.h types.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1420e64e5f1df4c8bbb016d1b8ff71337cda4884 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:55 +02:00
winesync
95450374ac [WINESYNC] dbghelp.c: Use local mach header declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0c56a8f87bac01488349af0ffe3923a1672e72a0 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:55 +02:00
winesync
92dc946e86 [WINESYNC] dbghelp: Use local symtab and segment commands declarations.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7b2e53f5b550e8a4d844c5e74941b02d1c770b0b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:54 +02:00
winesync
63f681c1e6 [WINESYNC] dbghelp: Use local fat header declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8230889f1f2e545222f3a51ba9b47fa02196eb98 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:54 +02:00
winesync
eff9360f47 [WINESYNC] dbghelp: Use local macho section declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 64341284c58bcc22f13f8146bcb6c8a08c0c4ff2 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:54 +02:00
winesync
739259ac2f [WINESYNC] dbghelp: Use local macho load command declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c695e7e99e0a06b6039d46f98fea35c363aa6cbe by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:54 +02:00
winesync
00783527e0 [WINESYNC] dbghelp: Don't store entire mach header in image_file_map.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7254579417f337063734933975b25d21da4d31f3 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:54 +02:00
winesync
45b55dc9b2 [WINESYNC] dbghelp: Don't use system headers for ELF declarations.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b664ae8e60e08224cdc3025c28a37cb22356aaa4 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
9228b75d7f [WINESYNC] dbghelp: Use local ELF constants definitions.
Based on glibc.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 56f2b950c3a090d1951edd687e1c6e9ed9388732 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
d8cc719cb4 [WINESYNC] dbghelp: Don't use ELF32_ST_BIND and ELF32_ST_TYPE macros.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6fde25300d6c93290887e47c3c4bfd55a948609b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
345ffb9a3c [WINESYNC] dbghelp: Inline ELF magic constants.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 66ab2c503de6d39f1a0256d66511da05d326ac5e by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
9e0f62624e [WINESYNC] dbghelp: Use local symbol table entry declaration.
Based on glibc.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7b12b1849c711476b64b3ed6bc60805ff8f2715f by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
44ef7f5ff5 [WINESYNC] dbghelp: Use local dynamic section entry declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 849cf6ed514aaa5071e61dc471dca6be1d58393f by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
582c24d09a [WINESYNC] dbghelp: Use local ELF program segment header declaration.
Based on glibc.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 186d610442e1db009e40945fc4725c43ea8721ab by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:53 +02:00
winesync
2a7f64af1f [WINESYNC] dbghelp: Use local elf_section_header declaration.
Based on glibc.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a6f0fe8d1ca16243771784ec34c49453c96e6479 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:52 +02:00
winesync
6c0765a0ec [WINESYNC] dbghelp: Use local elf_header declaration.
Based on glibc.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 78845911da06fc75c6d74237f816a1547c24b20b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:52 +02:00
winesync
8f9ab8954d [WINESYNC] dbghelp: Use local declarations of r_debug and link_map structs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 11ea231501f4f2a54433031ada21052d81641fee by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:52 +02:00
winesync
72a0721cf7 [WINESYNC] dbghelp: Use local AT_SYSINFO_EHDR definition.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 620019fd71fd519470b4d624949a74fba9f350e9 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:52 +02:00
winesync
77888f05a4 [WINESYNC] dbghelp: Don't use *_NULL constants.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ee34cf365d34b23669c2ead03b040f09b7fb1e2b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:52 +02:00
winesync
eed384bb16 [WINESYNC] dbghelp: Use local NOTE_GNU_BUILD_ID declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2534c2a2d22d3c610ffdfbb6b33e0b5176509aa1 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:52 +02:00
winesync
aa015b65dc [WINESYNC] dbghelp: Fix misleading indentation warning.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 94ad6bd2e66f589303fe9102b9a81b1f3e8ea9c6 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:51 +02:00
winesync
36388062cd [WINESYNC] dbghelp: Pass stab size to stabs_parse.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9c2cedabc7c7b48c4f9042d444c45a3036cfd4be by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:51 +02:00
winesync
7fa8c40ed5 [WINESYNC] dbghelp: Use local declaration for 64-bit macho nlist.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f48f8cc39980f2d93015ecd56f28e3e9f52843fe by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:51 +02:00
winesync
43384a1d3c [WINESYNC] dbghelp: Use local stab_nlist declaration in macho_module.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 061146c2ab530a54f8323331e88c5771dd7bba49 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:51 +02:00
winesync
2d57c6b88f [WINESYNC] dbghelp: Clear N_PEXT flag of stab type in macho files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 47f1c5a993ed34e5f1e4783360019613d0f9682a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:51 +02:00
winesync
e99c66b8bc [WINESYNC] dbghelp: Provide N_PEXT and N_SECT defines when not available.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 208719a7507c41b77d3db9f6b8ffbcc5a4e02f3d by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:51 +02:00
winesync
d6dca1da17 [WINESYNC] dbghelp: Use DWARF registry mapping quirk only for actual macho modules.
Fixes handling DWARF in PE on macOS.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3b6c268380d703079fa3c5ca06f67b6feb02487f by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:50 +02:00
winesync
0b8d0e0a61 [WINESYNC] dbghelp: Pass module to map_dwarf_register.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5d8067c6088a30cdb4fe6945e6ae1cda0da85467 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:50 +02:00
winesync
e656f48c38 [WINESYNC] dbghelp: Define NT_GNU_BUILD_ID regardless of whether __ELF__ is defined.
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f7a091af4812ef692fb2b1ec835b8146668aec5c by Gerald Pfeifer <gerald@pfeifer.com>
2020-09-16 10:35:50 +02:00
winesync
9b31d0349d [WINESYNC] dbghelp: Use LONG_PTR instead of long type.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f803da493aeb4cf118fb9b076e8042c2535fbcdb by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:50 +02:00
winesync
31d5e64eb8 [WINESYNC] dbghelp: Remove unused code in module_find_cb.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8d702a3aa54fc61bd146f584e66364a12a0ee3a0 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:50 +02:00
winesync
e0db46fa2e [WINESYNC] dbghelp: Move reading debug base address from PEB to check_live_target.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e3354e44f17d74f0ac4547d8a4494c83ea3d6d37 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:50 +02:00
winesync
ab49d97a84 [WINESYNC] dbghelp: Use PE type for virtual modules.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 635506921a28c65bfc9b339d59c63d96092d97d8 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:50 +02:00
winesync
065f0d9772 [WINESYNC] dbghelp: Explicitly pass file type to path_find_symbol_file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c8b5a3be55963fcda51b8e13c10bcd45ecc4bc97 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:49 +02:00
winesync
87c943516f [WINESYNC] dbghelp: Use loader_ops for load_debug_info.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a676c5785ea56fede37370cd6d5e4508e9d8c62a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:49 +02:00
winesync
f308fa857b [WINESYNC] dbghelp: Use loader_ops for load_module.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5ae3f969d4ec525a14a8109a5ee4c5a2e2238405 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:49 +02:00
winesync
afc1e47291 [WINESYNC] dbghelp: Use loader_ops for enum_modules.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 16a3481bd22243183281c60ff375d4e61d5c4198 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:49 +02:00
winesync
df9fadccb3 [WINESYNC] dbghelp: Pass process struct to image_uses_split_segs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2a5160c4f2eb80dcc8770cd10d702a5d8233314f by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:49 +02:00
winesync
ba7ee56d52 [WINESYNC] dbghelp: Use loader_ops for fetch_file_info.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1bbd54409a546c26af8ac2a64f2603114d73a18c by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:49 +02:00
winesync
f9b46d2c9f [WINESYNC] dbghelp: Don't use elf_fetch_file_info and macho_fetch_file_info in module_find_cb.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id adecdb1d01487af16f5f708ae92a05ba4707187e by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:48 +02:00
winesync
031700a760 [WINESYNC] dbghelp: Introduce loader_ops to abstract platform-specific loader and use it to synchronize module list.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fec0157585e9d8bd03a8a71d1ed9b9d7ca59cb56 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:48 +02:00
winesync
86173a5f26 [WINESYNC] dbghelp: Move loader search functions to the end of module files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f30fdd1822462326d3339a21b838d28b623e6486 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:48 +02:00
winesync
58c50e916e [WINESYNC] dbghelp: Pass process struct to elf_enum_modules and macho_enum_modules.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 724f433f39f71e8869c49a5960364c5669759b08 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:48 +02:00
winesync
ca7d01b33f [WINESYNC] dbghelp: Store process struct pointer in dump context.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6b3018d03da983050516821caa2aada2f4814678 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:48 +02:00
winesync
fbc5f830fc [WINESYNC] dbghelp: Use search_dll_path to load seach macho files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id be9072ec743e22ed6a20288e5539b8ba307f9280 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:48 +02:00
winesync
8194b5dee6 [WINESYNC] dbghelp: Use search_unix_path to load seach macho files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c3bb866bfc53b8c3b7b7355cb8311325a40a0a6b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
73bb9b5ffd [WINESYNC] dbghelp: Introduce search_unix_path helper and use it in elf_search_and_load_file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ca49552f646bf30b492da4668745f9f65b9de18d by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
bf9bb9c911 [WINESYNC] dbghelp: Use search_dll_path in elf_search_and_load_file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ee5d29b7aa85c109bf9ad5ac59fbe484f53da0ea by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
e01d28abd8 [WINESYNC] dbghelp: Make dll builtin PE path search helper more generic.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 21af2e194792aaa263c144c8fb42fe678ad2ecd7 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
981f24bd1a [WINESYNC] dbghelp: Use file_name helper in more places.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 77e880e6d22ef9be031f783fbb4b6a5e8c8826e8 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
eaa0c1a8d7 [WINESYNC] dbghelp: Rename helpers to make unicode variants default.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 63d41a41f21c4d9f32b484d6c7ed78c9d7b2a48d by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
cf4c36cd26 [WINESYNC] dbghelp: Use page size from sysinfo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1ece841d9354296f374228b9e16246a076f57196 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:47 +02:00
winesync
e2e4ea2f5f [WINESYNC] dbghelp: Call GetSystemInfo in DllMain.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7544b9f6fb0bf39c714452968e20e478efaa104a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:46 +02:00
winesync
6a54330242 [WINESYNC] dbghelp: Use Windows API to map macho files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ebf57f01f4890b726a0af702ab7751258f5ab03d by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:46 +02:00
winesync
429c6cd3aa [WINESYNC] dbghelp: Lookup real image paths in image_locate_debug_link.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 838de56e0ac5b91e2ffa27a696d33e0f09179b2e by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:46 +02:00
winesync
5768b7b75c [WINESYNC] dbghelp: Support PE debug link files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2642f43eabe6c61341daee24487372b57723894d by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:46 +02:00
winesync
710c080147 [WINESYNC] dbghelp: Support GNU debug link and build id in PE files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0dd495868846f30d9bb8f15f389d2b1ff6f383cb by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:46 +02:00
winesync
ebdb2b35d9 [WINESYNC] dbghelp: Move elf_check_alternate implementation to module.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4694801e4f58f0e856327d251ac98cfb573fd83b by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:46 +02:00
winesync
1a2b28fc64 [WINESYNC] dbghelp: Move get_dos_file_name to path.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d38682397997c56359f6d161467a56ffe5bfa9fa by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
56b57ef7c5 [WINESYNC] dbghelp: Use elf_check_debug_link in elf_locate_build_id_target.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 171c6fadab8eb444968c1b3a4b364e2e978a639a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
3d39743d1b [WINESYNC] dbghelp: Check checksum before mapping elf file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c1d867fa872fafe1e6cc54ba6da63868fb7a4a6f by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
9743bd26bd [WINESYNC] dbghelp: Pass module struct to elf_locate_debug_link.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5ba1c5960e716bdec9052efeb9f3ddfba3cf9e0c by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
f71124fa11 [WINESYNC] dbghelp: Support Windows paths in elf_locate_debug_link.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e1b28a9c988ef0ff49d7254fd7ba05316f1c9b98 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
9a74d137ed [WINESYNC] dbghelp: Move HANDLE-based crc32 helper to dbghelp.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a5a6b0dcb65d8e3576e34d350c80f4789dcfdb7a by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
6a1595b09d [WINESYNC] dbghelp: Introduce generic image_unmap_file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1d96af362789aa8aaa0be94a046b0afba2ecefb3 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:45 +02:00
winesync
fff3c0ca2c [WINESYNC] dbghelp: Use vtbl to handle different image_file_map types.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 95a5f8296188d7dd8ffb86afd4f0c3280e2f5656 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:44 +02:00
winesync
2fc432db92 [WINESYNC] dbghelp: Move alternate file map pointer to generic image_file_map.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 02dfd959ca6f2295ca279ab65f6b6429cd53673c by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:44 +02:00
winesync
bf6f0cfe9b [WINESYNC] dbghelp: Use generic image_find_section in elf_check_alternate.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a3e1c7fa02351b032de60fc2a685f14e9f7308fe by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:44 +02:00
winesync
4fc82fc5bd [WINESYNC] dbghelp: Use Windows API to map ELF files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a60b3985bf37827fd0b0f7583c31dcf52069b4a8 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:44 +02:00
winesync
c82f34344e [WINESYNC] dbghelp: Search also real path location in path_find_symbol_file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d731208602393877709d3bb0bdeb28c80f9719b0 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:44 +02:00
winesync
95f6a74d85 [WINESYNC] dbghelp: Try loading builtin modules from unix installation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e21b61392cbc3a4879f837316c869c44b8dcf685 by Jacek Caban <jacek@codeweavers.com>
2020-09-16 10:35:44 +02:00
winesync
a6145efdfd [WINESYNC] dbghelp: Use RtlImageDirectoryEntryToData in pe_load_msc_debug_info.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e16acf3806f9e810884d710c640f5f82c158093 by Piotr Caban <piotr@codeweavers.com>
2020-09-16 10:35:43 +02:00
winesync
e27e4dbaee [WINESYNC] dbghelp: Support 32 and 64-bit binaries in ImageDirectoryEntryToDataEx.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab4c64a4093b98ca7a74ec29a9d947333791b26d by Piotr Caban <piotr@codeweavers.com>
2020-09-16 10:35:43 +02:00
winesync
b7d8c1b1c2 [WINESYNC] dbghelp: Look for .eh_fram if no .eh_frame is found.
lld produces these, because '.eh_frame' misses the eight-character limit
by one character, but '.eh_fram' does not. This allows it to avoid
producing a string table for this common section.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8000b5415d2c249176bda3d8b49f8fc9978e1623 by Chip Davis <cdavis@codeweavers.com>
2020-09-16 10:35:43 +02:00
winesync
dfead9b2ca [WINESYNC] dbghelp: Fix MiniDumpWriteDump spec file entry.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7a567d1bb00ea2cdac0e972220b1985800ab445e by André Hentschel <nerv@dawncrow.de>
2020-09-16 10:35:43 +02:00
winesync
82a89ba33c [WINESYNC] dbghelp: Fix reading the target's dyld image info, based on its CPU architecture.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4b9defe09a24e77547cde4e8211f701a4984681b by Ken Thomases <ken@codeweavers.com>
2020-09-16 10:35:43 +02:00
winesync
30e30ca49a [WINESYNC] dbghelp: Fix reading the address of the target's dyld image info from its PEB.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 28a25b052d21a9e2e4fc3c7790711b290d44a488 by Ken Thomases <ken@codeweavers.com>
2020-09-16 10:35:43 +02:00
winesync
910ece9f87 [WINESYNC] dbghelp: Avoid dead assignment (scan-build).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ae6e4017548fc30bf5220bebc674230dc4ccfe06 by Alex Henrie <alexhenrie24@gmail.com>
2020-09-16 10:35:42 +02:00
winesync
b66bb64916 [WINESYNC] dbghelp: Prevent an invalid memory access when the search path element is empty.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d263ba97fb7c9ada7ae847909f35cbf5db671216 by Rémi Bernon <rbernon@codeweavers.com>
2020-09-16 10:35:42 +02:00
winesync
5e225d76e5 [WINESYNC] dbghelp: Return NULL instead of IMAGE_NO_MAP when PE file mapping fails.
A NULL test is always applied to the return value from pe_map_full(), but
IMAGE_NO_MAP is not NULL, it is ((void*)-1).

Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9d3687ad324f866c835c4b73922f859a30e47aee by Conor McCarthy <cmccarthy@codeweavers.com>
2020-09-16 10:35:42 +02:00
winesync
8105772fc4 [WINESYNC] dbghelp: Use RtlComputeCrc32().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a91b0faefd801d44063c8d9289dbc69de985f8b6 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:42 +02:00
winesync
70880dd15f [WINESYNC] dbghelp: Return a dos path from SymGetLineFromAddr.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=34687
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4aa7fbe0561e6a27f098a05a63c5a7d12397e678 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-09-16 10:35:42 +02:00
winesync
d8267536c4 [WINESYNC] dbghelp: Use internal flag for loading native files.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 101820d01a1c776e4b6ff42e661ac3a1380f10c7 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-09-16 10:35:42 +02:00
winesync
006ce9607c [WINESYNC] dbghelp: SymSet/GetExtendedOption support a WINE only option.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fa5e5df71db231f6fca9c7a40792c17e9bbe5027 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-09-16 10:35:41 +02:00
winesync
1a20474d99 [WINESYNC] dbghelp: Add SymGetExtendedOption/SymSetExtendedOption stubs.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3fed8787251882c70eeadefb230cd2ff4b251ac2 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-09-16 10:35:41 +02:00
winesync
f9bc55610e [WINESYNC] dbghelp: Support S_HEAPALLOCSITE entry.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 48a74277f5f9e0c87d8c01457236a89d94cb71d3 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-09-16 10:35:41 +02:00
winesync
6ba1526c9c [WINESYNC] dbghelp: Fix the spelling of a parameter.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 594a5878d0ac3b5a3aa31c27b0651b7f4bd175e1 by Michael Stefaniuc <mstefani@winehq.org>
2020-09-16 10:35:41 +02:00
winesync
8de32aeab5 [WINESYNC] include: Add missing SYMOPT_* defines.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 620da60f7f7939261192680d10012e31426ba5b3 by Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
2020-09-16 10:35:41 +02:00
winesync
ef7106dc2a [WINESYNC] include: Move inline assembly definitions to a new wine/asm.h header.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d5a372abbba2e174de78855bdd4a004b56cdc006 by Alexandre Julliard <julliard@winehq.org>
2020-09-16 10:35:41 +02:00
winesync
ad6eaca464 [WINESYNC] dbghelp: Don't use strcasecmp.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 061f65f9aaa5e6c9e34f407293906a2cc9033f0d by Piotr Caban <piotr@codeweavers.com>
2020-09-16 10:35:40 +02:00
winesync
9ed477cdd9 [WINESYNC] include: Get rid of the DPRINTF() macro.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3d6febc997c808e7c91289c34f7bb48b8b1fe2bb by Alexandre Julliard <julliard@winehq.org>
2020-09-16 10:35:40 +02:00
winesync
f672262b9a [WINESYNC] dbghelp: Make minidump_add_memory64_block() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5651c9dd2819e67ff8aba698eed8d77abe4abcb8 by Francois Gouget <fgouget@free.fr>
2020-09-16 10:35:40 +02:00
winesync
f9ad05e7f1 [WINESYNC] dbghelp: Spelling fixes in a couple of comments.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ab71398eb09d24f9f99b6266cb3005faea7a448f by Francois Gouget <fgouget@free.fr>
2020-09-16 10:35:40 +02:00
winesync
34d40a5f3d [WINESYNC] dbghelp: Support full memory dumps.
Add support of flag MinidumpWithFullMemory in function
MinidumpWriteDump. A Memory64ListStream is added to the minidump
streams and all memory regions of the process with MEM_COMMIT state
are written to the last part of the minidump file.

Signed-off-by: Eric Bissonnette <ebisso.dev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b90bbcbe750f6af0ce13f2577984f4818e05a013 by Eric Bissonnette <ebisso.dev@gmail.com>
2020-09-16 10:35:40 +02:00
winesync
84531c319d [WINESYNC] dbghelp: Make symt_get_best_at() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id edcff4046c5aa70c047c1a523a93a5cc5782fb44 by Francois Gouget <fgouget@free.fr>
2020-09-16 10:35:40 +02:00
winesync
1c16ab4847 [WINESYNC] dbghelp: Avoid using inline assembly in have_x86cpuid().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 797f93be6553d4a759473886ad00826c3371d094 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:40 +02:00
winesync
719c13083f [WINESYNC] dbghelp: Avoid using inline assembly in do_x86cpuid().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b7f3e6ba317bec299e43156efcdb5469f39a8a3c by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:39 +02:00
winesync
5f9c500b2c [WINESYNC] dbghelp: Fix build failure on macOS.
This was caused by commit 8d096fb5e262e5e87866d1a4a397da144a09b635.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 74f425e70dfbc43da1eaf9048f45bed52ef1d66c by Huw Davies <huw@codeweavers.com>
2020-09-16 10:35:39 +02:00
winesync
667215841f [WINESYNC] dbghelp: SymFromAddr: Handle 2 or more symbols at the same address correct.
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d614ac46718311f49541b32ac726c17a06077ae1 by Andreas Maier <staubim@quantentunnel.de>
2020-09-16 10:35:39 +02:00
winesync
9a139418eb [WINESYNC] dbghelp: Set last error for SymGetModuleBase-calls to ERROR_MOD_NOT_FOUND.
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6c3418914df3196bf5a464649ef302a5e942dd90 by Andreas Maier <staubim@quantentunnel.de>
2020-09-16 10:35:39 +02:00
winesync
575196093a [WINESYNC] dbghelp: Set correct values in symt_fill_sym_info (SYMBOL_INFO).
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8d096fb5e262e5e87866d1a4a397da144a09b635 by Andreas Maier <staubim@quantentunnel.de>
2020-09-16 10:35:39 +02:00
winesync
94e2d456db [WINESYNC] dbghelp: Add SYMFLAG_- and SYMTYPE_-defines.
Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3b01149d8677fa86addfb67414d793684779c5ce by Andreas Maier <staubim@quantentunnel.de>
2020-09-16 10:35:39 +02:00
winesync
616fb16a52 [WINESYNC] dbghelp: Use correct record in codeview_snarf_public.
Use public_vx iststead of data_vx for public symbols.

Signed-off-by: Andreas Maier <staubim@quantentunnel.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dbcf9728fa13ade68cc9d380002a5f6ae50fc0c0 by Andreas Maier <staubim@quantentunnel.de>
2020-09-16 10:35:38 +02:00
winesync
dfc5f68673 [WINESYNC] dbghelp: Only check process architecture if we are actually given a process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45407
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 63ef9854fb6fc91a8c956a9d91abc07e906a4a33 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:38 +02:00
winesync
58e2e22449 [WINESYNC] dbghelp: Return a Unicode path in path_find_symbol_file().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3e1a56290191e37aded204c554f2e550c0257300 by Alexandre Julliard <julliard@winehq.org>
2020-09-16 10:35:38 +02:00
winesync
989a748f81 [WINESYNC] dbghelp: Search for debug files in module path too.
Signed-off-by: Andreas Maier <andy1.m@gmx.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6030ee5f6f64a2ebe6df2e505e2588eb300222c2 by Andreas Maier <andy1.m@gmx.de>
2020-09-16 10:35:38 +02:00
Jérôme Gardou
8d3d1febad [WINESYNC] Add missing mapping for msvcpdb.h 2020-09-16 10:35:38 +02:00
Jérôme Gardou
e4721594d4 Revert "[DBGHELP] search for debugfiles in modulepath too."
This reverts commit 183294a12e.

This will be applied through the winesync script
2020-09-16 10:35:37 +02:00
Jérôme Gardou
0136b3a951 Revert "[DBGHELP] use correct record in codeview_snarf_public."
This reverts commit e3447d02c1.

This will be applied later through the winesync script
2020-09-16 10:35:37 +02:00
Jérôme Gardou
4421abdb59 Revert "[DBGHELP] Add SYMFLAG_- and SYMTYPE_-defines."
This reverts commit 9466a005e9.

This will be applied later through the winesync script
2020-09-16 10:35:36 +02:00
Jérôme Gardou
52fe276632 Revert "[DBGHELP] set correct values in symt_fill_sym_info (SYMBOL_INFO)."
This reverts commit 6175044aed.

This will be applied later through the winesync script
2020-09-16 10:35:36 +02:00
Jérôme Gardou
92cf32b433 Revert "[DBGHELP] Set LastError for SymGetModuleBase-calls to ERROR_MOD_NOT_FOUND."
This reverts commit b2bcd8afdd.

It will be applied later through winesync script
2020-09-16 10:35:36 +02:00
Jérôme Gardou
555f98267c Revert "[DBGHELP] SymFromAddr: Handle 2 or more symbols at the same address correct."
This reverts commit 0263151f3c.

It will be applied later through winesync script
2020-09-16 10:35:36 +02:00
winesync
f243e09624 [WINESYNC] dbghelp: Turn variable 'code' into a static constant.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f333c4a210e25bbb8af2adeeae0dbe006354519b by Alex Henrie <alexhenrie24@gmail.com>
2020-09-16 10:35:36 +02:00
winesync
bba2a6162b [WINESYNC] dbghelp/dwarf: Use debugstr_a() to trace external strings.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 86805c3d4b78e69e675e72f57a21254d3d580ddd by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync
f7187f092a [WINESYNC] dbghelp: Fix memory leak in SymInitializeW() (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b3717a92d11c84819ce934da39bc8f9c85582c9a by Józef Kucia <jkucia@codeweavers.com>
2020-09-16 10:35:35 +02:00
winesync
d3849da5c4 [WINESYNC] dbghelp/msc: Use the word size of the target process.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ca9b1d0077874c94715cd2ceeff114853151ed2d by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync
e9161985e1 [WINESYNC] dbghelp: Correctly determine the dyld image info address.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b7defd2946e625351111c36ff0f521b8aa9e6487 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync
5a3f69edcc [WINESYNC] dbghelp/dwarf: Use the word size of the target process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45490
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 42745c068f80b696e7402680a61c2006b68b01d0 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync
8629cdb6af [WINESYNC] dbghelp/dwarf: Allow get_context_reg() to handle different register sizes.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3507615f35777f38a20407b7879f7c7d6510b12a by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:35 +02:00
winesync
1825a61069 [WINESYNC] dbghelp/dwarf: Use the correct backend CPU in dwarf2_virtual_unwind().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9ae588a96ef5f07ba22e0fadc3aacf61b274efe5 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:34 +02:00
winesync
7470eb9ced [WINESYNC] dbghelp: Use WOW64_CONTEXT instead of CONTEXT for i386 backend.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3ce304e60100962503bcded0adb69659f849d1b4 by Zebediah Figura <z.figura12@gmail.com>
2020-09-16 10:35:34 +02:00
Jérôme Gardou
4084b5f214 [SDK] Add WOW64_CONTEXT structure 2020-09-16 10:35:34 +02:00
winesync
148591a8a6 [WINESYNC] dbghelp: Fix loading of Mach-O load commands for 64-bit binaries.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3ff8fa7ed1d28b38703125b0c8c632410e3fd980 by Ken Thomases <ken@codeweavers.com>
2020-09-16 10:35:34 +02:00
winesync
4e89603929 [WINESYNC] dbghelp: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 053a7e225c8190fd7416b3f3c3186f1ac230eeb3 by Michael Stefaniuc <mstefani@winehq.org>
2020-09-16 10:35:34 +02:00
winesync
d3247b3f59 [WINESYNC] dbghelp: Recompute location after fixing it.
Fix a assertion raised by every exception with newer clang versions (>3.7) at least on ARM64:
../../../dlls/dbghelp/dwarf.c:1641: void dwarf2_parse_variable(dwarf2_subprogram_t *, struct symt_block *, dwarf2_debug_info_t *): Assertion `subpgm->func' failed.

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3d482d3f9f0a3ffa69540af87594b3c1dc46e07b by André Hentschel <nerv@dawncrow.de>
2020-09-16 10:35:34 +02:00
winesync
d119141669 [WINESYNC] dbghelp: Map SIMD dwarf registers on ARM64.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 86864486be64a277f6edf8e66709cd0f17a4eed9 by André Hentschel <nerv@dawncrow.de>
2020-09-16 10:35:33 +02:00
winesync
eaf6edad46 [WINESYNC] dbghelp: Read the stabs nlist entry corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7d441808ac3b1d8bcef7795b636bda14c31c927b by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync
f631b4d120 [WINESYNC] dbghelp: Translate the 32-bit Mach-O section header to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1dc9bb70cd16fa7b37e8fd6e82ed18311ddfbe38 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync
75e77444c6 [WINESYNC] dbghelp: Read the Mach-O segment command corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0fc3c33637d4c8eff3f4373d374b3feb402bce4a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync
0d3ccc92fb [WINESYNC] dbghelp: Pass an image_file_map to macho_enum_load_commands().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bf7681cb2f3a73239170b4f0ebc8f6b38bc027ec by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync
9985483679 [WINESYNC] dbghelp: Read the 32-bit Mach-O header.
It is identical to the 64-bit header, except for the "reserved" field.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f2e38e17956197180ad730fd00a267fc25d4f238 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync
887025f3a0 [WINESYNC] dbghelp: Determine the target Mach-O architecture from the process's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f0ee3471f369bc3d3911647c7efa63fc503e6ce2 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:33 +02:00
winesync
c719e68907 [WINESYNC] dbghelp: Read the r_debug and link_map structs corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 99e818154a803c8cfd2478b9db3b455fc9adef30 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
76ad5c4b68 [WINESYNC] dbghelp: Translate the 32-bit ELF symbol struct to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7e4fd17d5b62e888fd6a3a452dc3ee22dfb74ccd by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
4a24f9acfc [WINESYNC] dbghelp: Read the Elf_auxv_t struct corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 51ada19ac235df104e95476e9b3fa8204357bb9a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
dd5baf8750 [WINESYNC] dbghelp: Read the Elf_Dyn struct corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bb53152faab705d972de3763ddd9bb3351e92460 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
48c551a237 [WINESYNC] dbghelp: Read the ELF program header corresponding to the target's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id bd620ffb443eaa2dba997dc5597cb37c44d757b7 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
8428b1f8c3 [WINESYNC] dbghelp: Add a missing include to fix the build.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cf78601b3781e64ea2745cf8084848acb69300a8 by Huw Davies <huw@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
23a2d2713d [WINESYNC] dbghelp: Translate the 32-bit ELF section header to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4005901773bf1842804c40d928a944623e11d238 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:32 +02:00
winesync
1983f47206 [WINESYNC] dbghelp: Translate the 32-bit ELF header to the 64-bit one.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 799e0bfa57c4c2a7922c43031bd0d95c6add6a1a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync
7adbd03d5f [WINESYNC] dbghelp: Detect ELF architecture before reading the whole header.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a612f1f56fefd00ebe6d8f7bcf7c826f5aa85eab by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync
de68f04b7c [WINESYNC] dbghelp: Don't enforce child architecture in elf_map_file().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c2c0e4fe510f75c757e5dbdc1b727a7c9f3d6f33 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync
ee8dbf8e10 [WINESYNC] dbghelp: Correctly determine the wine loader base address.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 185d9ee7ebf56e0663f715e532f2ee2c27289f12 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync
f69be6c561 [WINESYNC] dbghelp: Determine the wine loader name from the target process's architecture.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id a981edf0bc7c828e6b55fdc73b51a2f457043c4a by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
winesync
3346544802 [WINESYNC] dbghelp: Add a helper to check if a given module is the Wine loader.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9b973eee9e06a3dca7a6c5739741446bf46e27f5 by Zebediah Figura <zfigura@codeweavers.com>
2020-09-16 10:35:31 +02:00
Jérôme Gardou
7431b80ae6 [WINESYNC]: revert wine-staging patchset for dbghelp 2020-09-16 10:35:30 +02:00
Jérôme Gardou
6cce4bdeba [WINESYNC] Add dbghelp entry 2020-09-16 10:35:30 +02:00
Jérôme Gardou
a84b0dbe6b [LIBWINE] make wine_get_dos_file_name available
And complain loudly when we get a *real* unix file name
2020-09-16 10:35:30 +02:00
Jérôme Gardou
9fc0c7a372 [CRT] Let's have llabs for every compiler out there 2020-09-16 10:35:29 +02:00
Kyle Katarn
579f501215 [RAPPS] Fix of unhandled exception when trying to modify/uninstall without selection (#3185)
CORE-17279
2020-09-15 22:50:12 +02:00
Joachim Henze
a27f0debca [MMIXER] Fix NULL dereference CORE-17276
This lead to a crash of winmm:mixer
during "GCCLin_x86 on Test VBox".

The crash was exposed when new code paths
were activated by 0.4.15-dev-791-g
6d7ebc2048

I do intend to port this commit back into 0.4.14RC.
2020-09-15 20:54:50 +02:00
Dmitry Borisov
0dfc7f06b7 [VIDEOPRT] Add global variable for debugging video drivers (#3080)
Reference: https://docs.microsoft.com/en-us/previous-versions/ff570170(v=vs.85)
2020-09-15 15:24:42 +03:00
Dmitry Borisov
0f8de896aa [PCIIDEX] Implement missing PciIdeXDebugPrint function (#3146)
It's useful for debugging IDE controller minidrivers, and it makes pciidex.sys work on Windows XP/2003.
- https://user-images.githubusercontent.com/37072976/92856412-39d56b80-f415-11ea-880f-48998c11112d.png

CORE-17256
2020-09-15 15:10:52 +03:00
Serge Gautherie
345ad55319 [BROWSEUI][USER32] Explicitly use MAKEINTRESOURCEW() for consistency (#3192) 2020-09-15 14:56:51 +03:00
Michael Stamper
b43e4c981e [KDBG] Fixed handle leak in KdbpSymLoadModuleSymbols() when RosSymCreateFromFile() fails (#3184) 2020-09-14 21:48:06 +02:00
Joachim Henze
6d7ebc2048 [WDMAUD.DRV] Workaround multiple issues with AC97 driver from rapps
By taking alternative code-paths in WdmAud and bypassing Sysaudio.

This relies on the patch 0.4.15-dev-765-g
b8e936a57b

It fixes the following bugs/regressions:
-CORE-13202 Unhandled exception from wdmaud.drv when recording sound in Scratch 1.4 leads to app-crash
-CORE-13488 A deadlock in "DiabloII" character selection screen and "The Lion King II"
-CORE-8726/CORE-9986/CORE-16564 AC97 driver is now working in the same session where driver was installed, no reboot-orgies needed anymore
-CORE-9981 almost 100% fixed, DosBox + Commander Keen6 properly plays music instead of garbled output,
           same improvement for ScummVM 2.0 with Monkey Island 2

The playback is not yet *entirely* perfect, still a few hiccups now and then, but
by orders of magnitude better than before.
2020-09-14 17:12:16 +02:00
Katayama Hirofumi MZ
78edea8164 [SHELL32_APITEST] Strengthen ShellExecCmdLine testcase (#3164)
- Add tests for "My Documents" and "Control Panel".
- Add some comments for usability.
CORE-16939
2020-09-14 13:25:45 +09:00
Hermès Bélusca-Maïto
a373198419 [SHELL32] Fix boot to shell, addendum to commit 14599b0a.
shell32.ShellMessageBoxW redirects to shlwapi.ShellMessageBoxWrapW.
However the latter one (shlwapi) is exported by ordinal only.
Trying to use in shell32.spec file the following syntax:

  182 varargs ShellMessageBoxW() shlwapi.ShellMessageBoxWrapW

will therefore fail at runtime, because Windows/ReactOS will fail to
snap shlwapi.ShellMessageBoxWrapW.
Using instead an export by orginal:

  182 varargs ShellMessageBoxW() shlwapi.#388

actually fails as well, but at link time, by both MSVC' LINK and GNU's
dlltool.
This generates a .def file containing the line:

  ShellMessageBoxW=shlwapi.#388 @182

It is not clear why it fails, because according to:
https://docs.microsoft.com/en-us/cpp/build/reference/exports?view=vs-2019
and
https://devblogs.microsoft.com/oldnewthing/20121116-00/?p=6073
this should be possible.
However one encounters the same errors as those described at:
https://groups.google.com/forum/#!topic/microsoft.public.vc.language/AVnx-EnYdsY
and
https://www.xspdf.com/questions/22333.shtml
...

So instead we use another trick, that appears to be already in use in
the shell32.spec. Since the shlwapi functions are imported because we
link to it, this means that ShellMessageBoxWrapW() is already available
through this import. So we can specify it in the .spec file as is,
without a full name prefixed with "shlwapi." .
Therefore the associated shell32.ShellMessageBoxW function will instead
link to the small ShellMessageBoxWrapW() import stub that is generated
automatically.
2020-09-14 05:54:13 +02:00
Serge Gautherie
a04831677e [PROGMAN][CRT][USER32] Do not use LoadLibraryEx() NT6+ flags (#3152)
CORE-12004
2020-09-13 23:42:09 +02:00
Kyle Katarn
aad9bb8e8a [TRANSLATION][SHELL32] Localization of "System Folder" in My Computer types (#3168)
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
Co-authored-by: JoseSanchezz <67137372+JoseSanchezz@users.noreply.github.com>
2020-09-13 23:16:19 +02:00
Jose Carlos Jesus
b52189873d [TRANSLATION][SCREENSAVERS][SYSSETUP] Add Portuguese (PT) translation (#3156) 2020-09-13 23:14:05 +02:00
Kyle Katarn
f07ace6aa2 [RAPPS][CONSRV] French translation update (#3160)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-13 23:12:52 +02:00
Kyle Katarn
6d4b853b8a [SHELL32] Improve Format dialog debug log (trivial) (#3176)
- Logging of name for unknown filesystem.
- Fix some trace content as not only HDD could be affected.
2020-09-13 23:05:04 +02:00
Kyle Katarn
860a985f26 [FORMAT] Fix of output text overlap in console when finished (#3177)
At the end of the format operation, text in console got overwritten and leftovers from previous line remained displayed.
2020-09-13 23:02:09 +02:00
Kyle Katarn
51023e3a2e [FORMAT] French translation fix (#3178)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-13 23:01:07 +02:00
Hermès Bélusca-Maïto
c58a601602 [CMD] Document the two extra file attributes the enhanced batch/FOR variables %~aX could handle on Windows >= 8.
They are currently specified for documentation purposes (i.e. what
Windows 8+ CMD.EXE can report) but not used yet, since ReactOS does not
support them.
2020-09-13 22:50:11 +02:00
Hermès Bélusca-Maïto
95466904db [CMD] SHIFT: Use _istdigit(). 2020-09-13 22:50:10 +02:00
Hermès Bélusca-Maïto
00ce3c48fe [CMD] Use pointers to const strings in error functions, where applicable. 2020-09-13 22:50:09 +02:00
Hermès Bélusca-Maïto
3f8f3a2bba [CMD] Minor formatting only. 2020-09-13 22:50:09 +02:00
Hermès Bélusca-Maïto
14599b0a37 [SHELL32][SHLWAPI] Forward shell32.ShellMessageBoxW directly to shlwapi.ShellMessageBoxWrapW. (#3179)
This makes ShellMessageBoxW use the correct implementation where the
text buffer size is dynamic, instead of having a too small hardcoded
size.

Fixes CORE-17271.
See also PR #3172 by Kyle Katarn, supplemented with some ideas from
Mark Jansen.

However we cannot straightforwardly implement ShellMessageBoxA around
ShellMessageBoxW, by converting some parameters from ANSI to UNICODE,
because there may be some variadic ANSI strings, associated with '%s'
printf-like formatters inside the format string, that would also need
to be converted; however there is no way for us to find these and perform
the conversion ourselves.
Therefore, we re-implement ShellMessageBoxA by doing a copy-paste ANSI
adaptation of the shlwapi.ShellMessageBoxWrapW function.

Note that, on Vista+ onwards, shlwapi implements both ShellMessageBoxA/W,
and shell32 directly forwards these exports to shlwapi, thus avoiding
these workarounds.

[PSDK] Explicily use WINAPIV for the variadic ShellMessageBoxA/W functions.

[INCLUDE/REACTOS] Add ShellMessageBoxWrapW in shlwapi_undoc.h .
2020-09-13 22:44:58 +02:00
He Yang
5077e400d5 [RAPPS] Update Chinese Simplified (zh-CN) translation (#3155)
Addendum to 7a11c65.
2020-09-13 22:00:08 +03:00
Adam Stachowicz
f3bc1b396a [NTOBJSHEX] Update Polish (pl-PL) translation (#3175)
Addendum to e358d1d. CORE-17268
2020-09-13 18:22:11 +03:00
Timo Kreuzer
3c1f6631e6 [MSVCRT] Add vista exports 2020-09-13 15:37:29 +02:00
Timo Kreuzer
767a975cf6 [MSVCRT] -i386 -> -arch=i386 for consistency 2020-09-13 15:37:29 +02:00
Timo Kreuzer
dfaba507dc [MSVCRT] Fix some architecture specific exports 2020-09-13 15:37:29 +02:00
Katayama Hirofumi MZ
f1e2c3f70e [MSPAINT] Improve Japanese (ja-JP) translation 3 2020-09-13 17:33:57 +09:00
Katayama Hirofumi MZ
6e2ede3bd8 [NTOBJSHEX] Improve Japanese (ja-JP) translation 2020-09-13 17:16:12 +09:00
Katayama Hirofumi MZ
b88717f5c4 [MSPAINT] Improve Japanese (ja-JP) translation 2 2020-09-13 17:15:05 +09:00
Katayama Hirofumi MZ
bd7ad59a48 [MSPAINT] Improve Japanese (ja-JP) translation 2020-09-13 17:01:49 +09:00
Katayama Hirofumi MZ
8396cf8696 [CONSRV] Improve Japanese (ja-JP) translation 2020-09-13 16:50:15 +09:00
Katayama Hirofumi MZ
7ec021fdc4 [NTOBJSHEX] Add Japanese (ja-JP) translation 2020-09-13 16:39:29 +09:00
Michael Stamper
b8e936a57b [WDMAUD] Fix race condition bug with USE_MMIXER_LIB defined (#3148)
Remove misuse of multithreading and use NtDeviceIoContol with completion apc
callback instead (mirrors usage of WriteFileEx in WdmAudCommitWaveBufferByLegacy).

This fixes a crash caused by race condition. Code was simulating completion
callback using a thread, this resulted in single threaded code being executed
simultaneously by multiple threads.

CORE-17214
2020-09-13 01:56:34 +03:00
Serge Gautherie
4aeb45ce0c [KERNEL32] GetPriorityClass(): Return explicit 0, not FALSE (match return type) (#3170) 2020-09-12 21:38:06 +02:00
Stanislav Motylkov
25458c7775 [NTOBJSHEX] Update Russian (ru-RU) translation
Addendum to e358d1d. CORE-17268
2020-09-12 22:26:52 +03:00
Kyle Katarn
e358d1d219 [NTOBJSHEX] Localize the descriptions of the NT object and registry shell extension (#3167)
CORE-17268
2020-09-12 19:43:59 +02:00
chirsz
cd2eaf1e51 [CONSRV] Improve zh-CN translation (#3157)
The new word is more in line with PRC people's usage habits, and it
is actually used in the Simplified Chinese translation of Windows.
2020-09-12 18:23:05 +02:00
Katayama Hirofumi MZ
de9c32bfed [SHELL32_APITEST] Strengthen ShellExecuteW testcase (#3165)
Add tests for special folders. CORE-16939
2020-09-13 00:47:56 +09:00
Timo Kreuzer
61192390cf [KERNEL32_VISTA][NTDLL_VISTA][RTL_VISTA] Move Vista Rtl functions from kernel32_vista and ntdll_vista to rtl_vista (#3149)
* Move RtlRunOnce functions from kernel32_vista to rtl_vista and export them from ntdll_vista
* Move condvar.c and srw.c from ntdll_vista to rtl_vista
* Move ntdll_vista build script to a subfolder of ntdll

The RtlRunOnce functions are taken from wine, completely unmodified.
The code that was in kernel32_vista had change that used a global keyed_event handle, but was never initialized, so we were still passing NULL thus using the global ExpCritSecOutOfMemoryEvent.
2020-09-12 15:04:02 +02:00
Timo Kreuzer
2aca4b2795 [ASM] Fix boot with VS 16.7.3 / MSVC 19.27
See https://developercommunity.visualstudio.com/content/problem/1180800/ml-x86-assume-directive-causes-invalid-code-genera.html
2020-09-12 15:01:04 +02:00
Mark Jansen
b5d2da6d35 [CABMAN] Replace linked lists with std::list
CORE-17231
2020-09-12 13:25:55 +02:00
Katayama Hirofumi MZ
183e1eb71b [FONTEXT] Initial implementation of CFontExt::DoGetFontTitle (#3127)
This PR is a preparation of fonts folder implementation. CORE-12861
2020-09-12 09:40:48 +09:00
Mark Jansen
ee69ca786a [CERTUTIL] Add skeleton application with support for -hashfile 2020-09-11 15:29:28 +02:00
Nguyen Trung Khanh
166f815e7b [FILESYSTEMS] Fix pool memory disclosure in filesystem drivers supporting FS_INFORMATION_CLASS.FileFsVolumeInformation (#2975)
* FileFsVolumeInformation-memory-disclosure

* remove unnecessary assignment to 0

* fix
2020-09-11 15:51:35 +03:00
Nguyen Trung Khanh
ede7a20a17 [FILESYSTEMS] Fix pool memory disclosure in NtQueryAttributesFile handlers (#2926)
Fix pool memory disclosure caused by alignment bytes at the end of the _FILE_BASIC_INFORMATION structure
2020-09-11 15:47:43 +03:00
Joachim Henze
35dbdaaa0e [SHELL32] Fix regression CORE-12364
The sorting in explorer broke by
SVN r73128 == git
24fcf531e7

Thanks to Doug Lyons for providing this patch.
I do intend to port it back into 0.4.14RC.
2020-09-11 02:24:42 +02:00
Kyle Katarn
7d44c1cb07 [SHELL32] Show "size on disk" in file/folder properties (#3107)
Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
2020-09-10 20:48:40 +02:00
Mark Jansen
f2ffd21232 [SHLWAPI] Fix SHLoadIndirectString executing code when loading a string 2020-09-10 19:45:22 +02:00
Mark Jansen
922a956805 [SHLWAPI_APITEST] Add test showing SHLoadIndirectString should load a dll as datafile 2020-09-10 19:45:15 +02:00
Oleg Dubinskiy
07f98eb10a [DBGENG] Import dbgeng.dll from Wine Staging 4.18
CORE-17153.
2020-09-10 18:19:28 +02:00
Oleg Dubinskiy
408b179220 [PSDK] Import dbgeng.h header from Wine Staging 4.18
Required by Wine's dbgeng.dll CORE-17153.
2020-09-10 18:19:28 +02:00
Serge Gautherie
e6956dd3b1 [CMAKE] Remove obsolete '_ROSBE_VERSION' checks
following upgrade to RosBE (2.1 and now) 2.2.
2020-09-10 18:16:36 +02:00
Doug Lyons
e06ec0a594 [GDI32_APITEST] Create StretchBlt Regression Test (#3109)
* Add gdi32_apitest:StretchBlt regression test.
* Give Wine proper credit for base code.
2020-09-10 18:15:12 +02:00
Katayama Hirofumi MZ
c8e3ef7894 [SHELLFIND] Split encoding detection code (#3147)
Split encoding detection code to improve code quality. This is follow-up of #3134 (7376cde). CORE-17250
2020-09-10 19:03:20 +09:00
Timo Kreuzer
92f4746845 [NTDLL] Add Vista exports 2020-09-09 19:33:29 +02:00
Timo Kreuzer
aaa7dda945 [NTDLL] Mark 2k3 only functions and improve some arch specific definitions 2020-09-09 19:33:29 +02:00
Omer I.S
bca076269f [INPUT.CPL] Update Hebrew translation (#3121) 2020-09-08 23:01:56 +02:00
Kyle Katarn
d7fd62d478 [BOOT][DIRECTX][SHELL32] Unneeded semicolons (trivial) (#3133)
Except in 3rd-party code.
CORE-13162
2020-09-08 21:57:13 +02:00
Kyle Katarn
d54e50f3dc [EXPLORER] Registry key not closed on error (#3136)
CORE-14519
2020-09-08 21:55:45 +02:00
Kyle Katarn
2c7ccf4bc9 [SOLITAIRE] French translation update (#3138)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-08 21:52:24 +02:00
James Tabor
3ca217621d [Printing] Fix Typos and Test Regressions
Fix WinSpool API regressions.
Fix typos and debug prints.
2020-09-08 13:15:16 -05:00
James Tabor
8313483202 [GDI32] Force Return if other Type of Device Requested
Fix CORE-17241 assert.
2020-09-08 12:52:28 -05:00
Victor Perevertkin
32c7c1157d [NTOS:IO] Fix a reference leak in IopSynchronousCall on failure case
Co-authored-by: Vadim Galyant <vgal@rambler.ru>
2020-09-08 14:51:20 +03:00
Mark Jansen
9bd9c9d5a4 [CABMAN] Ensure we are minimally building with c++11 2020-09-07 22:16:42 +02:00
Mark Jansen
63f3275d15 [CABMAN] Move CCFDATAStorage to a separate header 2020-09-07 22:16:42 +02:00
Mark Jansen
7394d12f7e [CABMAN] Replace some dynamically allocated strings with std::string
CORE-17231
2020-09-07 22:16:28 +02:00
Mark Jansen
58092fb4da [ATL][ATL_APITEST] Add CString::Tokenize + testcase 2020-09-07 22:13:43 +02:00
Joachim Henze
abbe656407 [SDK][NDK][PSTYPES] Fix regressions CORE-17247 & CORE-17248
By reverting the guilty rev 0.4.14-dev-1239-g
7481bda679

and placing a C_ASSERT() to protect us from doing the
same fault again in the future. (proposed by Mark Jansen)

This will allow again to use kernel32.dll from 2k3sp2 to
reach desktop and it will allow Google Earth to run again.

Unfortunately it will break CORE-16757 again,
but we did not ship that improvement yet
and we believe that revert to be correct.

When approaching CORE-16757 later, make sure to double-check
also CORE-17247 & CORE-17248 with your fix.

We did excessive testing here, see
https://jira.reactos.org/browse/CORE-17247?focusedCommentId=125166&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-125166
2020-09-07 20:32:00 +02:00
Katayama Hirofumi MZ
7376cdebb6 [SHELLFIND] Encoding-aware file search (#3134)
Consider UTF-8/UTF-16/UTF-16BE encodings in file search. Recognize UTF-8/UTF-16/UTF-16BE BOM and NULs at the beginning of the file contents. Optimize for speed.
CORE-17250
2020-09-07 22:30:47 +09:00
Katayama Hirofumi MZ
7ea54062b0 [BROWSEUI] Improve Japanese translation 2020-09-07 17:11:31 +09:00
Katayama Hirofumi MZ
2dd4f8714d [SHELLFIND] Fix directory search upon non-empty word/phrase query (#3130)
If the search phrase was not empty, it must not match the directory. CORE-17244
2020-09-07 15:48:25 +09:00
Victor Perevertkin
f562f9c5c6 [NTOS:IO] Fix IRP stack location check in IoForwardIrpSynchronously
We are doing IoCallDriver here, so the valid stack location should be
CurrentLocation <= Irp->StackCount (just a check for a completly incorrect value)
&& CurrentLocation > 1 (ensure that we have a place for another call)

CORE-17189

Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
2020-09-07 04:57:17 +03:00
Katayama Hirofumi MZ
8fa3c147b6 [BROWSEUI][SHELL32] Implement MoveTo/CopyTo buttons (#3128)
Implement the actions of the MoveTo/CopyTo/Delete buttons.
CORE-11132
2020-09-07 09:42:43 +09:00
Katayama Hirofumi MZ
828cf19a29 [BROWSEUI] Set DT_VCENTER to Explorer bars (#3135)
Make the captions of the explorer bars vertically centered.
2020-09-07 09:33:21 +09:00
Doug Lyons
7624a98706 [GDI32] Fix double cx's in call to HANDLE_METADC in win32ss painting.c (#3137)
Fix copy-paste error.
2020-09-06 18:08:03 +02:00
He Yang
e1974d21dc [RAPPS] settings read/write refactor (#3101)
* [RAPPS] move settings-related stuff to a separate file
* [RAPPS] refactor reg read/write
* [RAPPS] add params for Load/SaveSettings, no longer use global vars
2020-09-06 17:10:18 +02:00
He Yang
ce0110195b [RAPPS] improve ConInitStdStreams initialization logic (#3098) 2020-09-06 17:10:18 +02:00
He Yang
7a11c65561 [RAPPS] cmdline enhancement (#3087)
* [RAPPS] now command-line option supports begin with both / and -
* [RAPPS] Add help command with /?
* [RAPPS] add /find command
* [RAPPS] add /info option
* [RAPPS] add copyright and contact e-mail
2020-09-06 17:10:18 +02:00
赫杨
997650d424 [RAPPS] Display package name in UI too 2020-09-06 17:10:17 +02:00
赫杨
a4ac3c84b2 [RAPPS] now /INSTALL option use PkgName instead of software name
currently, PkgName is the name of ini file in DB (without suffix)
2020-09-06 17:10:17 +02:00
赫杨
da8810ab88 [RAPPS] add m_szPkgName for AvailableApps 2020-09-06 17:10:17 +02:00
赫杨
c5e111427c [RAPPS] reduce the chance assert failed 2020-09-06 17:10:16 +02:00
赫杨
4c524ee3d5 [RAPPS] some renaming 2020-09-06 17:10:16 +02:00
赫杨
d29fba7f7a [RAPPS] fix the bug that Toolbar is not working 2020-09-06 17:10:16 +02:00
赫杨
36870a02f7 [RAPPS] update some file-header
update some header to newer format, update purpose and add my name to those file I've modified
2020-09-06 17:10:16 +02:00
He Yang
4c7bd34a47 [RAPPS] appview displaymode support (#3008)
* [RAPPS] add function to set view-mode
* [RAPPS] move toolbar and searchbar into appview
* [RAPPS] remove settings and exit button from toolbar
* [RAPPS] add code to switch between list and tile mode
* [RAPPS] add auto-arrange for listview
* [RAPPS] adjust the minimum size of AppView
* [RAPPS] now image list of listview is stored inside the class
* [RAPPS] add list mode, and old list-mode are detail mode now
* [RAPPS] add check for unimplemented view mode
2020-09-06 17:10:08 +02:00
He Yang
e44c9b6630 [RAPPS] application-view refactor (#3003)
* [RAPPS] separate application-view from gui.cpp
* [RAPPS] make the code looks more clear
* [RAPPS] fix &  improve tab-order handle
* [RAPPS] now double-click / right-click & install an item will install exactly this app
* [RAPPS] add handling for DWORD timestamp for InstallDate
* [RAPPS] make the code setting column style more clear
* [RAPPS] change the owner of popup-menu
* [RAPPS] now the popup menu (the one when right-click listview) now belongs to application-view
2020-09-06 17:09:21 +02:00
He Yang
10c0ff7416 [RAPPS] listview refactor (#2970)
This makes it easier to maintain the listview, and better separates the application list and listview.

* [RAPPS] fix memory leak when cleanup. some renaming are also done
* [RAPPS] move the code adding apps info inside class CAppsListView
* [RAPPS] add table view, create listview and AppInfoDisplay inside it
* [RAPPS] rename INSTALLED_INFO as CInstalledApplicationInfo
now it corresponds with CAvailableApplicationInfo
* [RAPPS] add CInstalledApps
* [RAPPS] optimize the speed when refreshing listview
* [RAPPS] correctly handle Enum for InstalledApps
* [RAPPS] make check all working properly (this also fixes some bugs)
the old version has some bugs when check all items after switching tags in tree-view
* [RAPPS] add handling for wow64
* [RAPPS] use an inline function to replace INSERT_TEXT macro
* [RAPPS] fix the bug that StatusBar won't update when switching tags
* [RAPPS] now TableView always reset bIsAscending in SetDisplayMode
* [RAPPS] rename TableView to ApplicationView
* [RAPPS] now bIsAscending would be reset when switching column in listview
2020-09-06 17:09:20 +02:00
He Yang
4482d0f455 [RAPPS] move icon to a field in .txt file (#2941)
* [RAPPS] move icon to a field in .txt file
* [RAPPS] add function PathAppendNoDirEscapeW, apply it.
2020-09-06 17:09:20 +02:00
He Yang
e636373016 [RAPPS] rename snapshot to screenshot, filename to location (#2939) 2020-09-06 17:09:20 +02:00
赫杨
cfb0963c1f [RAPPS] update broken-img icon 2020-09-06 17:09:20 +02:00
He Yang
e506581454 [RAPPS] snapshot url support (#2925)
* [RAPPS] add snapshot url support
* [RAPPS] fix snapshot prev window won't update if size not changed
* [RAPPS] fix crash after cancel download
* [RAPPS] show broken-img if failed to create file / make network request
* [RAPPS] create a snapshots folder if it does not exist
* [RAPPS] add a helper function to perform callback
* [RAPPS] check bIsCancelled when handling ERROR_INVALID_HANDLE
* [RAPPS] remove W suffix for AsyncInetDownload
* [RAPPS] add assert for unknown event
* [RAPPS] Improve AsyncInetDownload error handling
* [RAPPS] move DisplayFailed to private, fix crash when cancelling
* [RAPPS] check for ERROR_INTERNET_OPERATION_CANCELLED
* [RAPPS] improve error logging
* [RAPPS] remove \r in error logging
* [RAPPS] rewrite AsyncInet
2020-09-06 17:09:19 +02:00
He Yang
fbf119fde1 [RAPPS] Screenshot preview and other trivial fixes (#2894)
* add one more layer of window
* using Path* API to operate path
* always use rappmgr.cab as file name when downloading db. ignore the URL
* add snapshot preview window
* show a broken-image icon when failed to load image
* add a padding between image and content, and make sure always some space is reserved for richedit
* hide the padding if snapshot window does not have a width
* some work to avoid blinking when window resizing
* add WM_PRINTCLIENT handling
2020-09-06 17:09:19 +02:00
He Yang
eacaf65459 [RAPPS] add a layer of window above the richedit (#2871)
* add one more layer of window
* use ATL to create window
* set pLink to NULL to avoid wild pointer
2020-09-06 17:09:12 +02:00
Katayama Hirofumi MZ
88cdb9696b [SHELL32] Make 'hwndServer == NULL' spams quiet 2020-09-06 22:48:29 +09:00
Katayama Hirofumi MZ
e7430a86b2 [BROWSEUI_APITEST] Follow-up of #3123 (94a413a) 2020-09-06 21:51:08 +09:00
Mark Jansen
246e6a0de9 [BROWSEUI] Stop the address edit box trying to parse a null pidl 2020-09-06 14:32:59 +02:00
Mark Jansen
53badbd2f7 [ZIPFLDR] Fix PathCompactPathW writing out of bounds
CORE-17245
2020-09-06 14:28:56 +02:00
Joachim Henze
a4fee60e46 [CMAKE] Fix regressions CORE-17243 & CORE-17246
By sledge-hammer-reverting of
0.4.15-dev-689-g
7ffb6a09c3

and 0.4.15-dev-688-g
1234223f41

Sorry, but the negative impact for other devs and the
whole project are just unbearable.
Stuff got committed meanwhile even so I had to act.
The improvements may be reapplied later when the
negative consequences are under control.
2020-09-06 04:35:33 +02:00
Katayama Hirofumi MZ
94a413ae3e [BROWSEUI_APITEST] Strengthen SHExplorerParseCmdLine testcase a bit (#3123)
CORE-14177
2020-09-06 08:03:09 +09:00
Kyle Katarn
9f428f5522 [NTUSER] Demote ERR to TRACE, also some minor corrections (#3132) 2020-09-05 17:59:10 +03:00
Katayama Hirofumi MZ
fb529605a6 [EXPLORER] Implement HSHELL_ACTIVATESHELLWINDOW (#3125)
Implement HSHELL_ACTIVATESHELLWINDOW shell hook.
2020-09-05 18:46:49 +09:00
Hermès Bélusca-Maïto
050df0f56d [CMD] Code formatting for IsValidPathName, IsExistingFile, IsExistingDirectory, and use INVALID_FILE_ATTRIBUTES instead of an hardcoded value. 2020-09-04 00:24:45 +02:00
Kyle Katarn
a5634138c3 [SETUP] French translation of missing elements (#3111)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-03 21:20:54 +02:00
Hermès Bélusca-Maïto
c81bf4f823 [CMD] IF: Add extra validity checks in ExecuteIf(). 2020-09-03 16:05:55 +02:00
Kyle Katarn
038daa6367 [SHELL32][PAINT][DRIVERS][SHELLEXT] French translation update (#3092)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-09-03 15:16:44 +02:00
Omer Itzic S
49972f51c6 [INETCPL] Update Hebrew translation (#3122) 2020-09-03 15:00:08 +03:00
Katayama Hirofumi MZ
7c134e4d14 [SHELL32] Big fix for change notification (#3048)
- Reduced the failures of SHChangeNotify testcase.
- Simplified change notification mechanism.
- Realized PIDL aliasing.
CORE-13950
2020-09-03 13:36:31 +09:00
Jérôme Gardou
7ffb6a09c3 [CMAKE] Overhaul creation from CD
Get rid of global properties and use a target-level properties instead
Limit temporary files by using cmake-generator expressions instead
Avoid function calls at the end configuration, use file(GENERATE) idiom instead
2020-09-02 11:02:44 +02:00
Jérôme Gardou
1234223f41 [CMAKE] Use cutom commands with custom targets for generating cd targets
This avoids rebuilding them over and over while there is nothing to do
2020-09-02 11:02:44 +02:00
Katayama Hirofumi MZ
d2f25ebc6a [SDK][INCLUDE] Improve EXPLORER_CMDLINE_PARSE_RESULTS structure 2020-09-02 12:47:19 +09:00
Joachim Henze
1cc84c6db7 [RPCRT4] Check hBinding != 0 CORE-16936
To prevent logspam that was introduced when syncing
to Wine Staging 4.18 in 0.4.14-dev-422-g
6feb8748d3

Thanks for anyone helping: Doug Lyons,
Fabian Maurer (Wine), Zebediah Figura (Wine)

I intend to port it back into 0.4.14RC so that
none of our releases will be affected.
2020-09-01 22:10:18 +02:00
Joachim Henze
9835710f7e [GDI] Demote the insane amount of logging CORE-1091
that was introduced by
0.4.15-dev-684-g
448bcede24
2020-09-01 19:11:22 +02:00
Doug Lyons
448bcede24 [GDI32] Preserve PitchAndFamily across GetTextMetricsW call (#2689)
ReactOS has no Raster fonts today, so compensate for this affecting the editbox margins.
CORE-1091
This patch fixes the inability to see all of the characters in the CD-KEY box of Starcraft and Visual Basic 5 and Visual Basic 6 Installs. It supersedes #2656
2020-09-01 20:08:26 +09:00
Victor Perevertkin
1f29f725d8 [GITHUB] Remove the hack for msvc-amd64 build
Do not upload artifacts for msvc-amd64 as they are not bootable anyway
2020-08-31 03:53:25 +03:00
Joachim Henze
dde92f8ffa [WINSPOOL] Properly fix a double free CORE-16715
Addendum to 0.4.14-dev-957-g
d90beaeed2

Many Thanks to the patches author Doug Lyons!
2020-08-31 02:06:35 +02:00
Thomas Faber
1f0bbb3050 [CRT] Use builtin va_args macros for clang. CORE-17227 2020-08-30 09:09:04 +02:00
Victor Perevertkin
4ae8a77aad [SDK] Add a driverdbg header for helper debug function to put into drivers 2020-08-30 03:58:37 +03:00
Victor Perevertkin
f144b8c10d [DISK_NEW] Import Microsoft Disk class driver from GitHub
The source code is licensed under MS-PL license, taken from Windows Driver Samples
repository (https://github.com/microsoft/Windows-driver-samples/tree/master/storage/class/disk/)
Synched with commit 3428c5feaac7c1a5e2a09db0ed93392f7568f9e6
The driver is written for Windows 8+, so we compile it with ntoskrnl_vista
statically linked and with NTDDI_WIN8 defined

CORE-17129
2020-08-30 03:43:14 +03:00
Victor Perevertkin
fa8ce680d4 [CLASSPNP] Add the license text along with the driver
Addendum to bf1b3cb175
2020-08-30 03:40:37 +03:00
Serge Gautherie
1c65a5e68a [REGEXPL] Fix 'COMLPETION_H__INCLUDED_' typo
clang-cl 10:
'.../Completion.h(4,2): warning: 'COMLPETION_H__INCLUDED_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]'

Addendum to bf1b057 (r1507).
CORE-14306
2020-08-30 02:00:57 +03:00
Serge Gautherie
f8b0c7c6dd [MESA] Fix 'ATTRIB_h' typo
clang-cl 10:
'.../attrib.h(32,9): warning: 'ATTRIB_H' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]'

Addendum to 5f2bebf.
CORE-7499 CORE-14306
2020-08-30 02:00:57 +03:00
Hermès Bélusca-Maïto
bd27b050fc [SPEC2DEF] Improve the 'int128' arguments display. Addendum to commit a28fa3fd.
'int128' arguments are NOT almost always GUID, as was claimed, and the
usage of the wine_dbgstr_guid() function to display them would require
the presence of yet another wine-specific header.

Instead, define a "MyInt128" typedef, local to the stub file being
generated, as the structure of two __int64's (lower and upper), and
print this "MyInt128" as the couple of these two __int64's.

Besides, display the __int64 numbers prefixed with "0x" (together with
the PRIx64 formatter).

Finally, when generating the debug-print function calls, it is useless to
explicitly cast the 'aX' variables with their types, because their types
are already known from the prototype of the stub-function!!
Therefore we can use the same `fprintf(file, "a%d", i);` for all the
ARG_LONG, ARG_PTR, ARG_STR, ARG_WSTR, ARG_DBL, ARG_INT64 and ARG_FLOAT.
Only in the case of ARG_INT128 we output "a%d.lower, a%d.upper" .
2020-08-30 02:16:15 +02:00
Hermès Bélusca-Maïto
28f08b54c0 [SPEC2DEF] Minor whitespace makeup only. 2020-08-30 02:16:14 +02:00
Victor Perevertkin
bf1b3cb175 [CLASSPNP] Import Microsoft SCSI class driver from GitHub
The source code is licensed under MS-PL license, taken from Windows Driver Samples
repository (https://github.com/microsoft/Windows-driver-samples/tree/master/storage/class/classpnp/)
Synched with commit 88541f70c4273ecd30c8c7c72135bc038a00fd88
The driver is written for Windows 8+, so we compile it with ntoskrnl_vista
statically linked and with NTDDI_WIN8 defined

CORE-17129
2020-08-29 06:06:22 +03:00
Victor Perevertkin
d9864ca6c5 [NTOSKRNL_VISTA][XDK] Implement IoSetMasterIrpStatus 2020-08-29 05:44:34 +03:00
Victor Perevertkin
f0ffda34da [DDK] Import missing files required for newer storage class drivers
The files are synched with WDK 10.0.19041.0

CORE-17129
2020-08-28 17:06:20 +03:00
Victor Perevertkin
5e242c5566 [NTOSKRNL_VISTA] Implement/stubplement more Etw, Io, Ke, Po functions
CORE-17129
2020-08-28 15:28:45 +03:00
Victor Perevertkin
17dc5f7584 [PSDK] Restore the order of definitions in ntiologc.h
Addendum to 0758710
2020-08-28 05:54:58 +03:00
Victor Perevertkin
c57350e295 [CLASSPNP][DISK_NEW][CDROM_NEW] Remove the drivers
Due to WDK/DDK licensing issues

CORE-17129
2020-08-28 05:47:27 +03:00
Victor Perevertkin
3da77f9173 [DDK] Import definitions required by newer storage class drivers
CORE-17129
2020-08-28 05:42:05 +03:00
Victor Perevertkin
093f377c40 [XDK] HACK: remove dllimport from functions which
will be implemented in ntoskrnl_vista. Remove when we will be NT6

CORE-17129
2020-08-28 05:11:42 +03:00
Victor Perevertkin
01eb9ba8de [XDK] Add definitions required for newer storage class drivers
Remove duplications in kefuncs and add missing NTKERNELAPI in iofuncs

CORE-17129
2020-08-28 05:04:23 +03:00
Joachim Henze
7c909cbc7c [COMCTL32] Addendum to last commit
Sorry, something went terribly wrong with the CORE-ID
in my head 2 times, one time in the commit comment
and one time in the code!

Addendum to 0.4.15-dev-663-g
cd7db5df89
2020-08-28 01:02:00 +02:00
Joachim Henze
cd7db5df89 [COMCTL32] Workaround regression with toolbar in 7zip CORE-16996
The regression was introduced by SVN r68553
3b13364f05

Many thanks to the author Doug Lyons for excellent
cooperation once more. Always a pleasure.
2020-08-28 00:53:18 +02:00
Stanislav Motylkov
27ad576ff1 [RAMDISK] Add Russian (ru-RU) translation to INF file
Addendum to c166933.
2020-08-27 02:36:27 +03:00
James Tabor
240207691d [LocalSpl] Fix Type and Paste
Fix cap on leading function.
2020-08-26 18:15:10 -05:00
James Tabor
19caafcb9e [LocalSpl] Fix MsVC Builds
Fix unresolved external symbol.
2020-08-26 17:37:17 -05:00
Adam Słaboń
c166933135 [RAMDISK] Add setup information file for the ramdisk driver (#3100) 2020-08-27 01:28:31 +03:00
James Tabor
62c4b828b4 [Printing] Update and Add Functions
More forwards to LocalSpl and LocalMon. At sometime will be merged together.
Bug fixes.
Printer Driver code is a wine hack. (WIP)
Added information for shell tray icon notifications.
Sync wine WinSpool driver tests. Unplugged from build.
2020-08-26 17:12:20 -05:00
Stanislav Motylkov
22fb1e947d [SYSDM] Add missing RegCloseKey function calls
Addendum to 06198c5.
2020-08-26 23:22:57 +03:00
Stanislav Motylkov
06198c51ac [SYSDM] Display system identifier when SMBIOS is not available
Actual for NEC PC-98 and Original Xbox ports.
2020-08-26 23:16:08 +03:00
Kyle Katarn
ba006b3d49 [OPENGL32] Remove Err Log Spam from wglMakeCurrent in nominal cases (#3096)
CORE-17224
2020-08-26 19:56:52 +03:00
George Bișoc
f87fb4e3df [NTOS:RTL] Implement the kernel-mode version of RtlGetNtProductType (#3029)
RtlGetNtProductType comes into two variants: one in user-mode that is exported for use from NTDLL layer and the kernel-mode that is used exclusively by the NT kernel. The kernel-mode variant of the function is not exported.
2020-08-26 17:40:45 +03:00
Serge Gautherie
93f017fcc6 [SHELL32] spec: Update SHRunControlPanel() and SHValidateUNC() parameter types (#3097)
Cherry-pick (missed part of?)
f6be79684f
2020-08-26 17:34:01 +03:00
Stanislav Motylkov
2a77e359e4 [XBOX] Move NV2A XGPU definitions into header file
TODO: helper functions should be also moved. CORE-16216
2020-08-26 16:58:01 +03:00
Stanislav Motylkov
f420f2e5df [XBOX] Move SuperIO definitions and helpers into header file
CORE-16216
2020-08-26 02:06:19 +03:00
Vladimir Barinov
2edcb58e65 [MSGINA][SYSSETUP] Implement Friendly UI shutdown dialog (#2762)
Can be activated by installing ReactOS as a Workstation. CORE-12805

References:
- https://www.remkoweijnen.nl/blog/2009/01/16/windows-xp-x64-terminal-server-patch-part-2-optional/
- https://www.remkoweijnen.nl/blog/2011/01/30/using-fast-user-switching-on-domain-xp-computers/

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-08-25 22:52:17 +03:00
Nguyen Trung Khanh
247c189263 [NTGDI] Fix stack memory disclosure in ftGdiGetTextMetricsW (#2991) 2020-08-25 19:28:39 +03:00
Nguyen Trung Khanh
a081e12fbd [NTGDI] Fix pool memory disclosure in NtGdiGetGlyphOutline (#3021) 2020-08-25 19:14:23 +03:00
Kyle Katarn
aab8cd81ff [SHELL32] Demote noisy ERR() to TRACE() in CRecyclerDropTarget (#3093) 2020-08-25 19:12:17 +03:00
Catalin Gabriel Draghita
0ab63f9590 [BASE] Improve Spanish (es-ES) translation (#3088) 2020-08-25 18:10:23 +03:00
Hermès Bélusca-Maïto
e69f845dab [NTOS:FSTUB] Minor fixes.
- Some "PartitionInfo->PartitionNumber = 0;" are ROS-specific hacks for
  xHalIoAssignDriveLetters(), that should be fixed... Mark them as such.

- Un-hardcode some "magic" values (partition IDs, max number of
  partition table entries, etc.).

- Use NULL instead of '0' for null-pointers.

- Fix some typos in comments.
2020-08-25 14:44:24 +02:00
Hermès Bélusca-Maïto
e3c35c2227 [NTOS:FSTUB] Whitespace fixes only. 2020-08-25 14:40:34 +02:00
Victor Perevertkin
075871076c [PSDK] Import definitions needed by newer storage class drivers
CORE-17129
2020-08-24 04:04:32 +03:00
Hermès Bélusca-Maïto
4aaf54e0a4 [CONUTILS] Use const string pointers for strings that are not modified by the functions. 2020-08-23 19:11:40 +02:00
Thomas Faber
dff2d58693 [NPFS] Set completion routine on the correct IRP in NpTransceive. 2020-08-23 17:05:52 +02:00
Jose Carlos Jesus
ea5c612b00 [REACTOS][USETUP] Update Portuguese PT translation (#3081)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-08-23 14:34:28 +02:00
Aobi Chan CL
018d4d39a3 [TRANSLATION] Chinese Traditional translation for "Problem with Shortcut" dialog and improvements (#3079)
- Translation for: setup-reactos, welcome, explorer, appwiz, hdwwiz, intl, mmsys, netid, shell32, syssetup, tapiui.
- Update zh-TW.rc of shell32 (#3075)
- Just found more Simplified Chinese characters, fixed them. (装 > 裝)
2020-08-23 14:28:55 +02:00
Thomas Faber
b957229c1b [XDK] Fix a noisy clang warning in RTL_CONSTANT_STRING. CORE-14306
..\ntoskrnl\vdm\vdmmain.c(91,34): warning: expression does not compute the number of elements in this array; element type is 'unsigned short', not 'char' [-Wsizeof-array-div]
    UNICODE_STRING PhysMemName = RTL_CONSTANT_STRING(L"\\Device\\PhysicalMemory");
                                 ^                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\ROS\reactos\output-clang\sdk\include\psdk\ntdef.h(1542,15): note: expanded from macro 'RTL_CONSTANT_STRING'
    sizeof(s) / sizeof(_RTL_CONSTANT_STRING_type_check(s)), \
           ~  ^
..\ntoskrnl\vdm\vdmmain.c(91,34): note: place parentheses around the 'sizeof (_RTL_CONSTANT_STRING_type_check(L"\\Device\\PhysicalMemory"))' expression to silence this warning
C:\ROS\reactos\output-clang\sdk\include\psdk\ntdef.h(1542,15): note: expanded from macro 'RTL_CONSTANT_STRING'
    sizeof(s) / sizeof(_RTL_CONSTANT_STRING_type_check(s)), \
              ^
1 warning generated.
2020-08-23 12:10:12 +02:00
Thomas Faber
f86257259a [CRT] Fix XMM intrinsics for clang. CORE-14306 2020-08-23 12:10:11 +02:00
Thomas Faber
d04dcf75c7 [GITHUB] Enable Clang-Cl build in GitHub actions. CORE-17202 2020-08-23 12:10:11 +02:00
Thomas Faber
32f17b34f5 [KERNEL32_APITEST] Enable SSE for TestSSEExceptions. CORE-17202
Clang will not let us use SSE intrinsics at all when compiling for a
target that doesn't support SSE. Since this test is a special case,
we can simply fix this by changing the options for one function.
The alternative would be to use our own inline functions for the
intrinsics instead of the builtins, like we do for GCC.
2020-08-23 12:07:38 +02:00
Thomas Faber
44ae567e39 [TELNET] Don't build this for clang due to compiler errors. CORE-17202 2020-08-23 12:07:38 +02:00
Thomas Faber
794d00c303 [FREELDR][NETKVM][ATL_APITEST] Pick the GCC code path for clang in some cases. CORE-17202 2020-08-23 12:07:37 +02:00
Thomas Faber
a81788e5bf [CMAKE] Explicitly target Pentium for clang. CORE-17202
The MSVC-compatible /arch:IA32 option switches to i386 mode, which
makes clang avoid 486/Pentium-specific instructions, e.g. cmpxchg8b.
2020-08-23 12:07:37 +02:00
Thomas Faber
8275c1f991 [CMAKE] Use a space after /fo for the RC compiler to make clang happy. CORE-17202 2020-08-23 12:07:37 +02:00
Thomas Faber
08550a504e [CRT] Make some more intrinsics conditional. CORE-17202 2020-08-23 12:07:37 +02:00
Thomas Faber
40c5f7a8e2 [CMAKE] Avoid deprecated CMakeClDeps and CMakeForceCCompiler. CORE-17202
Also avoid now-unnecessary special-casing for ARM, and
remove CMAKE_SYSTEM_PROCESSOR check that can never be true.
2020-08-23 12:07:32 +02:00
Joachim Henze
f363c27ab4 [SHELL32] Demote 2 noisy goodpath loggings to TRACE CORE-17216
Those 2 did spam heavily when browsing folders with
many .zip files within. Mark Jansen confirmed that
this is good-path-logging and was just forgotten
to be disabled earlier.
2020-08-23 00:35:02 +02:00
Victor Perevertkin
162d614cc1 [NTOS:IO] Queue device tree enumeration inside IoReportDetectedDevice
Without that, a DeviceNode is not created for a reported device and thus
it is not being attached to the device tree

CORE-17132
2020-08-21 08:53:33 +03:00
Victor Perevertkin
dc1d717b22 [NTOS:IO] Do not raise an unknown bugcheck inside the PiQueueDeviceAction 2020-08-21 08:50:12 +03:00
Victor Perevertkin
acd07e725e [NTOS:IO] Do device reset inside the PipDeviceActionWorker
This make the operation synchonized with the other device tree actions

CORE-10456 CORE-17150
2020-08-21 08:20:59 +03:00
Victor Perevertkin
8aff2c9de7 [HALX86] Report HAL root device to the stack before passing it to the driver
PnP manager now correctly delays device actions if needed, so this can
be safely done as a one operation (IoReportDetectedDevice itself creates
a PDO for us if not passed)

CORE-10456
2020-08-21 08:19:53 +03:00
Victor Perevertkin
2839c85092 [NTOS:IO] Enumerate devices only inside the PipDeviceActionWorker
Introduce the PiPerformSyncDeviceAction routine for queuing
synchronous device actions
Change all kernel code to use PiPerformSyncDeviceAction and
PiQueueDeviceAction for device enumeration

CORE-10456
2020-08-21 08:02:26 +03:00
Victor Perevertkin
2ed132e90e [NTOS:IO] change DEVICE_ACTION values and rename functions 2020-08-21 07:48:56 +03:00
Adam Stachowicz
ca68686a98 [CMD] Update Polish (pl-PL) translation (#3082)
Addendum to 7c175d4.
2020-08-20 12:25:52 +03:00
Katayama Hirofumi MZ
ed445dd775 [SHELL32] Enable CopyTo/MoveTo textbox functionality (#3075)
- The user can enter the full path of a directory in "Copy To Folder" and "Move To Folder" features.
- Fix two bugs in SHBrowseForFolder function. One is disability of text box to enter a full path. Another one is disability to choose the root item in BFFM_SETSELECTION.
- Add ES_AUTOHSCROLL style to text box. This enables the user to enter a long text.
CORE-11132
2020-08-20 11:35:14 +09:00
Katayama Hirofumi MZ
dce62240f1 [NTUSER] Improve SPI_SETWORKAREA setting (#3061)
CORE-12018, CORE-7237
2020-08-20 11:31:57 +09:00
Stanislav Motylkov
fa120ac0cd [CMD] Update Russian (ru-RU) translation
Addendum to 7c175d4.
2020-08-20 02:04:17 +03:00
Hermès Bélusca-Maïto
6925ca37ab [CMD] Add mention of the /Y switch in MORE command help; re-position the STRING_PAUSE_HELP1 string. 2020-08-19 21:39:23 +02:00
Hermès Bélusca-Maïto
6a8754c83a [CMD] TYPE: Rewrite the command so as to fix some of its behaviour.
- Display the names of the files being TYPEd only if more than one file
  has been specified on the command-line, or if a file specification
  (with wildcards) is present (even just for one).
  These names are displayed on STDERR while the files are TYPEd on
  STDOUT, therefore allowing concatenating files by just redirecting
  STDOUT to a destination, without corrupting it with the displayed file
  names. Also, add a /N option to force not displaying these file names.

- When file specifications (with wildcards) are being processed, silently
  ignore any directories matching them. If no corresponding files have
  been found, display a file-not-found error.

- When explicitly directory names are specified, don't do any special
  treatment; the CreateFile() call will fail and return the appropriate
  error.

- Fix the returned errorlevel values.

See https://ss64.com/nt/type.html for more information.

Fixes some cmd_winetests.

- When reading from a file, retrieve its original size so that
  we can stop reading it once we are beyond its original ending.
  This allows avoiding an infinite read loop in case the output of
  the file is redirected back to it.

  Fixes CORE-17208

- Move the FileGetString() helper to the only file where it is
  actually used.
2020-08-19 21:39:22 +02:00
Hermès Bélusca-Maïto
3d4af22328 [CMD] CHDIR: Some features are available only when extensions are enabled. Update the SetRootPath() as well. 2020-08-19 21:39:21 +02:00
Hermès Bélusca-Maïto
fe9aa42d5f [CMD] SET: Fix displaying the environment variables with a given prefix.
- Restore any truncated space in the name prefix, before displaying
  any error message.

- When trimming the name prefix from "special" characters (spaces, comma
  and semicolon), so that e.g. "set ,; ,;FOO" displays all the variables
  starting by "FOO", save also a pointer to the original name prefix, that
  we will use for variables lookup as well.

  This is done, because the SET command allows setting an environment variable
  whose name actually contains these characters (e.g. "set ,; ,;FOO=42"),
  however, by trimming the characters, doing "set ,; ,;FOO" would not allow
  seeing such variables.
  With the fix, it is now possible to show them.
2020-08-19 21:39:18 +02:00
Hermès Bélusca-Maïto
8cea82b14c [CMD] REPLACE: Fix a memory leak. 2020-08-19 20:36:13 +02:00
Hermès Bélusca-Maïto
1cb7e08522 [CMD] SETLOCAL / ENDLOCAL: Save / Restore as well the current drive and current directory.
That's an actual fact, done on original MS-DOS COMMAND.COM, FreeCOM,
Windows' CMD.EXE, etc., but is strangely undocumented on MSDN documentation.

See https://www.dostips.com/forum/viewtopic.php?t=4436

Fixes some cmd_winetests.
2020-08-19 20:36:13 +02:00
Hermès Bélusca-Maïto
e8e31267c5 [CMD] setlocal.c : Code style and formatting fixes 2020-08-19 20:36:13 +02:00
Hermès Bélusca-Maïto
90159e1e51 [CMD] Implement provisional support for the HIGHESTNUMANODENUMBER environment-like variable.
This variable is available only in Win7+, even if the underlying API
GetNumaHighestNodeNumber() is available in Win2003+
2020-08-19 20:36:12 +02:00
Hermès Bélusca-Maïto
04e0fe0652 [CMD] The "special" environment-like variables are available only when extensions are enabled.
The "special" variables are: CD, DATE, TIME, RANDOM,
CMDCMDLINE, CMDEXTVERSION, ERRORLEVEL (and on Win7+,
HIGHESTNUMANODENUMBER).
2020-08-19 20:36:12 +02:00
Hermès Bélusca-Maïto
41a93a4e58 [CMD] FOR: Some functionality is available only when extensions are enabled.
This is basically all the advanced functionality enabled with the /D,
/R, /L and /F flags, and the usage of enhanced variables.
2020-08-19 20:36:11 +02:00
Hermès Bélusca-Maïto
fedc68aea8 [CMD] IF: Some functionality is available only when extensions are enabled.
This functionality is: case insensitivity comparisons (/I);
CMDEXTVERSION and DEFINED unary operators; EQU, NEQ, LSS, LEQ, GTR, GEQ
generic string comparators.
2020-08-19 20:36:11 +02:00
Hermès Bélusca-Maïto
80844dc185 [CMD] DATE: Simplify the input loop, based on the TIME command.
Set also the ERRORLEVEL in case of error.
2020-08-19 20:36:10 +02:00
Hermès Bélusca-Maïto
a151893351 [CMD] DATE: The /T option is available only when extensions are enabled. 2020-08-19 20:36:10 +02:00
Hermès Bélusca-Maïto
682875d070 [CMD] TIME: The /T option is available only when extensions are enabled.
And merge two string buffers into one.
2020-08-19 20:36:09 +02:00
Hermès Bélusca-Maïto
aab632644f [CMD] Some code style and formatting fixes 2020-08-19 20:36:09 +02:00
Hermès Bélusca-Maïto
47d7de4b7b [CMD] Simplify GetRootPath() and mark its InPath parameter pointer to const string. 2020-08-19 20:36:08 +02:00
Hermès Bélusca-Maïto
f43ee81573 [CMD] CHDIR: Adjust ERROR_FILE_NOT_FOUND into ERROR_PATH_NOT_FOUND if _tchdir() fails. 2020-08-19 20:36:08 +02:00
Hermès Bélusca-Maïto
9871becced [CMD] It is not the job of ErrorMessage() to set the errorlevel! It is set only by the commands that want it. 2020-08-19 20:36:08 +02:00
Hermès Bélusca-Maïto
3b960a1c21 [CMD] MOVE: Set the errorlevel on failure.
CORE-14261
2020-08-19 20:36:07 +02:00
Hermès Bélusca-Maïto
ae649656db [CMD] RMDIR: Improve some aspects of the /S option.
- First, the option and the APIs called by it can work directly on
  paths relative to the current directory. So there is no need to
  call GetFullPathName(), with the risk of going over MAX_PATH if the
  current path is quite long (or nested) but the RMDIR is called on a
  (short-length) relative sub-directory.

- Append a path-separator (backslash), only if the specified directory
  does not have one already, and, that it does not specify a current
  directory via the "drive-root" method, e.g. "C:" without any trailing
  backslash.

- In case there are errors during deletion of sub-directories or
  sub-files, print the error but continue deleting the other sub-dirs
  or files.

- Monitor the Ctrl-C breaker as well, and stop deleting if it has been
  triggered.

- When removing file/directory read-only attribute, just remove this
  attribute, but keep the other ones.

- When deleting the directory, first try to do it directly; if it fails
  with access denied, check whether it was read-only, and if so, remove
  this attribute and retry deletion, otherwise fails.

- When recursively deleting a drive root directory, ultimately resolve
  the dir pattern and check whether it's indeed a drive root, e.g.
  "C:\\", and if so, just return success. Indeed, calling
  RemoveDirectory() on such drive roots will return ERROR_ACCESS_DENIED
  otherwise, but we want to succeed even if, of course, we won't
  actually "delete" the drive root.
2020-08-19 20:36:07 +02:00
Hermès Bélusca-Maïto
2f9b4a2e9f [CMD] RMDIR: Force directory deletion even if it's read-only, only when recursing over subdirectories (via the /S option). 2020-08-19 20:36:06 +02:00
Hermès Bélusca-Maïto
7c175d4999 [CMD] PATH, SET: Fix the returned error message when an environment variable does not exist.
Translators, please update the translations!
2020-08-19 20:36:06 +02:00
Hermès Bélusca-Maïto
6e09a6a3ff [CMD] Use kernel32!lstrcmp(i) when comparing strings with the IF command.
Use kernel32!lstrcmp(i) instead of CRT!_tcs(i)cmp, so as to use the correct
current thread locale information when comparing user-specific strings.
As a result, the following comparison: 'b LSS B' will return TRUE,
instead of FALSE as it would be by using the CRT functions (and by
naively considering the lexicographical order in ANSI).
This behaviour has been introduced in Windows 2000 onwards.
2020-08-19 20:36:05 +02:00
Hermès Bélusca-Maïto
5830ccb85e [CMD] Improve the way the ErrorMessage() helper and the MKDIR and RMDIR commands report their errors.
For MKDIR, also properly support the case of ERROR_FILE_EXISTS and
ERROR_ALREADY_EXISTS last-errors by displaying the standard error
"A subdirectory or file XXX already exists.\n"
2020-08-19 20:36:05 +02:00
Hermès Bélusca-Maïto
1efbcd3d5d [CMD] Improve RMDIR help and MD error message. 2020-08-19 20:36:04 +02:00
Hermès Bélusca-Maïto
e3ed502bb6 [CMD] Fix the output of the SET command. 2020-08-19 20:36:04 +02:00
Hermès Bélusca-Maïto
ca4523658c [CMD] Some code style and formatting fixes 2020-08-19 20:36:04 +02:00
Hermès Bélusca-Maïto
82bcb3f9f0 [CMD] Fix the implementation of EXIT /B when a batch context is active. 2020-08-19 20:36:03 +02:00
Hermès Bélusca-Maïto
d78e8029b8 [CMD] Additional fixes for ERRORLEVEL and last returned exit code from EXIT, CALL commands and CMD.
CORE-10495 CORE-13672

- Fix how the ERRORLEVEL and the last returned exit code are set by
  EXIT and CALL commands, when batch contexts terminate, and when CMD
  runs in single-command mode (with /C).

  Addendum to commit 26ff2c8e, and reverts commit 7bd33ac4.
  See also commit 8cf11060 (r40474).

  More information can be found at:
  https://ss64.com/nt/exit.html
  https://stackoverflow.com/a/34987886/13530036
  https://stackoverflow.com/a/34937706/13530036

- Move the actual execution of the CMD command-line (in /C or /K
  single-command mode) from Initialize() to _tmain(), to put it on par
  with the ProcessInput() interactive mode.

- Make ProcessInput() also return the last command's exit code.
2020-08-19 20:36:03 +02:00
Hermès Bélusca-Maïto
4c9d322c68 [CMD_ROSTEST] Add tests for EXIT and CMD returned exit code values.
CORE-10495 CORE-13672

See also commits 8cf11060 (r40474), 26ff2c8e and 7bd33ac4.

More information can be also found at:
https://stackoverflow.com/a/34987886/13530036
and
https://stackoverflow.com/a/34937706/13530036
2020-08-19 20:36:02 +02:00
Hermès Bélusca-Maïto
2e4c8c019e [CMD] GOTO: Fix label parsing.
We note two things, when CMD searches for the corresponding label in the
batch file:
- the first character of the line is always ignored, unless it's a colon;
- the escape caret ^ is supported and interpreted.

Fixes some cmd_winetests.
2020-08-19 20:36:01 +02:00
Hermès Bélusca-Maïto
71cd64d66a [CMD_ROSTEST] Add tests for GOTO label parsing. 2020-08-19 20:36:01 +02:00
Hermès Bélusca-Maïto
c5e6e5a19c [CMD] GOTO: Fix handling of the ':EOF' label handling.
- The ':EOF' label feature is available only when extensions are enabled.

- Anything that follows the ':EOF' label, separated by at least one
  whitespace character, is ignored, and the batch file terminates.
2020-08-19 20:36:01 +02:00
Hermès Bélusca-Maïto
aee1dd2972 [CMD_ROSTEST] Add tests for GOTO :EOF 2020-08-19 20:36:00 +02:00
Hermès Bélusca-Maïto
f911bb482d [CMD] GOTO: The command should search labels from its position down to the end, then loop back to the beginning of the batch and down to the original position. 2020-08-19 20:36:00 +02:00
Hermès Bélusca-Maïto
8ed9a46dc2 [CMD_ROSTEST] Add tests for GOTO and CALL label search ordering. 2020-08-19 20:35:59 +02:00
Hermès Bélusca-Maïto
495c82ccde [CMD] Syntax errors during parsing of batch parameters expansion, or FOR and IF commands, are fatal, and batch execution should stop.
- To this purpose use the ParseErrorEx() that correctly sets the
  bParseError flag, and return the partially-parsed command so that
  it gets echoed as well for diagnostics purposes (Windows-compatible).

- Any other parameters specified after (or before) the '/?' switch for
  the FOR and IF commands, are considered fatal syntax errors as well,
  thus we employ the ParseErrorEx() as well.
2020-08-19 20:35:59 +02:00
Hermès Bélusca-Maïto
6eb1cae348 [CMD] Fixes for Batch error execution control flow.
CORE-13713 CORE-13736

- In case execution of all batch contexts is stopped (by selecting "All"
  at the Ctrl-C/Ctrl-Break prompt), notify as well the CheckCtrlBreak()
  signal handler once there are no more batch contexts (this in effect
  resets the internal 'bLeaveAll' static flag in CheckCtrlBreak).
  This is an adaptation of the fix present in FreeCOM 1.5, first
  described in https://gcfl.net/FreeDOS/command.com/bugs074g.html .

- Introduce a ParseErrorEx() helper that sets the 'bParseError' flag and
  displays a customized syntax-error message, only for the first syntax
  error encountered. Implement ParseError() around the *Ex function.

- In batch mode, echo the original pre-parsed batch file line if a parse
  error has been encountered.

- When running a compound command - including IF, FOR, command blocks -,
  and that control flow is modified by any CALL/GOTO/EXIT command,
  detect this while running the compound command so as to stop it and go
  back to the main batch execution loop, that will then set up the actual
  new command to run.

- In GOTO, do not process any more parts of a compound command only when
  we have found a valid label.
2020-08-19 20:35:58 +02:00
Hermès Bélusca-Maïto
7f8792e005 [CMD_ROSTEST] Add tests for batch execution flow with GOTO and CALL commands.
- Tests for GOTO across IF parenthesized block (parser test with line
  continuation at closing parenthesis).

- Tests for showing how FOR-loops stop when a GOTO is encountered.

- Tests for EXIT command within IF block.
2020-08-19 20:35:58 +02:00
Hermès Bélusca-Maïto
ca912d7b36 [CMD] Further code style and formatting fixes. 2020-08-19 20:35:57 +02:00
Hermès Bélusca-Maïto
c93f511241 [CMD] Reduce stack memory usage when parsing or echoing commands recursively.
- Use a common large string buffer for temporary command substitutions/expansions,
  instead of having such a buffer in the local stack of the parsing and
  echoing functions that may be called recursively. Since CMD executes
  synchronously we know that this common buffer can only be used once at
  a time.

- Also do a small code cleanup in ParseIf(), ParseFor() and ParseCommandPart().
2020-08-19 20:35:57 +02:00
Hermès Bélusca-Maïto
26cfadc352 [CMD] Make the command echoer Windows-CMD-compatible. CORE-14025
Add a MSCMD_ECHO_COMMAND_COMPAT define to be able to switch back to our
older but less broken behaviour at compile-time.

- Append a trailing space to commands when those have a parameter,
  as well as after a command-block closing parenthesis.

- Space around redirection strings need to be switched around.
2020-08-19 20:35:56 +02:00
Hermès Bélusca-Maïto
47ea3f1faa [CMD] Fix the command echo-er/unparser.
- Use ConOutPuts() instead of ConOutPrintf() for displaying strings that
  are not printf formatted.

- When echo-ing/unparsing FOR command, any possible FOR variables
  present in the FOR parenthesized list (before the "do" part) should be
  substituted as well.
2020-08-19 20:35:56 +02:00
Hermès Bélusca-Maïto
6f87d45e1c [CMD] Add a command tree dumper, for debugging purposes of the parser code.
This feature is also present in Windows' CMD, and has been documented
e.g. at:
https://www.fireeye.com/blog/threat-research/2018/11/cmd-and-conquer-de-dosfuscation-with-flare-qdb.html
https://www.real-sec.com/2019/08/cmd-and-conquer-de-dosfuscation-with-flare-qdb/
2020-08-19 20:35:55 +02:00
Hermès Bélusca-Maïto
988f8bd2f6 [CMD_ROSTEST] Add tests for the command echoer. 2020-08-19 20:35:55 +02:00
Hermès Bélusca-Maïto
04eef6d20c [CMD] parser.c, cmd.c/h : Code style and formatting fixes.
- Change C_IFFAILURE, C_IFSUCCESS into C_OR, C_AND respectively.
2020-08-19 20:35:54 +02:00
Hermès Bélusca-Maïto
93ee4e7efa [CMD] Fix some messages formatting.
- Fix ECHO state output string.
- Add missing newlines to some help and error messages.
- Add trailing space after the PAUSE command message.
2020-08-19 20:35:54 +02:00
Hermès Bélusca-Maïto
23a52b2285 [CMD_ROSTEST] Minor improvements for the echo-ed info of the builtins tests. 2020-08-19 20:35:53 +02:00
Hermès Bélusca-Maïto
d85d991679 [CMD_ROSTEST] Sync batch.c with cmd_winetest' counterpart. 2020-08-19 20:35:53 +02:00
Hermès Bélusca-Maïto
7115d7ba8e [CMD_WINETEST] Sync with Wine 5.12. 2020-08-19 20:35:53 +02:00
Hermès Bélusca-Maïto
ea801338f6 [CMD] todo.txt: Remove some points that have already been implemented since ages. 2020-08-19 20:35:52 +02:00
Hermès Bélusca-Maïto
86c5e7e41f [CMD] Remove deprecated definition in CMakeLists.txt. 2020-08-19 20:35:52 +02:00
Thomas Schneider
a245c98fc6 [FREELDR] Bootsector fix for CHS read on old BIOSes which lack INT 3e (#3078)
At line 263 a 'pop es' is missing before 'ret' in ReadCHS() function,
just like in the ReadLBA() function. CORE-17178

Co-authored-by: Dmitry Borisov <di.sean@protonmail.com>
2020-08-19 19:10:02 +03:00
Andreas Hausmann
a54004893f [BROWSEUI] Few corrections for German (de-DE) translation (#3067)
Corrected some mistakes
2020-08-19 18:18:05 +03:00
Dmitry Borisov
27cd9eaf1a [PC98VID] Add framebuffer video miniport driver for NEC PC-98 series (#3040)
This adds generic graphics support on PC-9821.
2020-08-19 00:50:08 +03:00
Stanislav Motylkov
f7e84e231b [TASKMGR] Revert 535e262 (#3016)
This reverts a change which introduced a regression.

CORE-17115
2020-08-18 20:23:34 +03:00
Stanislav Motylkov
78607860b7 [SHELL32] Addendum to 4156fd5 2020-08-18 16:50:59 +03:00
Stanislav Motylkov
4156fd5182 [SHELL32] Improve Russian translation
Addendum to 46ff964. CORE-11132
2020-08-18 16:26:52 +03:00
Zheng Jianping
5b80b5db17 [UMANDLG] Update Chinese Simplified (zh-CN) translation (#2545) 2020-08-18 15:26:06 +03:00
Zheng Jianping
4a3ef0d053 [OSK] Update Chinese Simplified (zh-CN) translation (#2546) 2020-08-18 14:52:06 +03:00
Aobi Chan CL
53bb510352 [TRANSLATION] Improve Chinese Traditional (zh-TW) translation (#3065) 2020-08-18 14:26:04 +03:00
Serge Gautherie
6b8f3967ae [REISERFS] Fix MSVC compilation with '_VS_ANALYZE_' (#3013)
'...\write.c(38): error C2373: 'RfsdFloppyFlush': redefinition; different type modifiers'
'...\write.c(45): error C2373: 'RfsdFloppyFlushDpc': redefinition; different type modifiers'
2020-08-18 14:20:30 +03:00
Piotr Hetnarowicz
78e3407c1d [TRANSLATION][BROWSEUI] Polish "MoveTo" description fix (#3074) 2020-08-18 12:58:48 +02:00
Piotr Hetnarowicz
da895c2f99 [EXPLORER] Polish description fix for Taskbar properties dialog. (#3073) 2020-08-18 12:55:52 +02:00
Piotr Hetnarowicz
7d373689fe [TRANSLATION][SHELL32] Update Polish translation of the "MoveToFolder" dialog (#3072) 2020-08-18 12:53:50 +02:00
Katayama Hirofumi MZ
fde7a3b764 [SHELL32] Update Japanese translation 2020-08-18 09:27:10 +09:00
Katayama Hirofumi MZ
81f28d454a [NTUSER] Set ERROR_INVALID_WINDOW_HANDLE when PostMessage failed (#3059)
Set the last error code ERROR_INVALID_WINDOW_HANDLE when user32!PostMessage failed with destroyed window.
CORE-12124
2020-08-18 05:32:44 +09:00
Katayama Hirofumi MZ
46ff964e22 [SHELL32] Implement Move To Folder (#3056)
- Add context menu item "Mo&ve to folder..." and implement the action.
- Implement the "Mo&ve to folder..." menu item of "Edit" menu of Explorer.
CORE-11132
2020-08-18 05:30:54 +09:00
Mark Jansen
679c95597c [SHELL32] Fix sorting on size for big files
CORE-17205
2020-08-17 18:17:24 +02:00
Nguyen Trung Khanh
9adcacdbc8 [MOUNTMGR] Fix pool memory disclosure in QueryPointsFromMemory (#3022) 2020-08-17 16:45:35 +02:00
Kyle Katarn
61d89dec8e [SHELL32] French translation for "Problem with Shortcut" dialog (#3047) 2020-08-17 17:41:59 +03:00
Piotr Hetnarowicz
569a3d63f5 [TRANSLATION][SHELL32] Update Polish translation ("copy to folder" dialog) (#3064) 2020-08-17 16:41:31 +02:00
Tibor Lajos Füzi
2490b675fb [TRANSLATION] Hungarian translation update for aclui, avifil32, browseui, comdlg32, crypt32, cryptdlg, shell32, userenv (#2978) 2020-08-17 16:39:42 +02:00
Jose Carlos Jesus
4180592654 [TRANSLATION] Update Portuguese (Portugal) translation for CPL files (#3062) 2020-08-17 17:28:09 +03:00
Stanislav Motylkov
1197c90592 [ZIPFLDR] Fix several dialog layout problems
Addendum to a1108f6. CORE-17209

Co-authored-by: Doug Lyons <douglyons@douglyons.com>
2020-08-17 16:12:10 +03:00
Stanislav Motylkov
b65ff2084f [SYSDM] Localize hardcoded megabyte units
CORE-12485 CORE-16915
2020-08-17 14:18:09 +03:00
Stanislav Motylkov
94ca261449 [SYSDM] Fix virtual memory dialog layouts 2020-08-17 04:26:31 +03:00
Stanislav Motylkov
79767e1bc6 [SYSDM] Add placeholders for simpler visual editing 2020-08-17 03:38:27 +03:00
Stanislav Motylkov
b5368185da [SYSDM] Better formatting of user profile size 2020-08-17 03:18:01 +03:00
Stanislav Motylkov
1601afd0a6 [SYSDM] Whitespace fixes only 2020-08-17 03:16:07 +03:00
Stanislav Motylkov
35de9f3925 [SHLWAPI] Add French translation for size units
Reference: https://fr.wikipedia.org/wiki/Octet

CORE-12485 CORE-14011
2020-08-17 01:32:37 +03:00
Katayama Hirofumi MZ
8f907ea83a [SHLWAPI] Localize StrFormatByteSizeA/W (#3051)
CORE-14011
2020-08-17 06:40:39 +09:00
Brock Mammen
f0d6d9896d [SHELLFIND] Fix column sorting (#2814)
CORE-16825
2020-08-16 19:02:42 +03:00
Jose Carlos Jesus
887764e607 [COMCTL32] Fix issue on showing current mouse pointer (#2829)
GetIconInfo() fill info.hbmColor with NULL HBITMAP handle on black/white bitmaps.

CORE-17062
2020-08-16 18:42:12 +03:00
Stanislav Motylkov
685084b63c [UXTHEME] Properly show disabled close button
CORE-17203
2020-08-16 17:34:38 +03:00
Thomas Faber
2fb2f1e4c5 [RTL] Allow RtlGetNextRange to be called on a finished iterator. CORE-6372
Fixes crash in kmtest:RtlRangeList.
2020-08-16 16:18:29 +02:00
Stanislav Motylkov
9900089fa6 [SHELL32] Fix Russian translation
Addendum to 5187ec8 and 824a52a. CORE-10972 CORE-12906
2020-08-16 16:06:52 +03:00
Alexander Rechitskiy
cd433ffc39 [README] Add a legal notice about WRK (#2953)
Mention the important legal limitation of contribution in the appropriate place of README.
2020-08-16 15:52:57 +03:00
Stanislav Motylkov
a95c7356ce [SHELL32] Russian translation for Copy To Folder
Addendum to 85fdcdf. CORE-11132
2020-08-16 15:32:26 +03:00
Aobi Chan CL
860b45aca1 [USERINIT][WINLOGON][USER32][USERSRV] Update Traditional Chinese (Taiwan) translation (#3018) 2020-08-16 15:13:55 +03:00
Katayama Hirofumi MZ
1d1bb53321 [SHELL32] Fix regression #2703 CORE-17041 (trial) (#3046)
CORE-17041
2020-08-16 11:16:44 +09:00
Joachim Henze
2d4c27c96e [SHELL32] de-DE translation for CORE-11132
Addendum to 0.4.15-dev-524-g
85fdcdf2cc
to keep the german localization up to date
for the new Copy-To-Folder-Dlg.
2020-08-16 02:15:06 +02:00
Oleg Dubinskiy
25f78cda99 [REGEDIT] Improve message box for importing registry files (#3006)
- Change the messagebox's icon type from warning icon to question icon, because this is done in Windows Regedit too.
- Use two buttons (Yes and No) or three buttons (Yes, No, and Cancel) depending on the file count.

CORE-15494

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2020-08-16 02:25:44 +03:00
Katayama Hirofumi MZ
85fdcdf2cc [SHELL32] Implement Copy To Folder (retrial) (#3044)
- Add context menu item "Copy to &folder..." and implement the action.
- Implement the "Copy to &folder..." menu item of "Edit" menu of Explorer.
CORE-11132
2020-08-16 08:04:07 +09:00
Aidan Case
535e262b78 [TASKMGR] Fix display of process command-line string (#3016)
The CMD_LINE_CACHE index (idx) does not update when programs are closed.
Compare it with the process id (pid) in the cache and determine the pid
by the index in the same cache.

CORE-17115
2020-08-16 00:52:48 +03:00
Thomas Faber
12186bec12 [TIMEDATE] Fix a broken function pointer cast. 2020-08-15 22:37:42 +02:00
Omer Itzic S
a6946307fc [USERSRV] Update Hebrew translation (#3010)
Co-authored-by: Baruch Rutman <peterooch@gmail.com>
2020-08-15 22:57:07 +03:00
Thomas Faber
4bc7e664fb [KMTESTS:RTL] Add initial range list tests. CORE-6372 2020-08-15 21:31:32 +02:00
Thomas Faber
2c4a554d72 [NDK] Complete range list function & structure declarations. CORE-6372
* Add the remaining functions & annotate.
* Add the RTLP_RANGE_LIST_ENTRY structure, which is present in symbols

Note: range list declarations should really be !NTOS_MODE_USER, since ntdll
doesn't export these functions; however, our RTL itself is built with
NTOS_MODE_USER, so that's not an option at this point.
2020-08-15 21:31:29 +02:00
Stanislav Motylkov
037e84ec7f [SHELL32] Russian translation for "Problem with Shortcut" dialog
Addendum to a3ec01c. CORE-16816
2020-08-15 17:26:15 +03:00
Stanislav Motylkov
3d9ab23ef0 [BOOTDATA] Add display name and description for Browser Service
Also add Russian translation.

Addendum to 1b90e54. CORE-17201
2020-08-15 15:30:08 +03:00
Joachim Henze
e95643c7c9 [SHELLBTRFS] Prevent the compression dropbox from accepting free text CORE-16971
Initially proposed to ros via https://github.com/reactos/reactos/pull/2677
and already integrated upstream Apr 28, 2020 by
aba729c8f5
2020-08-15 13:43:00 +02:00
Joachim Henze
011a9e2ae8 [SCSIPORT] Demote a noisy DPRINT1 to DPRINT CORE-17200
It started to spam when more components of the MountMgr
were coded during 0.4.14dev.

According to Victor Perevertkin it is not crucial for us
to see it, as those are 'optional MountMgr features'.
Imho this points towards unimplemented stuff.

No official ros release has been affected, because I did
revert most of the new MountMgr features for 0.4.14release
earlier.
2020-08-15 12:50:45 +02:00
Nguyen Trung Khanh
bc584bdf99 [NTOS:PS] Fix stack memory disclosure in PsGetContextThread #3024
Fix stack memory disclosure in PsGetContextThread.
2020-08-15 19:18:35 +09:00
Katayama Hirofumi MZ
49be08bc69 [FONTVIEW] Fix regression; opening files won't list files (#3045)
Based on Mark Jansen's patch in CORE-17001.
2020-08-15 07:08:40 +09:00
Piotr Hetnarowicz
9170432c8f [SHELL32] Polish translation for "Problem with Shortcut" dialog (#3043)
pl-pl Polish translation update for new dialog with SHORTCUT
2020-08-15 02:07:32 +09:00
Katayama Hirofumi MZ
90456e54a4 [APPWIZ] Don't hung up in Gecko download cancellation #3049
Do not call EndDialog outside the dialog procedure.
CORE-14538
2020-08-14 23:40:10 +09:00
Thomas Faber
960511094b [XDK] Avoid defining interlocked intrinsics. CORE-17190
Fixes build with MSVC 19.27+.
2020-08-14 11:08:45 +02:00
James Tabor
96a357b595 [ComDlg32] Fix Driver String
Use a fixed string for driver name, same as Windows.
2020-08-13 21:31:04 -05:00
Katayama Hirofumi MZ
3aa9cae13e [SHELL32_APITEST] Strengthen SHAppBarMessage testcase for workarea (#3041)
CORE-7237 - Add workarea checks.
2020-08-13 20:59:36 +09:00
Katayama Hirofumi MZ
90aff8dd09 [SHELL32_APITEST] Strengthen SHChangeNotify testcase more (#3038)
- Add tests on SHCNRF_InterruptLevel and SHCNRF_RecursiveInterrupt.
- Don't use clipboard for data exchange.
- Close Explorer Cabinets before tests.
CORE-13950
2020-08-13 07:51:45 +09:00
Katayama Hirofumi MZ
a3ec01cc28 [SHELL32] Add IDD_LINK_PROBLEM and IDS_LINK_INVALID (#3037)
A resource dialog and a resource string for shortcut problem. CORE-16816
2020-08-12 14:16:25 +09:00
Katayama Hirofumi MZ
526c23bde6 [IMM32] Improve imm32.spec (#3036)
CORE-11700
2020-08-12 06:04:28 +09:00
Katayama Hirofumi MZ
4b038ec8b7 [IMM32][NTUSER] Add ImmGetImeInfoEx (#3035)
- Add the definition of imm32!ImmGetImeInfoEx function.
- Add IMEINFOEXCLASS and IS_IME_HKL into "ntuser.h".
- Modify NtUserGetImeInfoEx function prototype.
CORE-11700
2020-08-12 06:03:29 +09:00
Katayama Hirofumi MZ
047da7e632 [NTUSER] Add more QUERY_WINDOW_* values (#3034)
Add QUERY_WINDOW_* constant values for NtUserQueryWindow funciton. CORE-11700
2020-08-12 06:01:22 +09:00
Katayama Hirofumi MZ
451a9c6f52 [EXPLORER] Implement ABN_WINDOWARRANGE (#3033)
The AppBar window has to receive the ABN_WINDOWARRANGE notification message before and after the window arrangement from taskbar. CORE-7237
2020-08-12 06:00:09 +09:00
Katayama Hirofumi MZ
03e6eca3c2 [SDK][INCLUDE] Add CLSID_CopyToMenu and CLSID_MoveToMenu (#3032)
- Add CLSID_CopyToMenu and CLSID_MoveToMenu to "sdk/include/reactos/shlguid_undoc.h".
- Remove some GUIDs from "com_apitest.h".
CORE-11132
2020-08-11 17:26:05 +09:00
Katayama Hirofumi MZ
ee231d00b9 [SHELL32] Improve callbacking of CDefView (#3031)
- Delete DefMessageSFVCB method.
- Add some callbacking.
2020-08-11 16:00:16 +09:00
Katayama Hirofumi MZ
1f31905ecd [SHELL32] Optimize change notification (#3030)
- Keep the directory lists only.
- Don't remember file sizes and normal file paths.
CORE-13950
2020-08-10 13:34:48 +09:00
Katayama Hirofumi MZ
1c40070561 [EXPLORER] Improve CTrayWindow::OnCopyData (#3028)
Check pCopyData->dwData value. Don't send message needlessly.
CORE-7237
2020-08-10 07:15:21 +09:00
Oleg Dubinskiy
8d682f9b05 [IMM32] Stub ImmRegisterClient CORE-16479 (#3009)
Add a stub for ImmRegisterClient function in imm32.dll. CORE-16479
2020-08-09 22:49:00 +09:00
Katayama Hirofumi MZ
2705abfb07 [IMM32] Add ImmShowSoftKeyboard and ImmDestroySoftKeyboard (#3027)
CORE-11700
2020-08-09 22:42:17 +09:00
Katayama Hirofumi MZ
ec9d277d59 [IMM32][NTUSER] Implement ImmGetHotKey (#3025)
CORE-11700
- Implement imm32!ImmGetHotKey function.
- Modify NtUserGetImeHotKey function.
- Add LPHKL typedef into <imm.h> header.
2020-08-09 22:41:11 +09:00
Katayama Hirofumi MZ
1d8c567996 [SHELL32_APITEST] Improve DoAction8 of SHChangeNotify testcase
CORE-13950
2020-08-09 11:07:55 +09:00
Stanislav Motylkov
357db6d191 [SYSSETUP] Fix Russian translation (#3017)
Addendum to 75a0787.
2020-08-08 14:32:10 +03:00
Oleg Dubinskiy
a1108f6155 [ZIPFLDR] Add some bitmap resources CORE-17092 (#2875)
Add some bitmap images to our zipfldr shell extenson. MS version of this has them, but our one currently hasn't. And I think without bitmaps the wizard dialogs look a bit incompleted.
I made them similar to MS bitmaps. They have exactly the same size (height x width), but looks differently, in ReactOS Tango style. CORE-17092
2020-08-08 14:13:54 +09:00
Nguyen Trung Khanh
ff50b0db2e [NTUSER] Fix stack memory disclosure in NtUserBuildPropList (#3023)
Fix structure alignment cause to stack memory disclosure in NtUserBuildPropList.
2020-08-08 14:05:22 +09:00
Katayama Hirofumi MZ
f7865b8bfa [IMM32] Add ImmSetActiveContext stub (#3026)
CORE-11700
Add imm32!ImmSetActiveContext and ImmSetActiveContextConsoleIME function stubs.
2020-08-08 09:46:13 +09:00
Vladimir Barinov
75a078709a [SYSSETUP] Fix Russian translation (#3017) 2020-08-04 16:25:33 +03:00
James Tabor
c7a1924215 [WinSpool] Fix RC Build II
Fix rc build.
2020-08-03 23:03:40 -05:00
James Tabor
9d18946919 [WinSpool] Fix MSVC Build
Fix build.
2020-08-03 22:23:07 -05:00
James Tabor
b4848c379f [WinSpool] Fix RC file for MSVC builds.
Fix Build.
2020-08-03 21:53:03 -05:00
James Tabor
7bffb70353 [Printing] Fix ups and Implementations.
WinSpool : Implement missing API. Sync/Port from wine. Setting it to fast track for needed testing of the later GDI code. Leaving Fix-me debug prints on.
Local tree has WinSpool_winetest turned on. So no debug noise during normal ReactOS operation.

SpoolSS : Reordered header types. Have more Spl function to be added while SpoolSV is being coded to forward to LocalSpl.

Based on wine and old research from the GDI code.
2020-08-03 21:07:58 -05:00
James Tabor
89e716a7f7 [Printing] Update and Add Functions
Fix and Update WinSpool.idl.

Start forwards to LocalSpl.
2020-08-02 14:49:06 -05:00
Victor Perevertkin
a77a65ab6d [MOUNTMGR] Avoid an endless loop while sending GUID_IO_VOLUME_NAME_CHANGE notification 2020-08-01 04:58:08 +03:00
James Tabor
6df223ebdf [WinSpool.idl] Add File Info Structure
This is for 2 RPC functions. Update at a later time.
2020-07-31 12:45:18 -05:00
James Tabor
dbaa8b132d [WinSpool] Fix Header Order
Found another issue with the header.
2020-07-31 12:12:59 -05:00
Hervé Poussineau
c4055c455f [HIDPARSER] Remove HIDPARSER specific error codes, and remplace them by HIDP_* NTSTATUS codes
Remove now useless TranslateHidParserStatus() function.
2020-07-31 14:32:08 +02:00
Hervé Poussineau
c151f8a1c7 [HIDPARSER] Remove HID_PARSER class, and directly use functions 2020-07-31 14:31:27 +02:00
Hervé Poussineau
9df05ba4b6 [ISAPNP] Properly stub IRP_MJ_POWER 2020-07-30 13:24:29 +02:00
James Tabor
c2b65c3fea [WinSpool] Fix Header Order.
Found an issue with the header.
2020-07-29 13:06:07 -05:00
Dmitry Borisov
06cbc2acd2 [BOOTVID] More improvements for PC-98 (#2936)
- Fix failure handling
- Reduce memory mapping that's not needed
2020-07-29 19:10:39 +03:00
Dmitry Borisov
e318801c1c [BOOTVID] Fix screen buffer copying code for PC-98 (#2936) 2020-07-29 19:10:39 +03:00
Dmitry Borisov
c87be643f8 [BOOTVID] Improve text scrolling performance for PC-98 (#2936) 2020-07-29 19:10:39 +03:00
Dmitry Borisov
5d40981efa [BOOTVID] Fix BitBlt behavior (#2936) 2020-07-29 19:10:38 +03:00
Dmitry Borisov
da9384b918 [BOOTVID] Annotate some functions to avoid confusing (#2936)
Also fix some magic constants.
2020-07-29 19:10:38 +03:00
Dmitry Borisov
4d54b8ce69 [BOOTVID] Fix drawing strings on top of the bitmap (#2936)
Also fix VGA pixel drawing.

CORE-15896
2020-07-29 19:10:38 +03:00
Nguyen Trung Khanh
9d2ecd3a13 [NTOS:KE] Fix stack memory disclosure in KiInitializeUserApc (#2988) 2020-07-27 03:39:48 +03:00
James Tabor
517e6dc8ab [WinddiUI] Fix Format
Format This ....
2020-07-26 15:42:28 -05:00
Victor Perevertkin
380cd27cf3 [XDK] Introduce ExAllocate*Zero and ExAllocate*Uninitialized functions
These has been first added to DDK 10.0.19041.0 and made backwards-compatible
with all Windows versions since Windows 2000.
Our implementation does not use POOL_ZERO_ALLOCATION flag because it's not
supported by ReactOS yet, and thus erases the memory unconditionally.
2020-07-26 14:10:52 +03:00
James Tabor
92520463d8 [WinddiUI] Add more types and structures. 2020-07-25 11:39:04 -05:00
Dmitry Borisov
b36018ff26 [HALPC98] Add Hardware Abstraction Layer for NEC PC-98 series (#3002) 2020-07-25 15:31:02 +02:00
Serge Gautherie
0c222cfe96 [BOOTDATA] Enable 'REG_EXPAND_SZ' for 'kbswitch.exe' (#3004)
CORE-12973
2020-07-22 20:02:26 +03:00
Stanislav Motylkov
06d5ed7ece [FASTFAT] Support 64 KiB cluster sizes
FAT16 filesystem was not recognized on some 4GB USB flash drives.
This change makes them just work.

References:
- https://chat.reactos.org/reactos/pl/h83pm5ngkffk7qiyrmqnaaopxh
- https://support.microsoft.com/en-us/help/140365/default-cluster-size-for-ntfs-fat-and-exfat

CORE-16511
2020-07-22 19:50:24 +03:00
Stanislav Motylkov
21b56d77c6 [EXPLORER] Allocate the string for expanded command line from heap
Addendum to 6fe704b.

CORE-12973 CORE-17168
2020-07-21 19:50:45 +03:00
Stanislav Motylkov
6fe704b0f0 [EXPLORER] Fix auto startup behavior
Command line should be expanded only for REG_EXPAND_SZ values.

CORE-17168
2020-07-21 17:28:48 +03:00
Serge Gautherie
98bbe8358c [REACTOS] Fix GetTokenInformation() usage (#2997)
The first call to GetTokenInformation is used to determine the size of a TokenInformation buffer.
It should fail and return ERROR_INSUFFICIENT_BUFFER
2020-07-21 15:39:11 +03:00
Trevor Thompson
b338fb7beb [CLASS2]: Set DiskSize member of deviceExtension->DiskGeometry in ScsiClassReadDriveCapacity(). Consolidate code and comment for setting media capacity in bytes. CORE-17166 2020-07-21 01:21:16 +03:00
Serge Gautherie
a3669fdef7 [NTOS:KD64] Fix 'MAX_KD_COMPONENT_TABLE_ENTRIES' value (#2992)
Addendum to ceb58c8.
2020-07-18 19:42:30 +02:00
Hermès Bélusca-Maïto
46416a6238 [NTOS:KDBG] Adapt the formatting of the debug filter table display output to suit longer component names. 2020-07-18 18:16:21 +02:00
Hermès Bélusca-Maïto
7d3dac324e [NTOS][KDBG] Use macros to simplify initializing the debug filter tables. 2020-07-18 17:45:40 +02:00
Hermès Bélusca-Maïto
ceb58c821a [NTOS][SDK] Add new kernel debug filters that have been added in Win8 and Win10; they can be useful for us. 2020-07-18 17:45:40 +02:00
Hermès Bélusca-Maïto
b2eaf90557 [NTOS:KDBG] Minor code style fix. 2020-07-18 17:45:40 +02:00
Serge Gautherie
0f8306b37f [CRYPT32] CRYPT_ExportKeyTrans(): Check 'CRYPT_ConstructBitBlob()' return value (#2983)
Import 3e8b07309c
CORE-8156

Co-authored-by: Victor Martinez Calvo <vmartinez@reactos.org>
2020-07-18 15:40:05 +02:00
Serge Gautherie
b509658280 [CMAKE] Remove obsolete 'CMAKE_CXX_COMPILER_VERSION' checks (#2981)
Following upgrade to RosBE 2.2.0 support and GCC 8.4.
2020-07-18 15:37:29 +02:00
Arjav Garg
3b983e57b0 [OSK] Meta key modifier behaviour added (#2973)
Make the meta key in the OSK have modifier key behaviour.
Changed all the .rc files in the OSK so that the meta key doesn't release on it's own and needs a second click to release.
CORE-17161
2020-07-18 15:33:43 +02:00
Serge Gautherie
89971a3757 [CDFS][FLOPPY_NEW] Simplify unsupported NT6.2+ workarounds (#2956) 2020-07-18 15:31:48 +02:00
Victor Perevertkin
5201472be7 [NTOS:FSTUB] Simplify xHalIoReadPartitionTable function
Use single IOCTL (IOCTL_DISK_GET_DRIVE_GEOMETRY_EX) for retrieving
disk basic geometry information along with disk size.
Previous implementation used to issue two requests for that.
2020-07-15 03:20:13 +03:00
Thomas Faber
64abd9fca8 [LIBMPG123] Update to version 1.26.2. CORE-17158 2020-07-12 12:28:05 +02:00
Serge Gautherie
d6c4411207 [MSGINA] gui: Improve 'DlgData_Destroy()'
Addendum to 623dd26cce.
2020-07-11 01:44:26 +02:00
Serge Gautherie
bd593ed366 Merge pull request #2900 from SergeGautherie/SergeGautherie/PRonly_3rdPartyFiles-txt_chmc-lzxcomp
[3rd Party Files.txt] Add 'chmc and lzxcomp' entry
2020-07-11 01:38:15 +02:00
Serge Gautherie
f91144364b [TASKMGR] CachedGetUserFromSid(): Fix user name length on cache hit 2020-07-11 01:37:53 +02:00
Serge Gautherie
353b544047 [AUDIOSRV] logmsg(): Disable its file part
Mininal workaround for
CORE-16814
2020-07-11 01:22:56 +02:00
Serge Gautherie
db2aa4c8ca [APISETS] api-ms-win-core-localization-l1-2-1: Is NT6.3+ actually
CORE-17095
2020-07-11 01:16:38 +02:00
Serge Gautherie
0de16bc3ba [APISETS] api-ms-win-core-localization-l1-2-0: Is NT6.2+ actually
CORE-17095
2020-07-11 01:16:38 +02:00
Serge Gautherie
871f96b66e [APISETS] api-ms-win-core-localization-l1-1-0: Is NT6.1+ actually
CORE-17095
2020-07-11 01:16:38 +02:00
Mark Jansen
7dc306c440 [SDK] Fix host-tools build from visual studio ide in Release 2020-07-09 21:32:53 +02:00
Colin Finck
5f37b687b0 [OSK] Fix some mistakes in the German translation I just spotted 2020-07-08 23:32:17 +02:00
Thomas Faber
292f67af5b [MBEDTLS] Update to version 2.7.16. CORE-17155 2020-07-04 21:53:46 +02:00
Thomas Faber
e57126f5e5 [MBEDTLS] Switch license headers to the dual-licensed version. CORE-17155
This is the default going forward, and separating it out into its own
commit removes the noise from the following sync commit.
2020-07-04 21:53:42 +02:00
Mark Jansen
cc7cf82673 [ROSAPPS] Remove applications from test directory
CORE-17097
2020-07-04 20:43:53 +02:00
Mark Jansen
ff6b138117 [ROSAUTOTEST] Add option to list all testable modules 2020-07-04 20:43:37 +02:00
Mark Jansen
6859348aea [SVCHOST] Fix PSID initialization
CORE-17151
2020-07-04 19:39:06 +02:00
Nguyen Trung Khanh
37c63770d7 [NTOS:IO] Fix pool memory disclosure in IopQueueTargetDeviceEvent (#2966) 2020-07-04 15:41:18 +02:00
Nguyen Trung Khanh
50510538db [WIN32SS][GDI] Fix pool memory disclosure in NtGdiGetOutlineTextMetricsInternalW (#2964) 2020-07-04 15:39:16 +02:00
Serge Gautherie
aae5cd8ea2 [CMAKE] Remove obsolete 'GCC_VERSION' checks (#2962)
following upgrade to RosBE 2.2.0 support and GCC 8.4.
2020-07-04 15:33:50 +02:00
Serge Gautherie
54e0dbe3b6 [ADVAPI32_WINETEST] test_create_delete_svc(): Fix 'account' size (#2960)
Cherry-pick
56a83c585a
2020-07-04 15:24:46 +02:00
Serge Gautherie
092e245754 [UTILDLL_APITEST] Create 'CachedGetUserFromSid()' test (#2954) 2020-07-04 15:24:13 +02:00
Serge Gautherie
7187b4d846 [ROSTESTS] sertest.c: Replace a busy loop with 'Sleep()' (#2886)
Detected by Cppcheck: uninitvar.
ROSTESTS-204

Co-authored-by: Victor Martinez <vicmarcal@gmail.com>
2020-07-04 15:18:22 +02:00
FritzsHero
fbb612f41a [OSK] Updated German On-Screen Keyboard translation (#2882) 2020-07-04 15:17:26 +02:00
Serge Gautherie
4292fdd8aa [NET] cmdAccounts(): Set ProductType default value (#2365) 2020-07-04 15:16:22 +02:00
Jose Carlos Jesus
62e52c7237 [USER32][NTUSER] Fix wrong return from LB_GETLISTBOXINFO (#2168)
And is now consistent with comctl32 and Wine too...
2020-07-04 15:11:10 +02:00
Victor Perevertkin
c40b0866b1 [UDFS] Zero-initialize IO_STATUS_BLOCK data in UDFCommonCreate
Some places have been changed to return FILE_DOES_NOT_EXIST, everything
else just returns 0. FastFAT driver from MS does the same (tm),
so I'm not going to have a big research here.
CORE-16623

Co-authored-by: Suraj K Suresh <kssuraj15@gmail.com>
2020-06-29 02:37:12 +03:00
Oleg Dubinskiy
622f187c04 [MSWSOCK] Use a correct prototype for SvchostPushServiceGlobals stub
See https://www.geoffchappell.com/studies/windows/win32/services/svchost/dll/svchostpushserviceglobals.htm.
2020-06-27 14:55:28 +02:00
Oleg Dubinskiy
dcc5dd2a69 [SDK][SVCHOST] Move all global svchost declarations to public header.
Also update the includes.
It will allow to use those declarations globally where they are required (e. g. for SvchostPushServiceGlobals functions in some services).
No functional changes.
2020-06-27 14:54:22 +02:00
Serge Gautherie
2dfcb500e2 [MSI] Remove obsolete '__ASM_DEFINE_FUNC()'
MSVC build reports:
{{
dll\win32\msi\msvchelper.h(3): warning C4005: '__ASM_DEFINE_FUNC': macro redefinition
sdk\include\reactos\wine/asm.h(60): note: see previous definition of '__ASM_DEFINE_FUNC'
dll\win32\msi\custom.c(547): warning C4003: not enough actual parameters for macro '__ASM_DEFINE_FUNC'
}}

Addendum to 476c99b and 9efafd6.
2020-06-27 14:48:00 +02:00
Serge Gautherie
82272f03e3 [OLE32] ole32_ros.diff: Remove remnant '__ASM_STDCALL_FUNC()'
Addendum to 0f5d91b.
CORE-16441
2020-06-27 14:48:00 +02:00
Serge Gautherie
bf88ce89c8 [APISETS] api-ms-win-crt-utility-l1-1-0: Fix 'llabs' return type
MSVC 'Release' build reports:
'dll\apisets\api-ms-win-crt-utility-l1-1-0_stubs.c(41): warning C4391: 'int llabs()': incorrect return type for intrinsic function, expected '__int64''

Addendum to 3f15a0d.
2020-06-27 14:46:15 +02:00
Serge Gautherie
02680ace4d [POWRPROF_APITEST] Fix cppcheck warnings.
* test_CallNtPowerInformation(): Fix 2 'sizeof(sizeof())' copypastas
* test_ValidatePowerPolicies_Next(): Delete a duplicate line
2020-06-27 14:43:08 +02:00
Serge Gautherie
0b9cbc5179 [CRT] _onexit(): Fix 'memcpy()' size
Cherry-pick
70bff7377d
2020-06-27 14:38:21 +02:00
Serge Gautherie
4213c70e2e [CRTDLL][CRT] Remove remnant declaration, silence cppcheck false positive.
* _atexit_cleanup is no longer used
* Fix cppcheck 'pointerSize' warning
2020-06-27 14:35:32 +02:00
Jared Smudde
9e20be0fbf [SYSDM] Set the proper icon in title bar 2020-06-27 10:22:07 +02:00
Thomas Faber
1481df94ab [KMTESTS:EX] Use stricter checks for the UUID returned from ExUuidCreate.
* Check the entire version field
* Check the variant field
* Accept RPC_NT_UUID_LOCAL_ONLY, which is sometimes returned by Windows
* Repeat the test to show that these things happen every time

Based on a patch by Serge Gautherie.
2020-06-27 10:13:51 +02:00
Serge Gautherie
8983adf967 [FASTFAT_NEW] Sync to upstream 16022c5 (#2938) 2020-06-26 20:03:01 +03:00
Serge Gautherie
ed7196d964 [TASKMGR] Remove 'Debug Channels' feature, which is Wine-specific 2020-06-25 22:08:03 +02:00
Serge Gautherie
a72b78558d [NTOS:MM] MiGetPageTableForProcess(): #if out unreachable code
No impact.

Detected by Cppcheck: unreachableCode.
Addendum to ddaf47dec3 (r34976).
2020-06-25 21:59:02 +02:00
Victor Perevertkin
1e512e29dc [USBSTOR] Correctly terminate a REG_MULTI_SZ string
returned by the IRP_MN_QUERY_ID handler
2020-06-24 21:15:58 +03:00
Nguyen Trung Khanh
a279b1d2c6 [WIN32K:NTUSER] Zero allocated memory in IntCbAllocateMemory.
This avoids disclosing pool contents to user mode when not all members
of the respective structure are initialized or when there is padding.

In co_IntCallWindowProc, also zero the stack buffer since this can
be passed to user mode as well, and contains padding.
2020-06-24 09:15:27 +02:00
Thomas Faber
67592f9750 [NPFS] Fix querying FileAllInformation. 2020-06-24 09:04:05 +02:00
Victor Perevertkin
21e9e2baa5 [NTOS:IO] Move device manipulation functions from pnpmgr/pnpmgr.c to pnpmgr/devaction.c
And rearrange them in more logical order.

This effectively splits the file, leaving public "Io" functions in
pnpmgr.c along with some things not related do device object management.
Functions which manipulate the device tree are left in devaction.c.
In future all these functions will only be accessed from
DeviceActionWorker.
While being public API, IoRequestDeviceEject and IoInvalidateDeviceState
have been moved to devaction.c as well. In next commits they will be
converted to DeviceActionWorker routines and their callers will be put
in pnpmgr.c
2020-06-24 04:03:35 +03:00
Victor Perevertkin
d230f8829c [ROSAUTOTEST] Add /t parameter for repeating tests 2020-06-24 02:40:18 +03:00
Thomas Faber
29b49c36ff [KBDCLASS][MOUCLASS] Properly stub power IRP handling. CORE-12148 CORE-17136 2020-06-21 10:39:49 +02:00
Thomas Faber
23ccd13639 [I8042PRT] Get rid of IrpStub. CORE-12148 CORE-17136
We neither want to handle IRPs we don't understand, nor do we want to
assert in case of unexpected IOCTLs.
2020-06-21 10:39:34 +02:00
Victor Perevertkin
b5815efe83 [NTOS:IO] Move device node functions from pnpmgr/pnpmgr.c to pnpmgr/devnode.c
Add SAL2 annotations to functions while moving
Convert IopCreateDeviceNode description to a Doxygen format
2020-06-21 09:39:13 +03:00
Serge Gautherie
ab2b7a6bc6 [FASTFAT_NEW] Simplify unsupported NT6.2+ workarounds 2020-06-21 09:27:44 +03:00
Serge Gautherie
1ceed5ad5a [FASTFAT_NEW] Remove obsolete compiler workarounds
following upgrade to GCC 8.4 and MSVC 2015.
2020-06-21 09:27:44 +03:00
Serge Gautherie
9611e88624 [FASTFAT_NEW] Fix GCC 8.4 build
'.../strucsup.c:...:...: error: 'Ex*NPagedLookasideList' is static but used in inline function 'Fat*' which is not static [-Werror]'
2020-06-21 09:27:44 +03:00
Serge Gautherie
f26fa55891 [FASTFAT_NEW] fatdata.h: Properly mark ReactOS own code
Addendum to 3013e15.
2020-06-21 09:27:44 +03:00
Thomas Faber
dd6eb40381 [CMAKE] Remove work-arounds for old CMake versions. CORE-17109 2020-06-20 15:25:29 +02:00
Thomas Faber
a3a1d8f421 [CMAKE] Use CMake 3.17 default policies. CORE-17109 2020-06-20 15:25:28 +02:00
Thomas Faber
add677e45b [CMAKE] Bump minimum to 3.17, no longer require -ReactOS build. CORE-17109 2020-06-20 15:25:28 +02:00
Thomas Faber
3169c94e06 [CMAKE] Set CMAKE_MSVC_RUNTIME_LIBRARY to satisfy CMP0091. CORE-17109
We use /NODEFAULTLIB, and consequently also don't want CMake to add
a default library for us.
2020-06-20 15:25:27 +02:00
Thomas Faber
94073cc1d9 [CMAKE] Use NEW policy for CMP0058. CORE-17109 2020-06-20 15:25:27 +02:00
Thomas Faber
dadc59f135 [CMAKE] Mark host tools as byproducts. CORE-17109 2020-06-20 15:25:27 +02:00
Thomas Faber
b783349e4e [BOOTDATA] Mark reactos.inf as a byproduct. CORE-17109 2020-06-20 15:25:16 +02:00
Thomas Brogan
88300ec3b3 [WINMM] Improve implementation of timeGetTime, timeBeginPeriod, timeEndPeriod (#2933)
Use QueryPerformanceCounter if a high-resolution timer is requested (<= 5ms) instead of the more inaccurate GetTickCount.
2020-06-20 13:28:25 +03:00
Hervé Poussineau
2b9941e7cb [PCI] Fix PDO removal
We must not do anything on PDO removal, especially not deleting it.
We are allowed to delete it, only once we successfully completed a IRP_MN_QUERY_DEVICE_RELATIONS without with PDO.
2020-06-20 08:16:24 +02:00
Hervé Poussineau
ea4af587a9 [SETUPAPI] Add function names in traces 2020-06-20 08:16:07 +02:00
James Tabor
f6d2b34ad0 [NtUser] Fix MSVC_x64 Build
Attempt to fix.
2020-06-18 11:55:13 -05:00
James Tabor
06e01c8968 [NtUser] Fix Crash in Win32k
Use strict thread and desktop verifying. See CORE-15092 and CORE-17133.
2020-06-18 11:06:31 -05:00
Serge Gautherie
5f076e5558 [GDI32] MirrorRgnByWidth(): Fix 'phrgn' parameter handling
Detected by Cppcheck: uselessAssignmentPtrArg.
Addendum to 794e7aa (r31523) and e647530 (r65893).
2020-06-18 10:33:35 +02:00
Serge Gautherie
fb023adf5a [VIDEOPRT] IntVideoPortCreateAdapterDeviceObject(): 1+1 trivial fixes
Detected by Cppcheck: funcArgOrderDifferent, redundantAssignment.
2020-06-18 10:31:27 +02:00
Serge Gautherie
cac13bcd7f [KMTESTS:OB] ObTypes: Support latest NT5.2 results
Update Port and WaitablePort values.
2020-06-18 10:09:37 +02:00
He Yang
393a2c42fe [RAPPS] delete obsolete field 2020-06-14 20:34:43 +02:00
Joachim Henze
1b8b339aae [DNSRSLVR] Define NDEBUG in cache.c
To avoid leaking private data into logs by default.
Some testers may consider their DNS-suffix private data.
And DnsIntCacheAddEntry() logs that via Record->pName.
2020-06-14 20:03:33 +02:00
Oleg Dubinskiy
3cb8ee6d7e Revert "[FONTS] Add Selawik as a substitution for Segoe UI" CORE-17122 (#2921)
This reverts commit 97fb49a3d2.
2020-06-14 19:09:41 +09:00
Thomas Faber
aa811c00e3 [MPG123] Update to version 1.26.1. CORE-17098 2020-06-14 09:19:05 +02:00
Thomas Faber
cab7e9ade8 [ACPICA] Update to version 20200528. CORE-17094 2020-06-14 09:19:02 +02:00
Thomas Faber
52f103c85b [RTL] Use LastEntryInSegment to speed up RtlpFindAndCommitPages. CORE-14588 2020-06-14 09:10:31 +02:00
Thomas Faber
c4f736e8f4 [RTL] Add and populate LastEntryInSegment. CORE-14588 2020-06-14 09:10:31 +02:00
Thomas Faber
dd83bcd6ad [RTL] Create a define for the common members of HEAP and HEAP_SEGMENT. CORE-14588
The code relies on these members matching up, so it's confusing for them
to be duplicated.
2020-06-14 09:10:27 +02:00
Victor Perevertkin
2540c3b1e8 [USBSTOR] Fix unused variable introduced in 94e61c3 2020-06-13 03:20:08 +03:00
Victor Perevertkin
493f2ace11 [USBSTOR] Fix wrong function name in a9b97ae 2020-06-13 03:07:00 +03:00
Victor Perevertkin
94e61c3080 [USBSTOR] Move PDO's Inquiry data and FDO's SCSI context
to their Device Extensions.
This way the driver can better handle low memory situations
2020-06-12 16:55:27 +03:00
Victor Perevertkin
a9b97aeded [USBSTOR] General refactoring.
Remove unused structures and unused fields in device extensions.
Replaced magic numbers with constants
2020-06-12 16:55:27 +03:00
Serge Gautherie
cb2515d521 [README.FSD] Add 'disk_new' entry
Follow-up to 022f4b2 (r55555).
2020-06-12 10:04:03 +02:00
Serge Gautherie
f6d551525b [README.FSD] Add 'nfs41 project' entries
CORE-8204
2020-06-12 10:04:03 +02:00
Serge Gautherie
2367bd2af8 [README.FSD] Remove obsolete 'reactos/' directory 2020-06-12 10:04:03 +02:00
Stanislav Motylkov
415c737cc3 [FREELDR] Add display controller detection for Xbox
Also add system identifier here.

[BOOTDATA] Fix some typos

CORE-16216
2020-06-09 22:02:09 +03:00
Serge Gautherie
9f6442ffbe [SECUR32_WINETEST] Update for new WineHQ certificate
Cherry-pick
16254af818

CORE-17088
2020-06-08 20:32:52 +02:00
Victor Perevertkin
d424a0e088 [WININET_WINETEST][URLMON_WINETEST][SHELL32_APITEST] Skip some tests
Due to hangs on test machines
ROSTESTS-357 ROSTESTS-358 CORE-17057
2020-06-08 03:43:43 +03:00
Oleg Dubinskiy
1761bedb82 [VSSAPI] Add missing wrapper for ?CreateVssBackupComponents@@YGJPAPAVIVssBackupComponents@@@Z and _VSSAPI_CreateVssBackupComponents@4 in msvc.s, to fix MSVC compilation 2020-06-07 19:45:05 +02:00
Oleg Dubinskiy
23a1f8d335 [VSSAPI] Import Wine commits "Stub CreateVssBackupComponentsInternal + ?CreateVssBackupComponents@@YGJPAPAVIVssBackupComponents@@@Z"
ce9b5a7e17
767c94bc5c
CORE-9511.
2020-06-07 19:45:05 +02:00
Oleg Dubinskiy
3904423d8f [PSDK] Import vsbackup.idl from Wine and enable it in CMakeLists.txt
Required by vssapi stubs CORE-9511.
2020-06-07 19:45:05 +02:00
Oleg Dubinskiy
9994a4309c [PSDK] Add some missing definitions from Wine in vss.idl
Required by vssapi stubs and Wine's vsbackup.idl CORE-9511.
2020-06-07 19:45:05 +02:00
Oleg Dubinskiy
eac44a7f9d [PSDK] Replace our vswriter.h by Wine's vswriter.idl and enable it in CMakeLists.txt
Required by vssapi stubs CORE-9511.
Our current vswriter.h has no some needed definitions, but simple adding them in the current header is not an option, since Wine's vsbackup.idl (which is required too) depends on it.
Then it will not need to add ROS-specific diff(s) in Wine's vsbackup.idl.
2020-06-07 19:45:05 +02:00
Charles Ambrye
99dd292553 [CHARMAP] Functionality Improvements and Bug Fixes (#2560)
- Resize the window slightly when compiled with REMOVE_ADVANCED to avoid deadspace at the bottom of the window.

- Skip over the non-printable characters by starting with character ' ' + 1.

- Instead of iterating over every cell, simply compute the cell x and y using the CellSize.

- Modify behaviour of charmap to allow large character render on mouse move, only hiding the larger character on double click.

- Simplify math for moving window to be on desktop.
Added FIXME to highlight this doesn't work well on multi-monitor setups.
Changed xPos and yPos to LONG since negative numbers are valid on multi-monitor setups.

- Do not draw invalid glyphs on the map (can happen when switching fonts or filtering existing font).
- Do not allow mouse-over of invalid glyphs.

- Fix bug that caused the Help button to remain enabled as it was being modified before it was even created.
- Do a better job at finding the correct glyph under the mouse.

- Ensure the active cell is cleared correctly.

- Invalidate the rect around the previously active cell to ensure it gets redrawn as inactive.

- Fix bug from CORE-10518 (initial active cell was not being invalidated on scroll).

- Do not try to copy a character to the output if there is no active cell selected.

- Populate the advanced portion of the screen with several built-in code pages (the list is hardcoded so that we don't enumerate everything).

- Add functionality to filter the character map by a code page (called a character set in this program).

- Some fonts list 0x0000 as drawable, even when it isn't, so ignore any valid glyphs that contain it.
2020-06-07 19:34:45 +02:00
Oleg Dubinskiy
31e00140d3 [RPCRT4] Export NdrCreateServerInterfaceFromStub as stub
Required by MS ole32.dll CORE-15395, CORE-17004.
2020-06-07 14:08:58 +02:00
Thomas Faber
185591368d [SHELLBARS] Add missing psdk dependency. 2020-06-06 23:02:35 +02:00
Thomas Faber
789c88c185 [MSTASK] Add netapi32 dependency to ensure atsvc_c.h is available. 2020-06-06 23:02:35 +02:00
George Bișoc
38c01a8429 [NTDLL_APITEST] Add ProcessWx86Information testcase for NtXxxInformationProcess (#2852) 2020-06-06 21:38:37 +02:00
Amine Khaldi
139a3d6661 [CMAKE] Implement PCH builds with target_precompile_headers. CORE-16905 2020-06-06 21:58:41 +03:00
Serge Gautherie
4cd7b3a3df [HHPCOMP] Fix 2 MSVC C4101 warnings (#2392)
"...\chmc\chmc.c(671): warning C4101: 'code': unreferenced local variable"
"...\chmc\chmc.c(671): warning C4101: 'len': unreferenced local variable"
2020-06-06 18:42:47 +02:00
Serge Gautherie
abe1dd31c4 [SHLWAPI] lang/*.rc : Enforce aa-BB filenames (#2816) 2020-06-06 18:25:43 +02:00
Serge Gautherie
1e861d9759 [NFSD] readdir_copy_shortname(): Add needed brackets to '*name_size_out' (#2856)
CORE-17078
2020-06-06 18:21:05 +02:00
Serge Gautherie
e7440eff8f [APPHELP_APITEST] Properly handle a couple 'malloc()/free()' (#2898)
Detected by Cppcheck: memleak, redundantAssignment.
Addendum to 78280ad2 (r71226).
2020-06-06 17:58:34 +02:00
Serge Gautherie
3051eb0e48 [NTOSKRNL] Add 'DECLSPEC_NORETURN' to a few 'KeBugCheck*()' (#2896) 2020-06-06 17:50:14 +02:00
George Bișoc
d4acd8cc91 [NTDLL_APITEST] Add NtSetInformationThread testcase (#2793) 2020-06-06 17:48:39 +02:00
George Bișoc
a7dd057ce2 [NTDLL_APITEST] Add ProcessBasePriority and ProcessRaisePriority classes unit tests (#2740)
ProcessRaisePriority expects a buffer input information argument of KPRIORITY type definition as shown in this documentation (see the PROCESS_INFORMATION_CLASS structure members list of classes).
https://undocumented.ntinternals.net/index.html?page=UserMode%2FUndocumented%20Functions%2FNT%20Objects%2FProcess%2FNtSetInformationProcess.html
2020-06-06 17:47:38 +02:00
Thomas Faber
4f49a9c792 [NTOS:KE] Save ExceptionList in the assembly version of KiEnterTrap. CORE-15723
If SEH is used in a C trap handler, the exception frame will be
registered before the call to KiEnterTrap, which means we save
the wrong trap handler. We'll therefore also restore this wrong
frame for the excepting code, resulting in a stale SEH chain.

We avoid this problem by saving the handler in the assembly
trap entry code instead of from C. While SEH in a C trap handler
should now theoretically be safe, we still forbid it through
asserts in the C KiEnterTrap variants to make any potential
future problems more obvious. Should this functionality be
needed at some point and deemed safe, these asserts can then be
removed.
2020-06-06 08:44:30 +02:00
Thomas Faber
d40ff3ca98 [NTOS:KE] Split KiCheckForSListFault into its own function. CORE-15723
This avoids SEH in a trap handler.
See the following commit for more details.
2020-06-06 08:42:22 +02:00
Thomas Faber
4dedc8ff52 [RTL] Add FPO information to RtlpExecuteHandler. CORE-15723 2020-06-06 08:40:20 +02:00
Serge Gautherie
5d88487cd1 [CDMAKE] Add 'DECLSPEC_NORETURN' to 'error_exit()' (#2893)
Detected by Cppcheck: doubleFree.
2020-06-05 13:57:49 +02:00
Serge Gautherie
6808e40b3b [SDK:RTL] RtlValidAcl(): Improve ACL error messages (#2833)
CORE-11506
2020-06-05 00:20:20 +03:00
Serge Gautherie
8140203940 [KERNEL32] FatalAppExitW: Add an 'UNREFERENCED_LOCAL_VARIABLE(Status)' (#2883)
Addendum to 21d2accad3 (r71793).
2020-06-04 23:35:54 +03:00
Serge Gautherie
450425028c [IPHLPAPI] getNumInterfacesInt(): Remove 'if()' redundant condition (#2884)
No impact.

Detected by Cppcheck: redundantCondition.
Addendum to 1fe3a2d6c3 (r9788).
2020-06-04 23:26:28 +03:00
Dmitry Borisov
17c5fb8866 [HALXBOX] Fix clock drift (#2889)
Add a new rollover table for Original Xbox (base frequency is 1.125000 MHz).
This fixes potential time issues in kernel and drivers.

CORE-16216
2020-06-03 02:14:16 +03:00
Stanislav Motylkov
092bc78a42 [FREELDR] Fix register offset
Addendum to 10e52f6.
2020-06-03 02:04:07 +03:00
Katayama Hirofumi MZ
7c9a8c0b89 [SHELL32] Improve readability of filesystem notification (#2737)
Improve human readability of filesystem change notification.
- Rename the identifiers for human readabilities.
- Split the code into CFilePathList and CDirectoryWatcher classes.
- Encapsulation of code.
CORE-13950
2020-06-02 18:42:07 +09:00
Jose Carlos Jesus
3dad100ea4 [TRANSLATION] Add/update Portuguese translation (#2850)
- Add translation for: iernonce, modmui.
- Update translation for: jscript, msports, shell32.
2020-06-01 20:48:58 +02:00
Jose Carlos Jesus
8189133865 [TRANSLATION] Add/Update Portuguese translation for some shell extensions (#2845)
- Add translation for: devcpux, netplwiz, ntobjshex, stobject, zipfldr.
- Update translation for: sendmail.
2020-06-01 20:31:06 +02:00
Serge Gautherie
b5af1eb44a [CSRSRV] CsrUnhandledExceptionFilter: Check RtlAdjustPrivilege() result (#2864)
And remove unused NtRaiseHardError() Status assignment.

Detected by Cppcheck: redundantAssignment.
Related to commit d221bdfb (r55647).
2020-06-01 20:20:31 +02:00
Serge Gautherie
7094297b7a [APISETS] Fix some functions that are NT10(v1607)+ (#2738)
- *_onexit_*() are NT10(v1607)+
- *_seh_filter_*() are NT10(v1607)+ actually

CORE-16700
2020-06-01 20:04:32 +03:00
He Yang
e5886f862f [RAPPS] Update Chinese (Taiwan) translation (#2873) 2020-06-01 14:30:53 +03:00
Serge Gautherie
4425bd8db3 [CSRSRV] CsrSetProcessSecurity(): Check 1st NtQueryInformationToken() result (#2862)
Also:
* Add 1 NtClose(hToken), in an error case.
* Do not call RtlFreeHeap(..., ..., NULL).

Follow-up to #2857.
2020-06-01 14:17:29 +03:00
Serge Gautherie
64fea1dbd0 [MSGINA] gui: Improve DlgData_LoadBitmaps() (#2520)
And let bar timer depend on the bar image only.

Addendum to 623dd26cce.
2020-06-01 12:26:53 +03:00
Serge Gautherie
6baa151888 [APISETS] Some API sets are NT10+ and win32 only (Part 1/2) (#2805)
* api-ms-win-downlevel-shell32-l1-1-0.dll is NT10+ and win32 only
* api-ms-win-shcore-obsolete-l1-1-0.dll is NT10+ and win32 only
* api-ms-win-downlevel-shlwapi-l2-1-0.dll is NT10+ and win32 only

CORE-8880
2020-06-01 12:20:13 +03:00
Serge Gautherie
701e6c6a2f [SNDREC32] Use ShellAboutW(..., ..., NULL, ...) (#2827)
Addendum to 82e4efea77.
2020-06-01 12:17:29 +03:00
Serge Gautherie
95e5877027 [USER32] MDIClientWndProc_common(): Properly sync to old Wine (#2843)
No impact.

Missed part of
fb6304119a

Detected by Cppcheck: identicalInnerCondition.
Addendum to 303ece2421 (r72520).
2020-06-01 12:14:38 +03:00
Serge Gautherie
ceccaae311 [NTOS:MM] MmDeleteProcessAddressSpace(): Move 'Address' to where it belongs (#2865)
No impact.

Detected by Cppcheck: unusedVariable.
Addendum to 2dade10d54.
2020-06-01 12:10:11 +03:00
Serge Gautherie
703c56beb3 [REACTOS] RegQueryValueExW() wants bytes, not chars (#2876)
Cherry-pick:
a359e02666
0662da18b8
e4e5eda3d9

CORE-9665

Co-authored-by: Victor Martinez <vicmarcal@gmail.com>
2020-06-01 12:06:49 +03:00
Stanislav Motylkov
1c504f4c57 [INF] Add better device descriptions for Original Xbox
CORE-16216
2020-06-01 00:30:51 +03:00
Eric Kohl
505b9f8052 [SCHEDSVC] Implement the job start time calculation for given days of month 2020-05-31 22:33:49 +02:00
Eric Kohl
d70c64bde0 [SCHEDSVC] Fix the job start time calculation for given days of week. 2020-05-31 15:49:22 +02:00
Timo Kreuzer
cb99761bc1 [NTDLL] Use lowest OS version GUID in the application manifest, instead of highest 2020-05-31 13:14:01 +02:00
Timo Kreuzer
0ed8b916e4 [MSTASK] Add C stubs and comment out decorated exports
MSVC's LINK is not able to export both the undecorated and decorated symbol from the same dll. This results in an incoherence between the spec file entries and the actual exports, breaking the dll export versioning.
2020-05-31 12:26:37 +02:00
Mark Jansen
2d9b385715 [NTOSKRNL] Group files in the project file based on directory layout 2020-05-29 21:10:10 +02:00
Victor Perevertkin
2dc9f0ae43 [GITHUB] Set up necessary environment variables for Flex and Bison
Decrease ccache size, based on observations
Print ccache statistics in the end of build
2020-05-28 23:11:53 +03:00
Thomas Faber
e4066536c2 [CPPRT][CRT] Avoid extern assembly declarations with no type. CORE-17088
Fixes build with ML 14.26.
2020-05-28 14:26:48 +02:00
Katayama Hirofumi MZ
99b52df014 [SHELL32][INCLUDE] Improve CheckEscapesA/W (#2795)
Fix and improve shell32!CheckEscapesA/W functions.
Add a testcase for shell32!CheckEscapesA/W to shell32_apitest.
2020-05-28 10:58:26 +09:00
Serge Gautherie
9a614c82e1 [LABEL] wmain(): Initialize 'szBuffer' (#2867)
Detected by Cppcheck: uninitvar.
2020-05-27 17:05:33 +02:00
Serge Gautherie
938df97b54 [WIN32K:NTUSER] NC_IconForWindow(): Remove redundant if() (#2842)
No impact.

Detected by Cppcheck: identicalInnerCondition.
Addendum to 98060c28c8 (r60622).
2020-05-26 20:25:39 +02:00
Serge Gautherie
11345aedd8 [FORMATTING] [CMAKE] Remove space in 'if (' (#2847) 2020-05-26 20:24:02 +02:00
Serge Gautherie
4b1ae54046 [WINSPOOL] GetPrinterDriverA(): Refactor failure handling (#2832)
* [WINSPOOL] GetPrinterDriverA(): Refactor failure handling

Addendum to d90beaeed2.
2020-05-26 20:21:25 +02:00
Serge Gautherie
8fde48b5d7 [CSRSRV] CsrGetProcessLuid(): Check 1st NtQueryInformationToken() result too (#2857)
Detected by Cppcheck: redundantAssignment.
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-05-25 23:52:35 +02:00
Serge Gautherie
d59d74fb69 [NTVDM] GetNextFreeVDDEntry(): Remove 'Entry' redundant initialization (#2859)
Detected by Cppcheck: redundantInitialization.
Addendum to ed874b41 (r61283).
2020-05-25 23:49:47 +02:00
Serge Gautherie
03d5ff7f68 [MMSYS] OnHScroll(): Fix wrong '&&' operator (#2855)
CORE-17079
2020-05-25 19:57:52 +02:00
Serge Gautherie
327813e7da [HAL:HALPPC] HalAllocateCrashDumpRegisters(): Remove redundant MapRegisterNumber assignment (#2854)
Detected by CppCheck: redundantAssignment.
Addendum to commit 81f09273 (r28793).
2020-05-25 18:58:17 +02:00
Stanislav Motylkov
7c8d5635aa [PROCESSR][INF] Fix "Intel Intel" duplication typos
Addendum to 3509318.
2020-05-25 02:36:17 +03:00
Stanislav Motylkov
4c78b2c38d [NTOS:PO] Report correct CPU frequency in CurrentMhz
Also add some relevant FIXME comments. CORE-13206
2020-05-25 01:24:52 +03:00
Yaroslav Kibysh
93aa5801dc [NTOS:INBV] Fix hardcoded values (#2840) 2020-05-24 19:37:47 +02:00
Serge Gautherie
de0ce9dd02 [NTOS:EX] ExpInitializeExecutive(): Fix 'PerfMem' copypasta (#2841)
Detected by Cppcheck: identicalInnerCondition.
Addendum to commit c307d73c (r25621).
2020-05-24 19:37:16 +02:00
Timo Kreuzer
dd7fb63cd1 [ADVAPI32] Convert ordinals to @ in spec file 2020-05-24 08:22:24 +02:00
Tibor Lajos Füzi
1017c73a9c [TRANSLATION] Hungarian translation update for shell32 (#2828) 2020-05-23 19:20:16 +02:00
Serge Gautherie
99d0a348aa [LSASRV] LsapLogonUser(): Fix 'AuthenticatingAuthority' copypasta (#2839)
Reported by contributor 'qarmin'.
CORE-17074
2020-05-23 19:07:04 +02:00
Timo Kreuzer
f323778b0b [NTDLL] Rename ExportEntry to ExportDirectory to better represent what it is 2020-05-23 17:30:52 +02:00
Serge Gautherie
cf510c3e64 [NTOSKRNL] Sync some INIT_FUNCTION (#2824)
- Sync some INIT_FUNCTION with how they are used and what is already
  specified in the headers.
Addendum to commit 85e5b5be (r49445).

- KdbpGetCommandLineSettings(): Remove INIT_FUNCTION.
Fix MSVC 2015 x86 custom build:
"...\ntoskrnl\kdbg\kdb.c(1699): error C2983: 'KdbpGetCommandLineSettings': all declarations must have an identical __declspec(code_seg(...))"

And may also fix obscure bugs when entering into the KDBG debugger.
2020-05-23 16:05:58 +02:00
Serge Gautherie
b20f815126 [NTOSKRNL] Place INIT_FUNCTION before the return type (#2823)
(but after 'static' or SAL 2 annotation.)
Follow-up to 71fefa32, which mentions that it's actually required by the compiler in some circumstances.
2020-05-23 15:56:10 +02:00
Piotr Hetnarowicz
35b5876a95 [APPWIZ] Polish translation update (#2790)
FIXED: dialogs, button, description
2020-05-23 15:43:56 +02:00
Piotr Hetnarowicz
17196cd208 [MC] Update Polish translation of netmsgmsg.mc (#2691)
Co-authored-by: Adam Słaboń <asaillen456esx@gmail.com>
Co-authored-by: Adam Stachowicz <saibamenppl@gmail.com>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-05-23 15:42:11 +02:00
Jose Carlos Jesus
9619dd4598 [RAPPS] Update Portuguese translation (#2820)
Update translation following PR #2792.
2020-05-23 15:17:52 +02:00
Eric Kohl
cf62e22974 [USERENV] Implement DeleteProfileW() 2020-05-23 12:37:16 +02:00
Eric Kohl
5bc6f79399 [SAMSRV] SampInitializeSAM: Fix indentation and add comments 2020-05-23 12:30:54 +02:00
Serge Gautherie
373a8dbb5c [WINSPOOL] GetPrinterA(): Refactor failure handling (#2830)
Addendum to ecde376825.
2020-05-23 09:08:00 +02:00
Kyle Katarn
57401cb66d [DEVMGR] Use the ShellAboutW API routine to display the about dialog and French translation update (#2807)
As the dialog simply displays the copyright names and nothing particular it makes sense to use ShellAboutW() instead.
Similar to #2743 by @HBelusca
2020-05-22 22:53:17 +09:00
Kyle Katarn
4ce7081766 [SYSSETUP][MAIN] Fix Mouse Properties UI and improve French translation (#2810)
- PS2 Mouse Advanced Properties : Static control (frame) added
- PS2 Mouse Advanced Properties : French translation added and control layout adapted accordingly
- Mouse CPL > Wheel > Sroll line text box ES_NUMBER style added
- ReactOS Setup : French translation added
2020-05-22 22:49:27 +09:00
Eric Kohl
1b90e54242 [BROWSER] Add the browser service 2020-05-21 22:49:33 +02:00
Eric Kohl
80b139d726 [UMPNPMGR] Start work on PNP_GetNextResDes() 2020-05-21 21:51:06 +02:00
Serge Gautherie
ef6711c904 [SYSSETUP] DoWriteProductOption(): Fix 'pData' copypastas (#2826)
Addendum to 612729b092.

CORE-17069
2020-05-22 01:52:50 +09:00
Jose Carlos Jesus
c3ab469e44 [ACCESS.CPL] Improvements to Portuguese translation (#2800) 2020-05-21 15:36:33 +02:00
Yaroslav Kibysh
319374eb71 [NTOS:INBV] Fix screen flash and more (#2821)
- Fix screen flash (CORE-16786);
- Don't process rotating bar if not used.
2020-05-21 00:23:17 +02:00
He Yang
e5336bd2af [RAPPS] Rapps trivial fixes (#2819)
- Specify W explicitly for URL_COMPONENTS;
- Remove malloc/free for once used HostName in urlComponents;
- Use PathAppendW to operate on path string.
2020-05-21 00:21:26 +02:00
Victor Perevertkin
5349f49cfe [SDK][FREETYPE] Fix GCC8.4 -O2 build 2020-05-21 01:07:26 +03:00
Serge Gautherie
924f19f6dc [REACTOS] Remove executable bits on source files (#2822) 2020-05-20 23:09:44 +02:00
Eric Kohl
38494d0997 [UMPNPMGR] Improve some debug messages 2020-05-20 19:56:30 +02:00
Kyle Katarn
637b1e8661 [RAPPS] French translation update following PR #2792 (#2815) 2020-05-20 16:05:12 +02:00
Kyle Katarn
357b3fa858 [MAIN.CPL] Fix of Keyboard settings French translation (#2812) 2020-05-20 15:47:24 +02:00
Kyle Katarn
b8f7d4c56d [TIMEDATE] French translation (#2811) 2020-05-20 15:45:47 +02:00
Mark Jansen
83a9f71690 [SHELL32] Allow creation of an empty CFileSysEnum
CORE-16908
2020-05-19 20:35:52 +02:00
Joachim Henze
4cbb21761c [SYSSETUP] Fix broken build on RosBE2.1.6 CORE-17028
The build broke due to a typo introduced by
0.4.15-dev-275-g
612729b092

../dll/win32/syssetup/wizard.c: In function 'ProductPageDlgProc':
../dll/win32/syssetup/wizard.c:527:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-
after-statement]
cc1.exe: all warnings being treated as errors
2020-05-19 20:32:21 +02:00
He Yang
a21d959e90 [RAPPS] Move database source URL to settings dialog (#2792)
- Add download source in settings dialog, and apply it when download .cab file
- Now user should specify full rappmgr.cab URL
- Check if URL is vaild in settings dialog
- Move source settings to the end of struct (will refactor settings to one value per option later)
2020-05-19 20:06:10 +03:00
Kyle Katarn
fb2a9bb60d [JOY] Fix missing UI elements and French translation (#2808)
Missing GUI elements added.
Improve French translation.
2020-05-19 19:09:05 +09:00
Katayama Hirofumi MZ
612729b092 [SYSSETUP][BOOTDATA] Make Server default again and write Service Pack (#2749)
- Make "ReactOS Server" the default product option again instead of "ReactOS Workstation".
- Write "Service Pack" info onto registry.
- Add ProductOption option to bootcd unattend.inf.
- Delete IDC_PRODUCT_SUITE and IDC_PRODUCT_TYPE controls.
CORE-17028
2020-05-19 15:41:26 +09:00
Katayama Hirofumi MZ
5800ee5e27 [SHELL32_APITEST] Strengthen SHChangeNotify testcase (#2797)
Investigate on nSources and fRecursive parameters. CORE-13950
2020-05-19 09:29:42 +09:00
Victor Perevertkin
7b105ceb56 [SHELL32_APITEST] Disabled DragDrop test due to race condition
To be enabled back when the bug is fixed
CORE-17057
2020-05-18 20:50:07 +03:00
Hermès Bélusca-Maïto
240f6737e9 [CMD] Add a ExecuteCommandWithEcho() helper and use it in Batch() and as the implementation of RunInstance() FOR-loop helper. 2020-05-18 02:21:57 +02:00
Hermès Bélusca-Maïto
ce543fbb72 [CMD] Fix the stop-batch prompt appearance: do not display it more than once in a row. 2020-05-18 02:21:57 +02:00
Hermès Bélusca-Maïto
d0ced4ffdf [CMD] Fix the ErrorMessage() function.
Specify its szFormat parameter optional, and correctly initialize the
szMessage buffer.
2020-05-18 02:21:56 +02:00
Jose Carlos Jesus
d5784d6345 [DESK][TIMEDATE] Update Portuguese translation (#2801) 2020-05-17 23:53:54 +02:00
Adam Stachowicz
cc662bfde8 [EVENTVWR] Update polish translation (#2804)
After commit 8756cec0.
2020-05-17 23:39:56 +02:00
Hervé Poussineau
468b8f3719 [FREELDR] Fix I/O range size of serial ports 2020-05-17 23:08:26 +02:00
Thomas Faber
8c8c03e9a8 [NTOS:OB] Fix incorrect variable name in ObfDereferenceObject. 2020-05-17 21:43:58 +02:00
Thomas Faber
60346a5732 [NTOS] Prohibit use of MAX_PATH in the kernel. Use MAX_WIN32_PATH if you really mean it. CORE-15882 2020-05-17 21:30:08 +02:00
Thomas Faber
c60d25fb26 [NTOS:PNP] Directly accept a UNICODE_STRING in LocateChildDevice. CORE-15882 2020-05-17 20:56:16 +02:00
Thomas Faber
2242ca6920 [NTOS:PNP] Avoid an unnecessary stack buffer in PnpRootCreateDevice. CORE-15882 2020-05-17 20:56:16 +02:00
Thomas Faber
1b0fe76d0d [NTOS:PNP] Avoid an unnecessary stack buffer in EnumerateDevices. CORE-15882 2020-05-17 20:56:16 +02:00
Thomas Faber
ac52401d74 [NTOS:PNP] Move child device creation into its own function
Also fix some leaks and a DPRINT format string.
2020-05-17 20:56:11 +02:00
Eric Kohl
6efb3cbe03 [SETUPAPI] Implement CM_Get_Next_Res_Des_Ex() partially (WIP) 2020-05-17 20:04:26 +02:00
Kyle Katarn
8756cec0e3 [EVENTVWR] Implementation of Properties page functionnal code. (#2744)
Implementation of functional code for log properties page in order to allow user to :
- Make modification and have them taken into account when properties page is closed / apply is used;
- Set defaults (including correction of default max size);
- Delete content of log;
- Make "Apply" button functional based on user inputs;
- Correct default value during installation (duration, size).

- Improve InitPropertiesDlg() error;
- Fix SavePropertiesDlg(): When the event log key does not exist, it is not recreated by the event log viewer.
- GetDisplayNameFileAndID(): Show the error also when opening the event log key fails.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-05-17 18:54:39 +02:00
Hermès Bélusca-Maïto
591f7ff5d7 [CHARMAP_NEW] Remove non-existing entries. 2020-05-17 18:46:42 +02:00
Julen Urizar Compains
546862babc [TRANSLATION] Update Spanish, and add Basque translation (#2667)
Add/update translation for:
charmap_new, logoff, mspaint, notepad, usetup, welcome,
hotplug.cpl, sysdm.cpl, aclui.dll, comctl32.dll, comdlg32.dll,
hhctrl.ocx, kernel32.dll, msi.dll, oledlg.dll, shell32.dll,
tapiui.dll, themeui.dll, wininet.dll, winmm.dll, wldap32.dll,
winsrv.dll.
2020-05-17 18:46:36 +02:00
Stanislav Motylkov
fa1ec0a2ed [BOOTVID][HALXBOX] Implement boot video driver for Xbox (#2774)
Also make HalpBiosDisplayReset() function always return FALSE,
because we don't have a BIOS on Xbox.

CORE-16216 CORE-16219
2020-05-17 19:18:32 +03:00
Jose Carlos Jesus
cd0c06bef3 [ACPPAGE] Add Portuguese translation (#2802) 2020-05-17 18:12:11 +02:00
Mark Jansen
332889b8d7 [COMDLG32] Differentiate between real and virtual folders,
do not allow traversal inside virtual folders when selecting a file
CORE-16908
2020-05-17 17:09:05 +02:00
Mark Jansen
8451389041 [SHELLUTILS] Fix Win32DbgPrint's result 2020-05-17 17:09:05 +02:00
Mark Jansen
f379a29606 [SHELL32] Properly enumerate virtual shell folders (on files) as fake folders
CORE-16908
2020-05-17 17:09:04 +02:00
Mark Jansen
b1003ae909 [SHELL32] Update CFileSysEnum to be maintaineable
CORE-16908
2020-05-17 17:09:04 +02:00
Mark Jansen
ac215455bb [SHLWAPI] Fix SHRegGetCLSIDKeyW 2020-05-17 17:09:04 +02:00
Mark Jansen
c6a8a9c145 [PSDK] Add argument names to SHRegGetValue functions 2020-05-17 17:08:57 +02:00
Thomas Faber
db180c29c7 [NTOS:SE] Implement job case in PsImpersonateClient. CORE-8787 2020-05-17 16:05:00 +02:00
Victor Perevertkin
2d7f71c5b8 [GITHUB] Enable ccache for GCC builds on GitHub Actions 2020-05-17 13:32:14 +03:00
Katayama Hirofumi MZ
fe9838f578 [SERVICES][DCOMLAUNCH] Don't hardcode C: drive (#2779)
CORE-13235
2020-05-17 17:45:56 +09:00
Hervé Poussineau
e246b9947e [ISAPNP] Mark read data port as started, even if no ISAPNP card is present
CORE-17056
2020-05-16 23:20:38 +02:00
Mark Jansen
f454f4dc21 [HOST-TOOLS] Fix the build from IDE for visual studio 2019 CE
CORE-16904
2020-05-16 20:17:43 +02:00
Kyle Katarn
4d1cd72317 [REGEDIT] Fix and improvement in TreeView (Null handle check, incorrect display after edit, WM_NOTIFY refactor) (#2733)
* - Fix of missing invalid handle check
- Fix of Address & status bar incorrect display after rename
- Refactoring of Treeview WM_NOTIFY code, for better consistency with WM_NOTIFY management for ListView

* Fix following review (space in #define)

* Cleanup following review

* fix following review

* Fix of round 3 of review comments

* UpdateAdress kept in its original location

* fix

* fix (extern missing)

* both extern removed

* Review comments
Error message being added in order to support CORE-17048
2020-05-16 21:23:20 +09:00
Dmitry Borisov
3fd6dbd943 [CPORTLIB] Fix MSVC build for PC-98 target 2020-05-16 15:23:00 +03:00
Mark Jansen
da777baa3d [ISAPNP] Initialize uninitialized variable
Return value was a suggestion from Thomas,
it still boots for me (tm)
2020-05-16 14:03:04 +02:00
Colin Finck
db7ee3a756 [HAL] Remove duplicated IRQL mask tables
With the minimum Visual Studio version now being 2015, we no longer need to maintain two variants of the same code, and can stick to the commented and better understandable version.
2020-05-15 23:46:22 +02:00
Dmitry Borisov
e901489574 [BOOTVID] Add boot video driver for NEC PC-98 series (#2787) 2020-05-15 22:28:34 +03:00
Jose Carlos Jesus
2bd6bfdd90 [COMCTL32] Fix recalculation of property-sheet dialog position (#1818)
During initialization of property sheet dialogs, their overall size can change (when adding property sheets) after the dialog has been created and pre-positioned by win32k.
Therefore their position needs to be recomputed so that they try to fit the best on screen.

CORE-9008, CORE-9602
2020-05-15 18:12:02 +02:00
Serge Gautherie
ffd0ab39b5 [WS2_32_APITEST:WSAASYNC] Fix and improve some tests. ROSTESTS-317 (#1132)
- Add getsockname() addr_con_loc looping case.
Fix intermittent failure on Windows (NT <= 6.0):
"WSAAsync.c:232: Test failed: ERROR: getsockname function wrong addr, expected 100007f returned 0"

ROSTESTS-317

- Improve select() ServerSocket looping case.
Visible on Windows (NT >= 6.1).
2020-05-15 15:45:35 +02:00
Katayama Hirofumi MZ
62e59652a0 [SHELL32] Don't hardcode C: drive again (#2777)
- Avoid buffer overrun.
- Don't hardcode C: drive.
CORE-13235
2020-05-15 16:36:13 +09:00
Katayama Hirofumi MZ
6c3775f77c [SHELL32] Implement SheShortenPathA (#2785)
Implement shell32!SheShortenPathA function.
2020-05-14 22:52:22 +09:00
Katayama Hirofumi MZ
b7a97a2af2 [SHELL32] Implement MakeShellURLFromPathA (#2784)
Implement shell32!MakeShellURLFromPathA function.
2020-05-14 22:51:53 +09:00
Ricardo Hanke
0c5f367172 [OPENGLCFG] Empty list boxes if registry key is missing (#2750)
If the registry key that holds the names of installed opengl drivers is missing, all list boxes in openglcfg are empty. This is a minor code rearrangement to fix this behavior.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-05-14 14:47:48 +02:00
Piotr Hetnarowicz
64ba6e64c8 [SHELL32] PL-pl Dialogs fix (#2788)
- Fixed invisible text in DIALOGS.
2020-05-14 14:33:32 +02:00
George Bișoc
5ce40ea841 [NTDLL_APITEST] Add initial NtQueryInformationThread() testcase (#2782) 2020-05-14 14:32:38 +02:00
Serge Gautherie
aa6e11b549 [NDK][XDK] Add 3 CM_RESOURCE_INTERRUPT_* defines (#2755) 2020-05-14 14:31:53 +02:00
Kyle Katarn
82e4efea77 [SNDREC32] Use the ShellAboutW API routine to display the about dialog (#2754) 2020-05-14 14:30:57 +02:00
Kyle Katarn
4b479d19e6 [SERVMAN] Use the ShellAboutW API routine to display the about dialog (#2752) 2020-05-14 14:30:35 +02:00
Kyle Katarn
a6084d7440 [RAPPS] Use ShellAbout() to display the about dialog (#2751)
As the dialog simply displays the copyright names and nothing particular it makes sense to use ShellAboutW() instead.
2020-05-14 15:28:57 +03:00
Kyle Katarn
c6ab64e0f2 [SHORTCUTS] Addition of Wine IE Shortcuts in Start Menu (#2726)
CORE-11257
2020-05-14 14:24:59 +02:00
Kyle Katarn
bd79d1ec23 [SYSDM][USRMGR] French translation update (#2765)
CORE-16596
2020-05-14 15:24:13 +03:00
Erdem Ersoy
072be890f3 [TRANSLATIONS] Turkish translation updates (#2724)
* [TRANSLATIONS] Translate desk.cpl to Turkish

* Update file header

* [TRANSLATIONS]

* Update translations of syssteup
* Update translations of userenv
* Update translations of shell32 (partial)

* [TRANSLATION] Fix a translation

* [TRANSLATION] Translate Turkish strings to Turkish

for hivedef.inf

* Update Turkish translations of shell32 partially

* Update shell32 Turkish translations (partially)

* Update shell32 Turkish translations (partially)

* Fix translation for desk.cpl
2020-05-14 14:23:05 +02:00
Oleg Dubinskiy
90aff2947b [REGAPI] Import regapi.dll from Wine Staging 5.7 CORE-16458 (#2723)
- Comment some other missing exports Windows regapi.dll has them, but Wine's one doesn't.

Required by MS winlogon with Win32SS replaced. I double-rechecked: now it doesn't fail due to missing regapi.dll in system32 or separate missing functions in this dll, exactly the same as with MS regapi. In pair with my profmap.dll (which was merged recently), now it fails due to InitializeUserProfile() stub in our userenv.dll (if to replace msgina too).
Also I compared the exports of MS regapi.dll and Wine's one. Win2k3 version has all exports that Wine version has and some others (which looks like were dropped in NT6). But those exports which already exist, are enough to allow MS winlogon no longer fail.

CORE-16458
2020-05-14 14:21:16 +02:00
Katayama Hirofumi MZ
d3a550a6a9 [SHLWAPI] Implement SHIsLowMemoryMachine (#2783)
Implement shlwapi!SHIsLowMemoryMachine function.
2020-05-14 09:47:21 +09:00
Katayama Hirofumi MZ
b70232d416 [SHELL32] Half-implement SHWinHelp 2020-05-14 09:38:38 +09:00
Joachim Henze
d28677795e [NTOSKRNL] Restore section layout for NTOSKRNL to fix BSOD regression CORE-14683
This version (after .rsrc) works different than the
proper version I used for 0.4.12 (after .reloc).

Inserting after .rsrc is actually not correct, but Thomas believes it can
be used as a temporary trick to avoid random memory corruption upon
relocations of the kernel, caused by ROSBE-154.

I follow his advice, although when judging from practical tests only:
as long as we limit this script to NTOSKRNL like I do for releases
there have no negative consequences been observed in real life yet
even with the proper version of 0.4.12.
Up to now those problems have only been observed when used for drivers
MODULE TYPE sdk/cmake/gcc.cmake as well, like
it was tried for a moment in master 0.4.13-dev-609-g
c4d8e2a6e9

Using for drivers immediately did lead to BSODs like CORE-16183 and therefore was
mitigated in master by total disabling of the scripts for both,
kernel and drivers in
0.4.13-dev-621-g
36e9a6f8dd

To allow installing DVDWritenow without BSOD,
we need the script at least for ntoskrnl!

I committed this patch (after .rsrc) already into 0.4.13RC and 0.4.14RC.
2020-05-13 17:09:15 +02:00
Katayama Hirofumi MZ
b1519f65a7 [MPLAY32] Don't hardcode C: drive (#2778)
CORE-13235
2020-05-13 22:36:44 +09:00
Katayama Hirofumi MZ
d5a4e534ae [ROSAPPS][MAN] Don't hardcode C: drive (#2780)
CORE-13235
2020-05-13 22:21:17 +09:00
He Yang
2f56ccafe0 [RAPPS] Corrections for Chinese Simplified dialog UI translation (#2781) 2020-05-13 15:26:29 +03:00
Yaroslav Kibysh
a76c7ea9fc [NOTEPAD] Update Ukrainian translation (#2775) 2020-05-13 15:12:22 +03:00
Yaroslav Kibysh
5f319bafc8 [SYSSETUP] Update Ukrainian translation (#2776) 2020-05-13 15:11:48 +03:00
Katayama Hirofumi MZ
278f563e04 [FTP] Don't hardcode C: drive (#2767)
CORE-13235
2020-05-13 13:42:18 +09:00
James Tabor
cba5acbc48 [NtGDI] Add missing type for EPS Print Escape
Part of GDI escape printing.
2020-05-12 20:34:22 -05:00
James Tabor
98bfe2fc89 [PrintUI|NTPrint] Printing Application Utility Support
PrintUI : Move to printing base directory.
NTPrint : Import from wine.

NTPrint does have a API test program from wine, not imported at this
time.

These will be Sync/Ported to full forked.
2020-05-12 20:26:02 -05:00
Joachim Henze
666fe66fe9 [MSAFD] Workaround regression CORE-15804
To fix 'MSTSC fails to connect with error "ERROR: Bad packet header"'
which regressed by 0.4.12-dev-752-g
6bc61f63f1

In 0.4.12 and 0.4.13 releases I totally reverted
Pierre Schweitzer's work instead.

Thanks to Doug Lyons, author of this new workaround,
we can keep Pierre's work.
We think MSAFD is a better place to workaround than
our MSTSC binary, because our MSTSC runs fine on
W2K3SP2.

I will backport this new workaround also into 0.4.14RC.
2020-05-13 02:39:37 +02:00
Joachim Henze
6c0ff7bd84 [UNIATA] Workaround regression CORE-16078, booting broke on specific Intel Z170
JIRA-user "Illen" reported booting from his Z170 controller worked up to
0.4.12-dev-936-g89aaf0e
and would refuse booting - beginning with uniata commit
0.4.12-dev-937-g
b546130731

For sure this workaround is just a temporary and no proper solution,
but was confirmed to be working by "Illen".
We have no clear understanding of the real bug yet.
Can be replaced by something better at any time.
It was already committed into 0.4.12, 0.4.13, 0.4.14.
We never had an affected release therefore.

Since no one took care of this bug ever,
the workaround will now be committed to master as well.

cherry picked from commit 0.4.13-RC-9-g
11178f38e4
2020-05-12 21:13:21 +02:00
Stanislav Motylkov
cd91271796 [NTOSKRNL][HAL][BOOTVID] Some more code refactoring
- Add boot video color constants
- Refactor palette initialization
- Move some common stuff in right place
- Get rid of some magic constants and hardcoded values
- Get rid of TopDelta variable (calculated at compile time)
- Update SAL annotations

Addendum to 5f2ca473. CORE-16216 CORE-16219
2020-05-12 15:56:37 +03:00
Mark Jansen
909f50a857 [FONTVIEW] Ensure the extension filter is properly double-null terminated 2020-05-11 20:52:30 +02:00
Piotr Hetnarowicz
b22484b533 [BROWSEUI] PL-pl update
browseui.dll - PL-pl translation update :)
2020-05-11 15:52:31 +02:00
Piotr Hetnarowicz
6f05ea5911 [MAIN.CPL] PL-pl update
MAIN.CPL - PL-pl
-dialogs fix
-strings update
2020-05-11 15:52:17 +02:00
Piotr Hetnarowicz
cc6dcfb10e [INTL.CPL] PL-pl update
intl.cpl - PL-pl update
-dialogs fix
-strings update
2020-05-11 15:51:53 +02:00
Katayama Hirofumi MZ
97ccef7761 [WIN32SS] Fix DrawTextExWorker extent for Spotify (#2759)
CORE-16747
2020-05-11 18:32:47 +09:00
Katayama Hirofumi MZ
711f631849 [SHELL32] Don't hardcode C: drive (#2768)
CORE-13235
2020-05-11 11:43:07 +09:00
Hermès Bélusca-Maïto
9c11be5a3a [CMD] Quick fix for the REM command parser. CORE-17030 2020-05-11 04:27:12 +02:00
Eric Kohl
4246b64dcb [UMPNPMGR] Implement PNP_GetFirstLogConf and PNP_GetNextLogConf (WIP)
- PNP_GetFirstLogConf only works for resources lists.
- PNP_GetNextLogConf does not return a valid tag yet.
2020-05-10 20:46:41 +02:00
Dmitry Borisov
98c17d3120 [FREELDR] Add vertical screen scrolling for Xbox with console mode (#2745)
Also turn off debug messages to screen before setting up the CPU (To print a character to the screen on some ports the MMIO access should be executed, so it throws an exception).

CORE-16216
2020-05-10 18:35:51 +02:00
Kyle Katarn
a2a24cadae [SNDREC32] French translation update (#2761)
And add/fix colliding keyboard accelerators.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-05-10 18:22:13 +02:00
Eric Kohl
592bafd60a [ARP] Print a message when there is no relevant entry to be shown 2020-05-10 09:05:52 +02:00
Kyle Katarn
c1fad34755 [WINNLS] Fix of GetCurrencyFormatW to handle "32" grouping format (#2719) 2020-05-10 08:34:35 +02:00
Eric Kohl
5ebde7139a [ARP] Coding style fixes only 2020-05-10 08:24:10 +02:00
Eric Kohl
e31069738f [ARP] Improvements to ARP
- Print message on failed memory allocations.
- Functions return error code instead of exit code.
- Convert error code to exit code in the main function only.
- Always free the allocated memory.
- Fix bug from previous commit: Use _tprintf instead _putts to print messages.
2020-05-10 00:46:42 +02:00
Hervé Poussineau
fc0a0b9f84 [ISAPNP] Mark Read Data Port as not having a unique ID
This fixes a bugcheck in ntoskrnl.exe when computer has multiple ISA buses.

CORE-17034
2020-05-09 16:54:46 +02:00
Charles Ambrye
e978ec6125 [SHELL32] Return ERROR_INVALID_DRIVE if the drive type is unknown or there is no volume mounted (#2703)
Return ERROR_INVALID_DRIVE if the drive is either unknown or unmounted.
2020-05-09 21:54:15 +09:00
Jared Smudde
e2fdfae24f [COMDLG32] Add some more places to the places bar in the open file dialog. (#2732)
Add Recent Documents and My Network Places to the places bar in the open file dialog.

NOTE: Technically this "places bar" can be customized:
https://www.tenforums.com/tutorials/126153-change-places-bar-items-common-dialog-box-windows.html
https://www.sevenforums.com/tutorials/85487-common-file-dialog-box-customize-places-bar.html
2020-05-09 21:50:20 +09:00
Kyle Katarn
295ba62820 Fix of comdlg32 Treeview undue handling of WM_SYSKEYDOWN (#2731)
Remove WM_SYSKEYDOWN handling at component level, in consistency with other components (ListView,...)
Early embodiement of the fix proposed to WineHQ : https://bugs.winehq.org/show_bug.cgi?id=49097 in order to remove functionnal limitation in ReactOS. CORE-17020
2020-05-09 21:37:26 +09:00
Kyle Katarn
d839e3d9b4 [SNDREC32] Fix incorrect opaque text rendering (#2760)
Remove "Opaque" parameter so that the transparency can be correctly used.
2020-05-09 21:09:58 +09:00
Eric Kohl
ac01e4cd72 [ARP] Replace some hard-coded strings by message resources 2020-05-09 12:30:11 +02:00
Thomas Faber
8523913a58 [RTLVER] Add missing bugcodes dependency. 2020-05-09 11:22:07 +02:00
Katayama Hirofumi MZ
0ea110cda9 [RSAENH][MSXML3][OLE32] Revert PRIVATE commits (cbe8a9f and 38b438b) 2020-05-09 17:55:37 +09:00
Katayama Hirofumi MZ
38b438b0f6 [MSXML3][OLE32] DllGetClassObject should be PRIVATE 2020-05-09 17:02:08 +09:00
Katayama Hirofumi MZ
cbe8a9f997 [RSAENH] DllRegisterServer should be PRIVATE 2020-05-09 16:59:59 +09:00
Katayama Hirofumi MZ
413d722628 Revert "Revert "[COMCTL32][USER32] Fix radio button regression (#2146)" (#2753)" (#2758)
This reverts commit 66b0a48a75.
2020-05-09 15:32:15 +09:00
Katayama Hirofumi MZ
66b0a48a75 Revert "[COMCTL32][USER32] Fix radio button regression (#2146)" (#2753)
This reverts commit 2d4d3f5fce.

Reverts #2146. I think #2135 (e329e83) and #2146 (2d4d3f5) are my mistakes.
CORE-16552, CORE-16747
2020-05-09 11:30:11 +09:00
Stanislav Motylkov
10e52f68b2 [FREELDR] Fix some more register accesses and magic values
Addendum to 764e884.
2020-05-08 23:02:42 +03:00
Hervé Poussineau
49040fa54c [ISAPNP] Enable driver 2020-05-08 20:02:36 +02:00
George Bișoc
2c80432268 [UTILMAN] Use the ShellAboutW API routine to display the about dialog (#2743)
In addition to that, add the missing function prototypes in the DLL dialog header of Utilman, add missing IN/OUT annotations and remove CheckUtilityState() prototype which is barely used (it's not implemented either).
2020-05-07 13:01:36 +02:00
Serge Gautherie
02825c20e4 [APISETS] api-ms-win-core-winrt-l1-1-0: Ro*() are NT8+ (#2739)
(Supersedes PR #2374.)
CORE-16707
2020-05-07 13:00:10 +02:00
Kyle Katarn
d635ce0cc0 [SYSDM][DESK] Fix GetDC/ReleaseDC error management (#2707)
## Purpose
[SYSDM]
- When closing System Properties page, log show
(win32ss/user/ntuser/windc.c:749) err: [00060138] GetDC() without ReleaseDC()!
because GetDC() is called (multiple times) without properly calling ReleaseDC() as required in order to release a device context.
- This module also lacks some error management in case null DC are provided (on error).
- LiveCD Userinit, based on SYSDM is affected too.

[DESK]
- Fix missing ReleaseDC related to the spectrum (color depth)

## Proposed changes
- ReleaseDC() added.
- Error management in case of null DC.
- Overall alignement of LiveCD Userinit and SYSDM.
2020-05-07 12:57:46 +02:00
George Bișoc
9ca52142b6 [CREDITS] Add myself to the credits document (#2747) 2020-05-07 12:39:44 +02:00
He Yang
a7b111f550 [RAPPS] 64bit compatibility fix (#2748)
Change SetWindowLongW to SetWindowLongPtrW.

It's the same (because the value is 0) but I think it's better.
2020-05-07 18:08:08 +09:00
Serge Gautherie
8ae1702a16 [PCIIDEX] Increase command port length to 8 from 7. CORE-9922 (#2711)
Co-Authored-By: Vadim Galyant <vgal@rambler.ru>
2020-05-07 10:16:18 +03:00
Joachim Henze
7c81fb8f56 [FREELDR] Workaround regression CORE-16469
This prevents ReactOS asserting when 'My computer'
is opened, while it tries to send commands to floppy drive.

Many thanks to patches author Doug Lyons.

The regression was introduced by 0.4.13-dev-1081-g
eeff926ede

patch was committed to 0.4.13rls and 0.4.14rls as well.

Today it was committed to master as well, as
the initially planned investigation for the root cause
did still not happen and we can not afford the time
to retest and workaround this over and over again.
Thank god that Oleg Dubinskiy was still around to retest
this again and confirmed it can still happen, because
unlike initially, personally I was not able to reproduce it
today anymore!

Since every release was work-arounded, we did never
expose the bug in any final release.
2020-05-06 23:45:37 +02:00
Alexander Rechitskiy
68ed29b41f [README] "Building ReactOS" belongs to "Building" part (#2741)
- Improved logic of the text
- Removed some line breaks to improve readability on some screen sizes
2020-05-06 14:14:41 +03:00
Alexander Rechitskiy
7abc22c383 [README] Update RosBE links and badges to version 2.2.0 (#2742)
https://reactos.org/project-news/rosbe-22-released/
2020-05-06 14:02:30 +03:00
Mark Jansen
a0e32d4f48 [USERINIT] Add unattend.inf functionality to livecd 2020-05-05 20:54:30 +02:00
Katayama Hirofumi MZ
1f3cb13fb9 [SHELL32] Distinguish floppy and removable drives (#2645)
Distinguish floppy drive and non-floppy removable drive in icon and description. CORE-10221
2020-05-06 00:35:01 +09:00
Kyle Katarn
0461de33c5 [REGEDIT] Fix HeapFree() on the wrong variable (#2736)
- When exporting registry keys (to .reg files) some variables from the heap are not free'd while the debug log indicates "HEAP: Trying to free an invalid address".
- This is due to the export_registry_key() function that calls
HeapFree() for reg_key_name. But this variable is an argument provided by the caller, which is always a statically defined array of WCHAR.
- Meanwhile reg_key_name_buf is never free'd and cause a memory leak each time the function gets called.
2020-05-05 11:44:45 +03:00
Serge Gautherie
9634a31589 [ADVAPI32] Remove now-redundant comment (#2735)
Addendum to 5dfe345.
2020-05-05 11:37:09 +03:00
Kyle Katarn
5dfe3455db [ADVAPI32] Fix undue debug print in nominal case (#2734)
In current implementation, when regedit opens HKCR root key, an error is logged
err:(dll/win32/advapi32/reg/hkcr.c:964) Returning 259.
This is not correct as the code 259 is ERROR_NO_MORE_ITEMS which is the nominal return value when end of enumeration is reached.
2020-05-04 23:30:36 +03:00
Serge Gautherie
8f5b0d8890 [APISETS] *_seh_filter_*() are NT6+ (#2729)
Addendum to 65fd292. CORE-16700
2020-05-04 23:26:38 +03:00
Adam Stachowicz
4da611ad4b [NETID] Update Polish translation (#2709)
Addendum to c276681.
2020-05-04 23:20:04 +03:00
Victor Perevertkin
156b3bd014 [REACTOS] Drop support for Visual Studio below 2015 2020-05-04 21:47:37 +03:00
Victor Perevertkin
95483b42ea [REACTOS] Raise C standard to gnu99
And remove -Wdeclaration-after-statement
2020-05-04 21:44:55 +03:00
Victor Perevertkin
a0283ecea3 [GITHUB][TRAVIS][APPVEYOR] Move all CI to GitHub Actions 2020-05-04 19:53:16 +03:00
Victor Perevertkin
8bd9450da8 [HTTPAPI] Convert httpapi.dll to a stub-only library
Wine's implementation relies on http.sys driver, which we don't have
anyway. Function declarations are taken from Wine 5.7

CORE-16963
2020-05-04 11:37:16 +03:00
Katayama Hirofumi MZ
11b6f973b7 [SHELL32] Follow-up 2 of #2659
Add TODO comments.
Make CreateAPCThread static.
CORE-13950
2020-05-04 16:22:38 +09:00
Katayama Hirofumi MZ
7980f40911 [SHELL32] Follow-up of #2659
Add CreateAPCThread function and use it. CORE-13950
2020-05-04 15:28:16 +09:00
Katayama Hirofumi MZ
5c589b5537 [SHELL32] Notify filesystem changes (#2659)
Notify filesystem change notifications by using ReadDirectoryChangesW function. Creating/Deleting files/folders will be responsive in Explorer. CORE-13950
2020-05-04 14:53:23 +09:00
Jared Smudde
5b7be1572b [SHELL32] Set the Run dialog to use the newer style browse for file dialog. (#2728)
Apply the OFN_EXPLORER flag to the Run dialog so the dialog uses the newer style browse dialog.
2020-05-04 12:53:35 +09:00
Mark Jansen
86572f1f69 [RAPPS] Fix the locale fix 2020-05-03 20:33:23 +02:00
Mark Jansen
cf9ba2b9ce [RAPPS] Fix locale fallback code 2020-05-03 18:33:06 +02:00
Bișoc George
d8eeb31b8a [SDK][STDLIB][STRING] Wine-sync wcsrtombs_l and _mbstowcs_l
This is a partial sync of the CRT library with wcsrtombs_l and _mbstowcs_l functions from WINE. The _wctomb_s_l implementation of WINE which is used by _wctomb_s, _wctomb_l and wctomb brings failed results of the wctomb unit testcase and at the same time it crashes the whole testcase after.

Therefore I will not address the wctomb function for the moment being.
2020-05-03 15:35:11 +02:00
Piotr Hetnarowicz
4d8a5e921e [WELCOME] pl-pl update (#2717)
welcome.exe pl-pl update
2020-05-03 15:30:04 +02:00
Kyle Katarn
033a317d06 [SYSDM] Fix the missing TABSTOP style on Startup and Recovery dialog (#2722)
Now the OS choice and the debug info selection combo-boxes can be selected via keyboard navigation.
2020-05-03 12:16:45 +02:00
Stanislav Motylkov
f87a695b35 [XBOXVMP] Work with Xbox GPU registers properly
Bug was noticed with GCC 8.4
2020-05-02 23:24:36 +03:00
Stanislav Motylkov
764e884f5e [FREELDR] Work with Xbox GPU memory registers properly
Bug was noticed with GCC 8.4
2020-05-02 23:23:33 +03:00
Adam Stachowicz
d53ee9c69e [RAPPS] Polish translation
After fb1582d330
2020-05-02 13:22:48 +02:00
Kyle Katarn
bfd02fa107 [SNDVOL32] Fix GetDC/ReleaseDC error management (#2713)
GetDC() is called without properly calling ReleaseDC() as required in order to releases a device context. Similar to #2707
2020-05-02 18:43:30 +09:00
Katayama Hirofumi MZ
633770ab0d [KERNEL32_APITEST] s/QueryUserAPC/QueueUseAPC/ 2020-05-02 14:58:48 +09:00
Kyle Katarn
fb1582d330 [RAPPS] Add error messages on all download failure cases
- Implement error message for all failure condition of RAPPS Download
- Implement logging for failure conditions not needing user complementary awareness (cancellation)
- Support for localization
CORE-16851
2020-05-01 23:52:57 +02:00
Eric Kohl
8c4b0c9142 [NETID] Disable the 'Network ID' and 'Change' buttons and show the admin note when the current user is not an administrator 2020-05-01 22:34:01 +02:00
Eric Kohl
226878563f [NETID] Fix a typo in NetworkDlg_OnOK 2020-05-01 22:00:32 +02:00
Eric Kohl
b25fe54f29 [NETID] Fix the left margin on the Computer Name dialog 2020-05-01 20:00:12 +02:00
Eric Kohl
c276681ef4 [NETID] Improve the 'Computer name' property page
- Check for changes of the host and domain name.
- Use NetGetJoinInformation to retrieve the join status.
- Implement the SyncDomainWithMembership setting.
- Disable the administrator warning temporarily.
2020-05-01 19:44:09 +02:00
Kyle Katarn
b3947d5283 [SERVMAN] UI update and Error Management (#2653)
Purpose
=======
- Current design does not warn user nor logs DEBUG traces when Service Start/Stop command fails or reach timeout.
- Current Service Start/Stop progress window are WS_EX_TOOLWINDOW which reduce lisibility, is a ReactOS specificity without good reason.

Proposed changes
================
- DPRINT1 traces added on failure cases.
- Error Message box presented to user upon failure with explicit root cause identification.
- Change Dialog definition to standard window.
2020-05-01 19:01:59 +02:00
Sylvain Deverre
140ec9d037 [KDGDB] Fix GCC8 build 2020-05-01 16:37:13 +02:00
Bișoc George
3cb0bdaa0b [CRT_APITEST] Implement wctomb() testcase (#2701) 2020-05-01 16:01:11 +02:00
Oleg Dubinskiy
855bf46399 [WIN32SS][NTDDRAW] Get complexity of visible region in DxEngGetDCState (#2604)
CORE-7733

Get the complexity of visible region in the DxEngGetDCState() function, according to its remarks.
This implementation returns a number of rectangles that make up the region, similarly to as it done in REGION_Complexity() function:
https://git.reactos.org/?p=reactos.git;a=blob;f=win32ss/gdi/ntgdi/region.c;h=38bf3d377fa805e9db8768774c4fc473590252d0;hb=HEAD#l573 
It is required by MS ddraw.dll when calling win32k/dxg functions during launching DirectDraw test or any DirectX 1 - 7 apps/games.
2020-05-01 15:57:11 +02:00
Kyle Katarn
8bd6b9b6c2 [OLE32][WINESYNC] Fix Wine's implementation of IMalloc.DidAlloc based from Wine 5.7 (#2662)
CORE-15262

This fixes the exceptions raised when calling "Scan folder" a second time in SUMo 5.10.16.
The problem was reported to WineHQ : https://bugs.winehq.org/show_bug.cgi?id=48941

Import Wine commits by Nikolay Sivov, with the help of Doug Lyons:
- 08f4b6ee0a
  ole32: Fix IMalloc::DidAlloc() return value to reflect block validity.
- 1e3bc9f3a6
  ole32: Improve thread safety in DidAlloc().
- 06d36b1adf
  ole32: Fix spy callback arguments for IMalloc::GetSize().
2020-05-01 15:01:19 +02:00
Kyle Katarn
3bee3b92ab [SYSDM] Virtual Memory panel : Complementary fix from PR #2597 (#2706)
Fix all lang resources in order to reflect main changes from PR #2597 (16MB>2MB).
To translators: Please sync the respective translations!

CORE-12486
2020-05-01 14:47:04 +02:00
Oleg Dubinskiy
b0e995728a [SYSSETUP] Improve SetupQueryRegisteredOsComponent export (#2702)
CORE-16784

Co-authored-by: Mark Jansen <mark.jansen@reactos.org>
2020-05-01 13:45:19 +03:00
Thomas Faber
baa3380649 [ACPICA] Update to version 20190430. CORE-16998 2020-05-01 12:18:48 +02:00
Thomas Faber
71a4462ad5 [USBCCGP] Ignore IRP_MN_REMOVE_DEVICE return status and don't wait for it to complete. 2020-05-01 12:05:12 +02:00
Thomas Faber
823101274a [USBCCGP] Don't handle IRP_MN_QUERY_DEVICE_TEXT requests other than device description. 2020-05-01 12:05:11 +02:00
Thomas Faber
0d15b2a3cb [USBCCGP] Correctly stub PDO power IRP handling. 2020-05-01 12:05:11 +02:00
Thomas Faber
6c3a10c55a [USBCCGP] Always forward device relations IRPs. 2020-05-01 12:05:06 +02:00
Eric Kohl
16d136a63e [NET][MC] Replace the last string resource by a message from netmsg.dll.
- Move translations to netmsg.dll.
- Keep italian translation as a comment because netmsg.dll does not have an italian translation yet.
- Remove obsolete resource files.
2020-05-01 10:27:26 +02:00
Katayama Hirofumi MZ
77b8505393 [SHELL32] Delete IDM_RECENTMENUHEAD resource menu (#2705)
Follow-up of #2648. Reduce translation cost and resource data.
CORE-3588, CORE-11483
2020-05-01 15:58:58 +09:00
Katayama Hirofumi MZ
d62b1a9ce5 [CPL][HOTPLUG] Add Japanese translation 2020-05-01 10:52:19 +09:00
Katayama Hirofumi MZ
0bf4cc4304 [TIMEDATA] Improve Japanese translation 2020-05-01 10:37:46 +09:00
Katayama Hirofumi MZ
5765c5be26 [UTILMAN] Add Japanese translation 2020-05-01 10:34:36 +09:00
Katayama Hirofumi MZ
4fda2f9753 [CMDUTILS][LABEL] Improve Japanese translation 2020-05-01 10:31:11 +09:00
Katayama Hirofumi MZ
7812c537de [MYDOCS] Add Japanese translation 2020-05-01 10:25:47 +09:00
Victor Perevertkin
f4e37f9363 [CMAKE] Support file lists in add_cd_file for all cases
Addendum to 6b48d54
2020-05-01 02:39:59 +03:00
Victor Perevertkin
6b48d54c39 [CMAKE] Fix driver inf files generation for livecd
CORE-16975
2020-05-01 01:23:51 +03:00
Hermès Bélusca-Maïto
478dbe3e23 [ERRCODES.MC] Change some occurrences of "Windows" to "ReactOS" where it makes the most sense. 2020-05-01 00:06:41 +02:00
Hermès Bélusca-Maïto
63bad3978d [ERRCODES.MC] Remove the "ERROR_xxxx - " prefixes from each error message. 2020-05-01 00:06:40 +02:00
Kyle Katarn
cd6e1c73c0 [SHELL32] Fix "Open With..." spamming registry MRU keys. (#2685)
CORE-16981

The problem:
============

- When opening "Open With..." dialog for a given file format, multiple MRU items are appended to registry : 2 items written, even if dialog is closed "cancel".
- Expected behavior : 1 MRU item if execute is selected and 0 MRU if cancel is selected.

Fix:
====

- MRU item to be added when "Execute" is selected only.
- Once added, set the presence flag to avoid multiple MRU items being added later.
2020-04-30 23:03:10 +02:00
Mark Jansen
5cd5598ea9 [ZIPFLDR_APITEST] Add test enumerating over zip folder's parent
Disable tests for unimplemented features
2020-04-30 20:38:43 +02:00
Mark Jansen
190c1b86ec [ZIPFLDR] Set correct access time on file extraction 2020-04-30 20:38:43 +02:00
Mark Jansen
6c37a7255e [ATL] Add CAtlArray::GetData 2020-04-30 20:38:43 +02:00
Mark Jansen
0340c5188c [ZIPFLDR_APITEST] Add some basic IDataObject tests
CORE-16241
2020-04-30 20:38:28 +02:00
Jose Carlos Jesus
534710a6d5 [SHELLEXT] Fixed some typos in Portuguese translation 2020-04-30 20:29:21 +02:00
Stanislav Motylkov
3846bd87d9 [UTILMAN] Fix build
Addendum to ac87614.
2020-04-30 21:18:14 +03:00
Stanislav Motylkov
033cd61d0f [INF] Add Russian translation for network services strings
Addendum to 80db055 and 3542514.
2020-04-30 21:00:18 +03:00
Stanislav Motylkov
e1aa9a9c46 [LABEL] Update Russian translation
Addendum to 6bfe4f6 and 87ecf82. CORE-9444
2020-04-30 20:59:53 +03:00
Stanislav Motylkov
ac876146bc [UTILMAN] Add Russian translation
Addendum to 975d417.
2020-04-30 20:59:25 +03:00
Stanislav Motylkov
79f5de2a73 [TIMEDATE] Update Russian translation
Addendum to 5a81a5b. CORE-16684
2020-04-30 20:58:59 +03:00
Stanislav Motylkov
da9f43e76f [HOTPLUG] Add Russian translation
Also made some cosmetic fixes and added missing menu in Indonesian translation

Addendum to 2125fec, bfdd626 and b8dd046.
2020-04-30 20:58:33 +03:00
Stanislav Motylkov
1dd70d306f [POWERCFG] Update Russian translation
Addendum to 535b8dd and 52cd931. CORE-12565 CORE-16893
2020-04-30 20:58:08 +03:00
Stanislav Motylkov
f956c962f0 [DESK] Update Russian translation
Addendum to d05f621 and e157468. CORE-14537 CORE-16923
2020-04-30 20:57:42 +03:00
Stanislav Motylkov
67bb3d3fd8 [BOOTDATA] Add consistency to translated strings
Addendum to e157468.
2020-04-30 20:57:16 +03:00
Stanislav Motylkov
f0e22d15c9 [INTL] Add Russian translation
Also improve other translations. Addendum to 216b702. CORE-16951
2020-04-30 20:56:50 +03:00
Stanislav Motylkov
fefe9736ac [SENDMAIL] Update Russian translation
Addendum to a48aa21. CORE-16924
2020-04-30 20:56:22 +03:00
Stanislav Motylkov
44e2b6fdd9 [BOOTDATA][THEMEUI] Add Russian translation
Addendum to 94e4c69 and a2f5283. CORE-16934
2020-04-30 20:55:56 +03:00
Stanislav Motylkov
d3e94b4cec [MYDOCS] Add Russian translation
Addendum to 4efff7f. CORE-12562
2020-04-30 20:55:28 +03:00
Jose Carlos Jesus
ad591d0269 [USER32] Fixed issue with thumb scrolling on IDC_PICKICON_LIST 2020-04-30 18:58:20 +02:00
Jose Carlos Jesus
d0a6727637 [USER32] Fixed scrolling by mouse wheel issue 2020-04-30 18:58:20 +02:00
Jose Carlos Jesus
a4483d79da [USER32] Fixed scrolling issue in Change Icon dialog. CORE-16163 2020-04-30 18:58:20 +02:00
Hermès Bélusca-Maïto
7ba93b9463 [SMSS] Fix build complaint. 2020-04-30 18:39:07 +02:00
Mas Ahmad Muhammad
7895704952 [COMDLG32] enlarge list area in CHOOSE_FONT 2020-04-30 18:15:48 +02:00
Hermès Bélusca-Maïto
756152936b [SMSS] Fix PROCESSOR_IDENTIFIER environment variable assignment.
The swprintf() formatting string slot was incorrect.
Adapted from a patch by Kyle Katarn, PR #2697.
2020-04-30 14:02:04 +02:00
Adam Stachowicz
bd33e6b26f [SHELL32] Update Polish translation (#2700)
Addendum to 8f3079c.
2020-04-30 13:37:31 +03:00
Jared Smudde
96e6cee044 [DESK] Set some flags for Browse for Wallpaper dialog (#2699)
* [DESK] Add initial directory flag and set it to My Pictures. Also set OFN_EXPLORER style.

* Use CSIDL_MYPICTURES instead of environment variable concoction.

* Fix formatting.
2020-04-30 11:10:40 +03:00
Katayama Hirofumi MZ
8f3079c67f [SHELL32][EXPLORER] Improve Recent Documents of Start Menu (#2648)
Improve Recent Documents of Start Menu. Add items of "My Documents" and "My Pictures" into Recent menu item.
CORE-3588, CORE-11483
2020-04-30 17:09:14 +09:00
Piotr Hetnarowicz
c6680c99d9 [MC][NET] Polish translation update (#2695) 2020-04-30 09:20:15 +03:00
Jose Carlos Jesus
6d739cb2ce [APPWIZ] Make shortcut name selected on creation (#2184) 2020-04-30 09:02:33 +03:00
Adam Stachowicz
f86a0e41ac [CODEOWNERS] Update translation section (#2679)
Add missing translation teams
2020-04-30 01:40:35 +03:00
Serge Gautherie
a9161650ad [MSVCRT][APISETS] Update spec files for __DestructExceptionObject() (#2682)
- [MSVCRT] __DestructExceptionObject(): Remove '-version=0x600+'
- [APISETS] __DestructExceptionObject(): Forward it to msvcrt

CORE-15135
2020-04-30 00:36:44 +03:00
Kyle Katarn
bdb4da009a [MMSYS] Fix combo box and play icon on "Sound" properties page (#2690)
CORE-16935
2020-04-29 21:58:34 +03:00
Stanislav Motylkov
8c5c47ec17 [TAPIUI] Fix dialog localization issues
Addendum to 0a387c9.
2020-04-29 21:29:52 +03:00
Piotr Hetnarowicz
0a387c9377 [TAPIUI] Update Polish translation (#2694) 2020-04-29 20:02:49 +03:00
Piotr Hetnarowicz
cb15283cd2 [NETTCPIP.INF] Polish localize network services strings 2020-04-29 18:05:34 +02:00
Kyle Katarn
3542514d89 [INF] Localize network services and drivers strings (#2673)
Also add French translation for them
2020-04-29 16:13:01 +03:00
He Yang
2b6b873cdd [LABEL] Update Chinese Simplified translation (#2692) 2020-04-29 16:01:10 +03:00
Katayama Hirofumi MZ
7fe7f5e4c1 [MSPAINT] Follow-up of #2686
Show error message if SaveDIBToFile failed.
CORE-16982, CORE-16979
2020-04-29 08:39:47 +09:00
Katayama Hirofumi MZ
f3235f1074 [KERNEL32_APITEST] Add QueryUserAPC testcase (#2681)
Add a testcase for kernel32!QueryUserAPC, SleepEx and WaitForSingleObjectEx functions.
CORE-13950
2020-04-29 07:48:46 +09:00
Katayama Hirofumi MZ
036206a1c3 [MSPAINT] Refactor loading/saving image file (#2686)
- Add DoLoadImageFile, CreateWhiteDIB, and CMainWindow::ConfirmSave functions.
- Replace LoadDIBFromFile function with DoLoadImageFile.
- Fix the empty file loading.
- Delete UpdateApplicationProperties function.
- Rewrite SaveDIBToFile function.
CORE-16982, CORE-16979
2020-04-29 07:44:18 +09:00
Oleg Dubinskiy
125020c23f [SETUPAPI] Improve SetupRemoveFromSourceListA/W exports (#2680)
CORE-16968
2020-04-29 00:58:40 +03:00
Kyle Katarn
02d856c9c5 [NETSHELL] Remove erroneous DNS Server line and fix date/time format (#2655)
CORE-16947
2020-04-29 00:18:55 +03:00
Bișoc George
8266f62ff6 [CRT][STDLIB] Wine-sync _mbtowc_l function code
The current _mbtowc_l code directly passes the string count size argument to cbMultiByte argument parameter to MultiByteToWideChar(). As the size of lpMultiByteStr expressed in bytes by cbMultiByte is dependent of the actual given string, the size of lpWideCharStr expressed in characters by cchWideChar is always 1.

The resulting parameters to MultiByteToWideChar() will lead to a failure as lpWideCharStr cannot accommodate the converted string if the size pointed by lpMultiByteStr is larger than the buffer wide string to receive the converted output, a Win32 error code of ERROR_INSUFFICIENT_BUFFER in other words. The fact that _mbtowc_l never fails without WINE Gecko package installed is because the codepage pointed by lc_codepage is CP_ACP and the converted output is directly given to the destination wide string parameter thus never calling MultiByteToWideChar(). Installing WINE Gecko merely unhides this problem.

As _mbtowc_l is imported from WINE and that they have updated their code (which at the same time this fixes the aforementioned problem), the following commit syncs the updated code from WINE.

CORE-16885
2020-04-28 22:41:57 +02:00
Joachim Henze
8ce31ad749 [BOOTDATA] CORE-16976 Strip netkvm from optional files
Because we added it into our sources recently,
there is no need anymore for opt-adding binaries.

VBox OK https://reactos.org/testman/compare.php?ids=72868,72873
KVM  OK https://reactos.org/testman/compare.php?ids=72869,72872
2020-04-28 21:33:26 +02:00
Katayama Hirofumi MZ
03c09c9e2c [SHIMGVW] Correctly draw display border (#2687)
Use WS_EX_CLIENTEDGE extended style for display window.
Fix message WM_SIZE handling. CORE-16983
2020-04-28 20:56:18 +09:00
Serge Gautherie
b139bae58d [WINSPOOL] EnumPrintersA: Refactor failure handling (#2304) 2020-04-27 22:10:22 +02:00
Serge Gautherie
0b530fe496 [RPCRT4] Add I_RpcSNCHOption() as 'stub'
CORE-12534
2020-04-27 22:05:29 +02:00
Piotr Hetnarowicz
df00137ccc [LABEL] Update Polish translation (#2678)
Co-Authored-By: Adam Słaboń <asaillen456esx@gmail.com>
2020-04-27 22:49:33 +03:00
Kyle Katarn
f949e256b5 [SYSDM] User Profiles fix of OnDestroy (CORE-16921) (#2614) 2020-04-27 18:25:19 +02:00
Stanislav Motylkov
68f9fd2f5d [SHELL32] Fix dialog labels in Recycle Bin properties page (#2676)
Also fix remaining "Max size" edit box positions.

Addendum to e6e45b3. CORE-16972
2020-04-27 16:03:27 +03:00
Mark Jansen
a98bebb0b0 [WIN32K] Mute a DPRINT 2020-04-27 12:54:11 +02:00
Mark Jansen
dd8f30f879 [WIN32K] Allocate a buffer for a classname that is too long 2020-04-27 12:54:10 +02:00
Kyle Katarn
e6e45b34cc [SHELL32] Fix "Max size" Edit box position in Recycle Bin properties page (#2676)
CORE-16972
2020-04-27 12:48:26 +02:00
Kyle Katarn
7c4788695f [NETID] Fix incorrect component position and size, complete French translation (#2672)
- Missing fr-fr translation for some items
- Wrong components size and/or position to fully display text

CORE-16597

- Complete fr-fr translation of associated .rc file
- Fix of component design (size, location, BS_MULTILINE).

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-04-27 12:44:27 +02:00
Piotr Hetnarowicz
3efe1596a5 [RASDLG] pl-PL update (#2675) 2020-04-27 13:38:27 +03:00
Kyle Katarn
6133d55190 [EXPLORER] Fix incorrect component position and size for French language (#2671)
CORE-16930, CORE-12386
2020-04-27 12:32:42 +02:00
Victor Perevertkin
8639a131b0 [CMAKE] Fix build with CMake 3.17.1-ReactOS (RosBE 2.2) 2020-04-27 03:40:48 +03:00
Oleg Dubinskiy
70b6658af8 [PROFMAP] Initial implementation (#2119)
Co-Authored-By: Stanislav Motylkov <x86corez@gmail.com>
2020-04-26 21:15:21 +02:00
Serge Gautherie
96b7cb1a4f [EXPLORER] trayclock: Update timer delay when showing seconds is modified 2020-04-26 21:41:39 +03:00
Serge Gautherie
e68bee7518 [EXPLORER] trayclock: Better handle timers, especially when it is hidden 2020-04-26 21:41:39 +03:00
Serge Gautherie
e45b15aca2 [EXPLORER] CTrayClockWnd::CalculateDueTime(): Fix uiDueTime value
when showing seconds.
2020-04-26 21:41:39 +03:00
Adam Stachowicz
8cf3cff27c [CODEOWNERS ] Clarify the use of teams 2020-04-26 20:39:09 +02:00
Oleg Dubinskiy
9f0a0f65ea [SHLWAPI] Add version limit for export from NT 5.1 to NT5.2, because it was dropped since NT6
Co-Authored-By: Serge Gautherie <32623169+SergeGautherie@users.noreply.github.com>
2020-04-26 20:20:40 +02:00
Oleg Dubinskiy
ee08399112 [SHLWAPI] Improve SHEvaluateSystemCommandTemplate export CORE-14742 2020-04-26 20:20:40 +02:00
Hermès Bélusca-Maïto
73064a7602 [WIN32SS] Fix formatting only. 2020-04-26 19:32:21 +02:00
Victor Perevertkin
019f21ee1d [MEDIA][CMAKE] Create add_driver_inf cmake function
*.inf files for drivers can now be placed along with the driver code
2020-04-26 20:28:04 +03:00
Serge Gautherie
d8c6ef5ef9 [THEMES] Update now-redirected 'http' and 'www.reactos.org' URLs 2020-04-26 19:02:06 +02:00
Mohamed Mediouni
fec11747bb [CRT] Implement __chkstk function for ARM (#1595)
Incoming r4 contains the number of dwords to allocate, converting to bytes then return.
This makes ReactOS applications compiled for ARM running on true ARM Windows.

Reference: 2b095beace
2020-04-26 19:58:53 +03:00
Mohamed Mediouni
f2f97f9f4c [CRT] ARM & ARM64 Windows do not have initenv in their CRTs (#1597)
Native CRT on ARM & ARM64 Windows doesn't have these functions.
For compatibility, it's mandatory to not have it at all. Otherwise,
ARM executables built for ReactOS do not run on true ARM Windows.

Consider doing full sync with mingw-w64 CRT in future.
2020-04-26 19:56:34 +03:00
Sylvain Deverre
666bac44c0 [LWIP] Use tcp_close when both shut_rx and shut_tx are set. Fixes CORE-16868 (#2582) 2020-04-26 18:40:47 +02:00
Serge Gautherie
c2dbc18660 [USER32] EDIT_WM_KillFocus(): Restore Wine code, #ifdef'ed out
Use '#ifdef __REACTOS__' for WINESYNC'ed code.

Partially reverts 71ab0b5d4c.
CORE-10266
2020-04-26 17:48:41 +02:00
Serge Gautherie
37d5522dfb [NTOS:KE] KiTrap0DHandler(): Fix a copypasta
Addendum to r45038.
2020-04-26 17:32:40 +02:00
Andreas Maier
f95c96e207 [MSV1_0] Create stubs for SECPKG_FUNCTION_TABLE (SpLsaModeInitialize)
This commit fixes a bug too.
Old code of SpLsaModeInitialze returns a pointer to a local variable (SECPKG_FUNCTION_TABLE).
2020-04-26 17:26:17 +02:00
Serge Gautherie
a16a37fd2d [RPCRT4] Fully WineSync spec file. CORE-16441 (#2494)
* [RPCRT4] Export NdrServerCallAll stub

Addendum to 6feb8748d3.

Import rest of
e54224e88c

With thanks to Hermès B., who noticed it is 64bit only.

CORE-16441

* [RPCRT4] Fix NdrServerContextMarshall spec file entry

Addendum to 6feb8748d3.

Import
660ee356e9

CORE-16441

* [RPCRT4] Fix RpcNetworkIsProtseqValid[AW] spec file entries

Cherry-pick
6127c688ea
2020-04-26 17:23:13 +02:00
Hermès Bélusca-Maïto
05ba7228a0 [SDK] Update sdkddkver.h with newer NTDDI_WIN10_* versioning defines. 2020-04-26 17:11:37 +02:00
Mark Jansen
1439bbdea0 [USETUP] Fix the build for msvc 2020-04-26 17:01:08 +02:00
Victor Perevertkin
1ab6b35565 [CODEOWNERS] Add more language groups to translations auto-assignment 2020-04-26 17:58:52 +03:00
Adam Stachowicz
49e7649730 [INTL.CPL] Polish translation update (#2665)
After PR #2654
2020-04-26 16:48:46 +02:00
Katayama Hirofumi MZ
771457f37f [SHELL32] Implement VK_DELETE on SHBrowseForFolder (#2661)
Enable Del/Delete key to delete the selected folder in "Browse for Folder" dialog.
You can use https://jira.reactos.org/secure/attachment/40118/getfolder.zip as a test program.
CORE-7592
2020-04-26 22:06:19 +09:00
Hervé Poussineau
2391e31cf0 [USETUP] Move loading of requested font from blue.sys to usetup 2020-04-26 14:59:04 +02:00
Hervé Poussineau
04ec14e23e [USETUP] Support a custom way to extract files for cabinet files
This will be used to extract files from cabinet to memory, instead of
writing them to disk.
2020-04-26 14:57:40 +02:00
Hervé Poussineau
0d51c71ed7 [USETUP] Optimize font loading
Reload a new font only if codepage changed.
2020-04-26 14:57:38 +02:00
Hervé Poussineau
aaa416d36a [BLUE] Add an IOCTL to directly choose which font to use (instead of codepage) 2020-04-26 14:54:09 +02:00
Mark Jansen
d5f0b2b160 [RTL] Implement LdrpRecordUnloadEvent 2020-04-26 14:35:51 +02:00
Mark Jansen
7cce7b9c08 [NTDLL_APITEST] Add a test for RtlGetUnloadEventTrace 2020-04-26 14:35:51 +02:00
Mark Jansen
362f4b5915 [NDK] Fix RTL_UNLOAD_EVENT_TRACE_NUMBER 2020-04-26 14:35:45 +02:00
William Kent
97fb49a3d2 [FONTS] Add Selawik as a substitution for Segoe UI 2020-04-26 15:31:16 +03:00
Serge Gautherie
a7e4d66be5 [SHELL32] DoGetProductType(): Use RegGetValueW()
instead of RegQueryValueExW(), to enforce a null terminator.

Addendum to 9f4e8ef25b.
2020-04-26 14:16:59 +02:00
Serge Gautherie
2505bd3a43 [ROSPERF] PrintOSVersion(): Fix RegQueryValueExW() use 2020-04-26 14:16:59 +02:00
Bișoc George
e4f70e5434 [UTILMAN] Properly annotate some variables (#2561)
Previously the code had a mixture of 'sz', 'wsz', 'lp' and 'lpwsz' Hungarian annotation prefixes which could bring confusions about the nature of the annotated variables. From now on all of these variables have a well defined annotation. Furthermore, add a missing argument annotation to LaunchProcess().
2020-04-26 14:14:17 +02:00
Serge Gautherie
f44cb6de96 [NDK][NTDLL] RtlGetNtProductType(): Update it with SAL2 annotations 2020-04-26 14:08:58 +02:00
47b0f9a907 Update zh-CN.rc (#2522) 2020-04-26 15:00:02 +03:00
Saibamen
79c932078d [SHIMGVW] Update Polish translation (#2666)
After PR #2606
2020-04-26 13:56:46 +02:00
Saibamen
55e742119c [DESK.CPL] Update Polish translation (#2664)
After PR #2591
2020-04-26 13:56:17 +02:00
Mark Jansen
804b7830b7 [NTDLL_APITEST] Add test for RTL_DEBUG_QUERY_MODULES 2020-04-26 13:44:02 +02:00
Mark Jansen
f26b670b38 [RTL] Partially implement RtlCreateQueryDebugBuffer and RtlDestroyQueryDebugBuffer 2020-04-26 13:44:02 +02:00
Mark Jansen
808aea9b72 [NTDLL_APITEST] Add minimal test for RTL_DEBUG_INFORMATION allocation 2020-04-26 13:44:01 +02:00
Mark Jansen
234dfd4f2e [NDK] Fix RTL_DEBUG_INFORMATION definition 2020-04-26 13:44:01 +02:00
Mark Jansen
de6e160841 [NDK] Fix BackTrace size in RTL_PROCESS_BACKTRACE_INFORMATION 2020-04-26 13:44:01 +02:00
Mark Jansen
01dc54056f [NDK] Add STACK_TRACE_DATABASE definition 2020-04-26 13:44:01 +02:00
Mark Jansen
510b079514 [PSDK] Add argument names + sal annotations 2020-04-26 13:44:01 +02:00
Bișoc George
4247e3f838 [UTILMAN] Add Romanian and Italian translations (#2562) 2020-04-26 13:14:44 +02:00
Jose Carlos Jesus
2cb65df2fb [BOOTDATA] Portuguese translation for EVENT_LABEL and DESKTOP_SCHEME (#2631) 2020-04-26 13:12:28 +02:00
Saibamen
69b3f042e5 [POWERCFG] Update polish translation (#2663)
Update after PR #2593
2020-04-26 13:07:25 +02:00
Jose Carlos Jesus
01cb01de94 [CPL] Portuguese translation update (#2629)
Portuguese translation for:
cpl/input, cpl/hotplug, cpl/liccpa, cpl/telephon, cpl/timedate
2020-04-26 13:06:34 +02:00
Victor Perevertkin
ba0a3d4032 [IEXPLORE] Make duckduckgo our default search engine 2020-04-26 13:36:33 +03:00
Katayama Hirofumi MZ
c04010c9ad [SHELL32] Update name in CDefView::LV_RenameItems 2020-04-26 13:21:14 +03:00
Bișoc George
07640a9a21 [CRT_APITEST] Add testcase for mbtowc() (#2652) 2020-04-26 13:18:41 +03:00
Kyle Katarn
ab4b001e94 [NETID] fr-fr translation fix and component size (#2586) 2020-04-26 11:54:42 +02:00
Kyle Katarn
52cd931f22 [POWERCFG] Power Scheme fix as per CORE-16893 (#2593)
Related to CORE-16900

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-04-26 10:20:22 +02:00
Katayama Hirofumi MZ
0cc32161d1 [MSPAINT] Add to recent documents (#2651)
Add to recent documents upon file save. CORE-3588
2020-04-26 09:07:14 +09:00
Katayama Hirofumi MZ
f28cc0fc78 [NOTEPAD] Add to recent documents (#2649)
Add to recent documents upon file save. CORE-3588
2020-04-26 09:06:39 +09:00
Robert Naumann
032b5aacd2 [CONTROL] Fix hang while calling RunControlPanel() CORE-11373
- based on a patch by Jira user "wimh"
- also addressed Hermes' suggestion to use ARRAYSIZE instead of MAX_PATH
2020-04-25 19:04:09 +02:00
Kyle Katarn
e15746849a [DESK][THEMEUI] Update French translation (#2591)
Co-authored-by: Sylvain Deverre <deverre.sylv@gmail.com>
2020-04-25 18:34:41 +02:00
Kyle Katarn
9c682e4c16 [COMDLG32][REGEDIT] Fix display problems (CORE-16890) (#2638) 2020-04-25 10:41:01 +02:00
Kyle Katarn
07e80dead4 [SHELL32] Improve french translations 2020-04-25 10:38:35 +02:00
Katayama Hirofumi MZ
d32858413d [SHELL32] Command 'start C:' should open 'C:\' (#2642)
Based on JIRA user amaneureka's idea.
In SHELL_execute function, add a backslash for Drive "C:", "D:" or "E:" etc.
CORE-16384
2020-04-25 11:01:20 +09:00
Joachim Henze
950124bd07 [SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 15 in the version.cmake 2020-04-24 22:22:22 +02:00
10598 changed files with 1860294 additions and 783811 deletions

29
.github/labeler.yml vendored Normal file
View File

@@ -0,0 +1,29 @@
# Labelling by the files touched
ATL:
- sdk/lib/atl/**
drivers:
- drivers/**
- sdk/lib/drivers/**
- any: ["win32ss/drivers/**", "!win32ss/drivers/font/**"]
freeldr:
- boot/freeldr/**
"kernel&hal":
- hal/**
- ntoskrnl/**
ROSTESTS:
- modules/rostests/**
shell:
- base/shell/explorer/**
- base/shell/rshell/**
- dll/shellext/**
- dll/win32/browseui/**
- dll/win32/shell32/**
Win32SS:
- win32ss/**

300
.github/workflows/build.yml vendored Normal file
View File

@@ -0,0 +1,300 @@
name: Build
on: [push, pull_request]
jobs:
build-linux:
strategy:
matrix:
compiler: [gcc, clang]
arch: [i386, amd64]
config: [Debug, Release]
fail-fast: false
runs-on: ubuntu-latest
steps:
- name: Get RosBE build specifics
id: get_rosbe_spec
run: |
gcc -march=native -Q --help=target | grep "\-march= " | awk '{print $NF}'
echo ::set-output name=march-sha::$(gcc -march=native -Q --help=target | sha1sum | awk '{print $1}')
echo ::set-output name=git-sha::$(git ls-remote https://github.com/zefklop/RosBE.git | grep unix_amd64 | awk '{print $1}')
wget https://gist.githubusercontent.com/zefklop/b2d6a0b470c70183e93d5285a03f5899/raw/build_rosbe_ci.sh
- name: Get RosBE
id: get_rosbe
uses: actions/cache@v2
with:
path: RosBE-CI
key: RosBE-CI-${{runner.os}}-${{steps.get_rosbe_spec.outputs.march-sha}}-${{steps.get_rosbe_spec.outputs.git-sha}}-${{hashfiles('./build_rosbe_ci.sh')}}
- name: Compile RosBE
if: ${{ steps.get_rosbe.outputs.cache-hit != 'true' }}
run: |
chmod +x build_rosbe_ci.sh
./build_rosbe_ci.sh ${{github.workspace}}/RosBE-CI
- name: Install ccache
run: sudo apt install ccache
- name: Install LLVM
if: ${{ matrix.compiler == 'clang' }}
run: |
export LLVM_VERSION=13
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh $LLVM_VERSION
echo "D_CLANG_VERSION=-DCLANG_VERSION=$LLVM_VERSION" >> $GITHUB_ENV
- name: Source checkout
uses: actions/checkout@v2
with:
path: src
- name: Set up cache for ccache
uses: actions/cache@v2
with:
path: ccache
key: ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
restore-keys: |
ccache-${{matrix.compiler}}-${{matrix.arch}}-
- name: Set ccache settings
run: |
echo "CCACHE_BASEDIR=${{github.workspace}}" >> $GITHUB_ENV
echo "CCACHE_DIR=${{github.workspace}}/ccache" >> $GITHUB_ENV
echo "CCACHE_MAXSIZE=1G" >> $GITHUB_ENV
echo "CCACHE_SLOPPINESS=time_macros" >> $GITHUB_ENV
- name: Ease ccache compiler check (GCC)
if: ${{ matrix.compiler == 'gcc' }}
run: echo "CCACHE_COMPILERCHECK=string:${{steps.get_rosbe_spec.outputs.git-sha}}-${{hashfiles('./build_rosbe_ci.sh')}}" >> $GITHUB_ENV
- name: Configure
run: echo 'cmake -S ${{github.workspace}}/src -B ${{github.workspace}}/build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-${{matrix.compiler}}.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_CCACHE=1 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{env.D_CLANG_VERSION}}' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
- name: Build
run: echo 'cmake --build ${{github.workspace}}/build -- -k0' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
- name: Generate ISOs
run: echo 'cmake --build ${{github.workspace}}/build --target bootcd --target livecd' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
- name: Print ccache statistics
run: ccache -s
- name: Upload ISOs
uses: actions/upload-artifact@v2
with:
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: |
build/bootcd.iso
build/livecd.iso
build-msvc:
strategy:
matrix:
os: [windows-latest, windows-2019]
toolset: ['14.2', '14.1', '14.0'] # VS 2019, 2017, and 2015 (see below)
arch: [i386, amd64]
config: [Debug, Release]
exclude: # VS 2019, 2017 only with windows-latest; VS 2015 only with windows-2019
- os: windows-2019
toolset: '14.2'
- os: windows-2019
toolset: '14.1'
- os: windows-latest
toolset: '14.0'
fail-fast: false
runs-on: ${{matrix.os}}
steps:
- name: Install ninja
run: choco install -y ninja
- name: Install Flex & Bison
run: |
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
7z x flexbison.7z -O${{github.workspace}}\bin
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- name: Activate VS cmd (x86)
if: ${{ matrix.arch == 'i386' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_x86
toolset: ${{matrix.toolset}}
- name: Activate VS cmd (amd64)
if: ${{ matrix.arch == 'amd64' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64
toolset: ${{matrix.toolset}}
- name: Source checkout
uses: actions/checkout@v2
with:
path: src
- name: Configure
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1
- name: Build
run: cmake --build build -- -k0
- name: Generate ISOs
run: cmake --build build --target bootcd --target livecd
- name: Upload ISOs
uses: actions/upload-artifact@v2
with:
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: |
build/bootcd.iso
build/livecd.iso
- name: Upload debug symbols
if: ${{ matrix.config == 'Debug' }}
uses: actions/upload-artifact@v2
with:
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: build/msvc_pdb
build-msvc-arm:
strategy:
matrix:
toolset: ['14.2', '14.1'] # VS 2019, 2017
arch: [arm, arm64]
config: [Debug, Release]
fail-fast: false
runs-on: windows-latest
steps:
- name: Install ninja
run: choco install -y ninja
- name: Install Flex & Bison
run: |
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
7z x flexbison.7z -O${{github.workspace}}\bin
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- name: Activate VS cmd (arm)
if: ${{ matrix.arch == 'arm' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_arm
toolset: ${{matrix.toolset}}
- name: Activate VS cmd (arm64)
if: ${{ matrix.arch == 'arm64' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_arm64
toolset: ${{matrix.toolset}}
- name: Source checkout
uses: actions/checkout@v2
with:
path: src
- name: Configure
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1
- name: Build base module
if: ${{ matrix.arch == 'arm' }}
run: cmake --build build --target base/all
- name: Build control panel applets
if: ${{ matrix.arch == 'arm' }}
run: cmake --build build --target dll/cpl/all
- name: Build rosapps
if: ${{ matrix.arch == 'arm' }}
run: cmake --build build --target modules/rosapps/all
- name: Build some applications (arm64)
if: ${{ matrix.arch == 'arm64' }}
run: cmake --build build --target calc magnify mstsc notepad osk regedit taskmgr winmine wordpad base/applications/screensavers/all -- -k0
- name: Upload compiled binaries
uses: actions/upload-artifact@v2
with:
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: |
build/base
build/dll/cpl
build/modules/rosapps
!**/CMakeFiles
!**/cmake_install.cmake
!**/*.asm
!**/*.bin
!**/*.c
!**/*.def
!**/*.exp
!**/*.h
!**/*.lib
!**/*.mc
!**/*.obj
!**/*.rc
!**/*.tlb
- name: Upload debug symbols
if: ${{ matrix.config == 'Debug' }}
uses: actions/upload-artifact@v2
with:
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: build/msvc_pdb
build-clang-cl:
strategy:
matrix:
arch: [i386, amd64]
config: [Debug, Release]
fail-fast: false
runs-on: windows-latest
steps:
- name: Install ninja
run: choco install -y ninja
- name: Install LLVM
run: |
choco install -y --allow-downgrade llvm --version 13.0.1
echo "LLVM_PATH=${env:PROGRAMFILES}\llvm\bin" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- name: Install Flex & Bison
run: |
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
7z x flexbison.7z -O${{github.workspace}}\bin
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- name: Activate VS cmd (x86)
if: ${{ matrix.arch == 'i386' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_x86
toolset: '14.1' # latest masm build known to make bootable builds
- name: Activate VS cmd (amd64)
if: ${{ matrix.arch == 'amd64' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64
toolset: '14.1' # latest masm build known to make bootable builds
- name: Add LLVM to PATH
run: echo "${env:LLVM_PATH}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: Source checkout
uses: actions/checkout@v2
with:
path: src
- name: Configure
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 -DUSE_CLANG_CL:BOOL=TRUE
- name: Build
run: cmake --build build -- -k0
- name: Generate ISOs
run: cmake --build build --target bootcd --target livecd
- name: Upload ISOs
uses: actions/upload-artifact@v2
with:
name: reactos-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: |
build/bootcd.iso
build/livecd.iso
- name: Upload debug symbols
if: ${{ matrix.config == 'Debug' }}
uses: actions/upload-artifact@v2
with:
name: reactos-syms-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: build/msvc_pdb
# Disable MSBuild for the moment being until a proper fix is provided -- see CORE-18911
# build-msbuild-i386:
# name: MSBuild (i386)
# runs-on: windows-2019
# steps:
# - name: Install Flex and Bison
# run: |
# curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
# 7z x flexbison.7z -O${{github.workspace}}\bin
# echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
# echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# - name: Add CL to PATH
# uses: ilammy/msvc-dev-cmd@v1
# with:
# arch: amd64_x86
# - uses: actions/checkout@v2
# with:
# path: src
# - name: Configure
# run: |
# mkdir build
# cd build
# cmake -G "Visual Studio 16 2019" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
# - name: Build
# run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd

11
.github/workflows/labeler.yml vendored Normal file
View File

@@ -0,0 +1,11 @@
name: "Pull Request Labeler"
on:
- pull_request_target
jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v3
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"

33
.github/workflows/stale.yml vendored Normal file
View File

@@ -0,0 +1,33 @@
# This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time.
#
# You can adjust the behavior by modifying this file.
# For more information, see:
# https://github.com/actions/stale
name: Mark stale issues and pull requests
on:
schedule:
- cron: '43 0 * * *'
jobs:
stale:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 120
days-before-issue-stale: -1
days-before-close: 14
days-before-issue-close: -1
exempt-all-assignees: true
exempt-draft-pr: true
stale-pr-message: 'This PR is stale because it received no updates in the last 4 months. Without removing the stale label, or commenting on this ticket it will be closed in 2 weeks.'
stale-issue-label: 'no-issue-activity'
stale-pr-label: 'no-pr-activity'
operations-per-run: 100

3
.gitignore vendored
View File

@@ -1,3 +1,4 @@
compile_commands.json
output-*
modules/optional
modules/bootcd_extras
@@ -5,7 +6,9 @@ modules/livecd_extras
modules/hybridcd_extras
modules/3rdparty
modules/[Aa][Hh][Kk]_[Tt]ests
.cache
.cproject
.DS_Store
.project
.settings
.vscode

View File

@@ -4,9 +4,9 @@
# [MODULE] A short but descriptive summary (#pr-num)
#
# A comprehensible description of WHY you did this work. Do not limit
# yourself here.
# The width of the description is arbitary, but it is a good idea to
# wrap the text by 72 chars.
# yourself here.
# The width of the description is arbitary, but it is a good idea to
# wrap the text by 72 chars.
#
# CORE-XXXX CIDXXXXX
# ----------------------
@@ -17,6 +17,6 @@
# * Description of a commit should explain WHY a change was made.
# * JIRA, Coverity ID references should be placed at the bottom row.
# * There must be a newline between summary, description and bug IDs.
# * GitHub Pull Request ID should be referenced in the summary in
# parens. If the resulting summary is longer than 70 chars it may
# * GitHub Pull Request ID should be referenced in the summary in
# parens. If the resulting summary is longer than 70 chars it may
# be placed last in the ID row to prevent hard wrapping on GitHub.

5
.gitpod.Dockerfile vendored
View File

@@ -1,5 +1,5 @@
FROM gitpod/workspace-full-vnc
USER gitpod
# Install custom tools, runtime, etc. using apt-get
@@ -14,8 +14,7 @@ RUN sudo apt-get -q update && \
sudo rm -rf /var/lib/apt/lists/*
RUN wget https://svn.reactos.org/amine/RosBEBinFull.tar.gz && \
sudo tar -xzf RosBEBinFull.tar.gz -C /usr/local && \
sudo mv /usr/local/RosBEBinFull /usr/local/RosBE && \
sudo tar -xzvf RosBEBinFull.tar.gz -C /usr/local --one-top-level=RosBE --strip-components 1 && \
rm -f RosBEBinFull.tar.gz
RUN echo 'export PATH=/usr/local/RosBE/i386/bin:$PATH' >> /home/gitpod/.profile

View File

@@ -1,34 +0,0 @@
dist: bionic
language: cpp
addons:
apt:
sources:
- sourceline: 'deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main'
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
packages:
clang-format-9
git:
depth: 5
env:
global:
- DO_BUILD=0
- DO_CHECK=0
- CLFORMAT_BINARY=clang-format-9
jobs:
- DO_BUILD=1
before_install:
- ln -s /usr/share/clang/clang-format-9/clang-format-diff.py ./sdk/tools/;
- wget https://svn.reactos.org/amine/RosBEBinFull.tar.gz -O RosBE.tar.gz
- tar -xzf RosBE.tar.gz
- echo 'mkdir ../Build && cd ../Build && $TRAVIS_BUILD_DIR/configure.sh -DENABLE_ROSTESTS=1 && ninja -k 0 && ninja bootcd' > tmp_file
script:
- if [ $DO_BUILD == "1" ]; then
./RosBEBinFull/RosBE.sh < tmp_file;
elif [ $DO_CHECK == "1" ]; then
./sdk/tools/check_code_format.sh;
fi

View File

@@ -1,26 +1,21 @@
cmake_minimum_required(VERSION 3.2.1)
cmake_policy(VERSION 3.2.1)
cmake_minimum_required(VERSION 3.17.0)
if(NOT CMAKE_VERSION MATCHES "ReactOS")
message(WARNING "Building with \"${CMAKE_COMMAND}\", which is not the custom CMake included in RosBE, might cause build issues...")
endif()
if(POLICY CMP0058)
# Ninja requires custom command byproducts to be explicit
cmake_policy(SET CMP0058 OLD)
endif()
include(CMakeDependentOption)
if(POLICY CMP0065)
# Do not add flags to export symbols from executables without the ENABLE_EXPORTS target property
cmake_policy(SET CMP0065 NEW)
# CMAKE_CROSSCOMPILING and MSVC_IDE are not set until project() is called, so let's test this instead
if ((DEFINED CMAKE_TOOLCHAIN_FILE) AND (CMAKE_GENERATOR MATCHES "Visual Studio.*"))
# Do not use MSVC_RUNTIME_LIBRARY target property. We use our own flags instead
message(WARNING "Setting policy CMP0091 to OLD behaviour")
cmake_policy(SET CMP0091 OLD)
endif()
project(REACTOS)
# Versioning
include(sdk/include/reactos/version.cmake)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
set(CMAKE_SHARED_LIBRARY_PREFIX "")
@@ -29,10 +24,13 @@ set(CMAKE_SKIP_PREPROCESSED_SOURCE_RULES TRUE)
set(CMAKE_SKIP_ASSEMBLY_SOURCE_RULES TRUE)
set(CMAKE_COLOR_MAKEFILE OFF)
set(CMAKE_POSITION_INDEPENDENT_CODE OFF)
set(CMAKE_C_STANDARD 99)
set(CMAKE_CXX_STANDARD 11)
#set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)
# check that the ARCH (target architecture) variable is defined
if(NOT ARCH)
set(ARCH i386)
message(FATAL_ERROR "Target architecture (ARCH) is not defined. Please, choose one of: i386, amd64, arm, arm64")
endif()
# Now the ARCH variable will be in lowercase.
# It is needed because STREQUAL comparison
@@ -41,34 +39,97 @@ endif()
# for more information.
string(TOLOWER ${ARCH} ARCH)
# Compile options
# set possible values for cmake GUI
set_property(CACHE ARCH PROPERTY STRINGS "i386" "amd64" "arm" "arm64")
# Alternative WinNT-compatible architecture string
if(ARCH STREQUAL "i386")
include(sdk/cmake/config.cmake)
elseif(ARCH STREQUAL "amd64")
include(sdk/cmake/config-amd64.cmake)
elseif(ARCH STREQUAL "arm")
include(sdk/cmake/config-arm.cmake)
set(WINARCH "x86")
else()
set(WINARCH ${ARCH})
endif()
# set CMAKE_BUILD_TYPE if not set
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
message(STATUS "Setting build type to Debug as none was specified.")
set(CMAKE_BUILD_TYPE "Debug" CACHE
STRING "Choose the type of build." FORCE)
# Set the possible values of build type for cmake-gui
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
"Debug" "Release" "MinSizeRel" "RelWithDebInfo")
endif()
# Versioning
include(sdk/include/reactos/version.cmake)
# Compile options
include(sdk/cmake/config.cmake)
# Compiler flags handling
include(sdk/cmake/compilerflags.cmake)
add_definitions(-D__REACTOS__)
# Double escape, since CMake unescapes before putting it on the command-line, where it's unescaped again by GCC/CL.
add_definitions(-DREACTOS_SOURCE_DIR="${REACTOS_SOURCE_DIR}")
add_definitions(-DREACTOS_BINARY_DIR="${REACTOS_BINARY_DIR}")
add_definitions(
-D__REACTOS__
# swprintf without count argument is used in most of the codebase
-D_CRT_NON_CONFORMING_SWPRINTFS
)
# There doesn't seem to be a standard for __FILE__ being relative or absolute, so detect it at runtime.
file(RELATIVE_PATH _PATH_PREFIX ${REACTOS_BINARY_DIR} ${REACTOS_SOURCE_DIR})
add_compile_flags(-D__RELFILE__="&__FILE__[__FILE__[0] == '.' ? sizeof \\\"${_PATH_PREFIX}\\\" - 1 : sizeof REACTOS_SOURCE_DIR]")
if (NOT MSVC AND ((CMAKE_C_COMPILER_ID STREQUAL "GNU") AND (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "8.0.0")
OR (CMAKE_C_COMPILER_ID STREQUAL "Clang") AND (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL "10.0.0")))
# Thankfully, GCC has this
add_compile_options(-ffile-prefix-map=${REACTOS_SOURCE_DIR}=)
add_compile_options(-ffile-prefix-map=${_PATH_PREFIX}=)
else()
string(LENGTH ${_PATH_PREFIX} _PATH_PREFIX_LENGTH)
string(LENGTH ${REACTOS_SOURCE_DIR} REACTOS_SOURCE_DIR_LENGTH)
math(EXPR REACTOS_SOURCE_DIR_LENGTH "${REACTOS_SOURCE_DIR_LENGTH} + 1")
add_compile_definitions("$<$<COMPILE_LANGUAGE:C,CXX>:__RELFILE__=&__FILE__[__FILE__[0] == '.' ? ${_PATH_PREFIX_LENGTH} : ${REACTOS_SOURCE_DIR_LENGTH}]>")
endif()
if(MSVC_IDE)
add_compile_flags("/MP")
add_compile_options("/MP")
endif()
# Bison and Flex support
# include(sdk/cmake/bison-flex.cmake)
find_package(BISON REQUIRED)
find_package(FLEX REQUIRED)
if(MSVC_IDE)
# Bison needs M4 and BISON_PKGDATADIR set at build time,
# but visual studio is hardly ever opened from the configure-time environment.
# Since cmake does not support setting env variables for a custom command,
# we have to write a wrapper that sets the variables and then executes bison.
# Idea taken from https://stackoverflow.com/a/35032051/4928207
if(DEFINED ENV{M4})
# Store this environment variable for configure re-runs from withing visual studio.
SET(ROS_SAVED_M4 "$ENV{M4}" CACHE INTERNAL "")
endif()
if(DEFINED ENV{BISON_PKGDATADIR})
SET(ROS_SAVED_BISON_PKGDATADIR "$ENV{BISON_PKGDATADIR}" CACHE INTERNAL "")
endif()
# Tell the user about a misconfigured environment
if("x${ROS_SAVED_M4}x" STREQUAL "xx" OR "x${ROS_SAVED_BISON_PKGDATADIR}x" STREQUAL "xx")
message(FATAL_ERROR "\nM4 or BISON_PKGDATADIR environment variables not set, cannot continue!\n"
"See https://reactos.org/wiki/Visual_Studio for more information!")
endif()
file(WRITE "${CMAKE_BINARY_DIR}/bison_wrapper.cmd"
"@ECHO OFF\n"
"set M4=${ROS_SAVED_M4}\n"
"set BISON_PKGDATADIR=${ROS_SAVED_BISON_PKGDATADIR}\n"
"${BISON_EXECUTABLE} %*\n")
set(BISON_EXECUTABLE "${CMAKE_BINARY_DIR}/bison_wrapper.cmd")
# And the same hacks for FLEX
file(WRITE "${CMAKE_BINARY_DIR}/flex_wrapper.cmd"
"@ECHO OFF\n"
"set M4=${ROS_SAVED_M4}\n"
"set BISON_PKGDATADIR=${ROS_SAVED_BISON_PKGDATADIR}\n"
"${FLEX_EXECUTABLE} %*\n")
set(FLEX_EXECUTABLE "${CMAKE_BINARY_DIR}/flex_wrapper.cmd")
endif()
if(NOT CMAKE_CROSSCOMPILING)
set(TOOLS_FOLDER ${CMAKE_CURRENT_BINARY_DIR})
@@ -83,27 +144,19 @@ if(NOT CMAKE_CROSSCOMPILING)
if(MSVC_VERSION GREATER 1699)
add_definitions(/D_ALLOW_KEYWORD_MACROS)
endif()
if(NOT USE_CLANG_CL)
# FIXME: Inspect
add_definitions(/Dinline=__inline)
endif()
endif()
add_subdirectory(sdk/include/host)
if(NOT MSVC)
add_subdirectory(dll/win32/dbghelp)
endif()
add_subdirectory(dll/win32/dbghelp)
add_subdirectory(sdk/tools)
add_subdirectory(sdk/lib)
set(NATIVE_TARGETS bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc mkshelllink utf16le xml2sdb)
set(NATIVE_TARGETS asmpp bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc mkshelllink utf16le xml2sdb)
if(NOT MSVC)
list(APPEND NATIVE_TARGETS rsym pefixup)
endif()
export(TARGETS ${NATIVE_TARGETS} FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
configure_file(sdk/cmake/host-tools.in ${CMAKE_BINARY_DIR}/TargetList.cmake)
install(TARGETS ${NATIVE_TARGETS})
else()
# Add host tools target
include(sdk/cmake/host-tools.cmake)
@@ -112,8 +165,21 @@ else()
# We don't need CMake importlib handling.
unset(CMAKE_IMPORT_LIBRARY_SUFFIX)
# Print build type
message("-- Build Type: ${CMAKE_BUILD_TYPE}")
# Print build type(s)
if(CMAKE_CONFIGURATION_TYPES)
# Multi-config generators, like Visual Studio (MSBuild).
message("-- Configuration types: ${CMAKE_CONFIGURATION_TYPES}")
else()
# Single-configuration generators, like Ninja.
message("-- Build type: ${CMAKE_BUILD_TYPE}")
endif()
# Always add /MT in VS CMAKE_GENERATOR and define _SBCS otherwise VS thinks it's a multi-byte or whatever project
if (MSVC_IDE)
add_compile_options("/MT")
add_compile_definitions(_SBCS)
endif()
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search
@@ -122,8 +188,26 @@ else()
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER)
#useful stuff!
include(CMakeParseArguments)
# Add our own target properties
# General module definitions
define_property(TARGET PROPERTY REACTOS_MODULE_TYPE
BRIEF_DOCS "The type of this module"
FULL_DOCS [[
The type of this module.
One of "nativecui", "nativedll", "kernelmodedriver", "wdmdriver", "kerneldll", "win32cui", "win32gui", "win32dll", "win32ocx", "cpl" or "module"]])
# C++
define_property(TARGET PROPERTY WITH_CXX_EXCEPTIONS
BRIEF_DOCS "Enable C++ exceptions on this target"
FULL_DOCS [[
Enables C++ exception handling.
Enable this if the module uses try/catch or throw. You might also need this if you use a standard operator new (the one without nothrow).]])
define_property(TARGET PROPERTY WITH_CXX_RTTI
BRIEF_DOCS "Enable C++ RTTI on this target"
FULL_DOCS [[
Enables run-time type information.
Enable this if the module uses typeid or dynamic_cast. You will probably need to link yith cpprt as well, if you are not already using STL.]])
if(DBG)
add_definitions(-DDBG=1 -D_SEH_ENABLE_TRACE)
@@ -131,18 +215,15 @@ else()
add_definitions(-DDBG=0)
endif()
if(KDBG)
add_definitions(-DKDBG)
endif()
if(_WINKD_)
add_definitions(-D_WINKD_)
endif()
if(CMAKE_VERSION MATCHES "ReactOS")
set(PCH 1 CACHE BOOL "Whether to use precompiled headers")
if(ENABLE_CCACHE)
message(WARNING "-- Disabling precompiled headers support (ccache).")
option(PCH "Whether to use precompiled headers" OFF)
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU")
message(WARNING "-- Disabling precompiled headers on GCC by default CORE-17108.")
option(PCH "Whether to use precompiled headers" OFF)
else()
set(PCH 0 CACHE BOOL "Whether to use precompiled headers")
option(PCH "Whether to use precompiled headers" ON)
endif()
# Version Options
@@ -155,7 +236,8 @@ else()
# Arch Options
if(ARCH STREQUAL "i386")
if(NOT USE_CLANG_CL)
# clang-cl defines this one for itself
if(NOT (MSVC AND CMAKE_C_COMPILER_ID STREQUAL "Clang"))
add_definitions(-D_M_IX86)
endif()
add_definitions(-D_X86_ -D__i386__ -Di386)
@@ -165,13 +247,20 @@ else()
add_definitions(-DSARCH_PC98)
endif()
elseif(ARCH STREQUAL "amd64")
add_definitions(-D_M_AMD64 -D_AMD64_ -D__x86_64__ -D_WIN64)
# clang-cl defines this one for itself
if (NOT (MSVC AND CMAKE_C_COMPILER_ID STREQUAL "Clang"))
add_compile_definitions(_M_AMD64)
endif()
add_definitions(-D_AMD64_ -D__x86_64__ -D_WIN64)
elseif(ARCH STREQUAL "arm")
# _M_ARM is already defined by toolchain
add_definitions(-D_ARM_ -D__arm__ -DWIN32)
if(SARCH STREQUAL "omap-zoom2")
if(SARCH STREQUAL "omap3-zoom2")
add_definitions(-D_ZOOM2_)
endif()
elseif(ARCH STREQUAL "arm64")
# GNU tools refer to arm64 as aarch64
add_definitions(-D_ARM64_ -D__arm64__ -D__aarch64__ -D_WIN64)
endif()
# Other
@@ -179,13 +268,19 @@ else()
if(ARCH STREQUAL "i386")
add_definitions(-DUSE_COMPILER_EXCEPTIONS -D_USE_32BIT_TIME_T)
elseif(ARCH STREQUAL "amd64")
add_definitions(-DUSE_COMPILER_EXCEPTIONS -DNO_UNDERSCORE_PREFIX)
add_compile_definitions(USE_COMPILER_EXCEPTIONS)
elseif(ARCH STREQUAL "arm")
add_definitions(-DUSE_COMPILER_EXCEPTIONS -DNO_UNDERSCORE_PREFIX)
add_compile_definitions(USE_COMPILER_EXCEPTIONS)
elseif(ARCH STREQUAL "arm64")
add_compile_definitions(USE_COMPILER_EXCEPTIONS)
endif()
# Activate support for assembly source files
enable_language(ASM)
if (MSVC)
enable_language(ASM_MASM)
else()
enable_language(ASM)
endif()
# Activate language support for resource files
enable_language(RC)
@@ -243,13 +338,17 @@ else()
if(NO_ROSSYM)
include(sdk/cmake/baseaddress_dwarf.cmake)
elseif(MSVC)
include(sdk/cmake/baseaddress_msvc.cmake)
if (ARCH STREQUAL "amd64")
include(sdk/cmake/baseaddress_msvc_x64.cmake)
else()
include(sdk/cmake/baseaddress_msvc.cmake)
endif()
else()
include(sdk/cmake/baseaddress.cmake)
endif()
# For MSVC builds, this puts all debug symbols file in the same directory.
if (MSVC)
if(MSVC)
set(CMAKE_PDB_OUTPUT_DIRECTORY "${REACTOS_BINARY_DIR}/msvc_pdb")
elseif(SEPARATE_DBG)
set(CMAKE_PDB_OUTPUT_DIRECTORY "${REACTOS_BINARY_DIR}/symbols")

View File

@@ -39,7 +39,7 @@
## As responsible, he may refuse a local patch if you did not try to
## upstream your changes.
## If you want to get listed in that file, either put yourself in the
## If you want to get listed in this file, either put yourself in the
## file and push it, or open a pull request. You can also ask a person
## who has push access to add yourself.
@@ -121,8 +121,8 @@
# R: learn-more, learn_more, Mark Jansen
# R: ThFabba, Thomas Faber
# S: Maintained
/sdk/cmake/ @learn-more @ThFabba
*.cmake @learn-more @ThFabba
/sdk/cmake/
*.cmake
# File Patch API
# M: learn-more, learn_more, Mark Jansen
@@ -185,7 +185,7 @@
# Mount Point Manager
# M: HeisSpiter, Heis Spiter, Pierre Schweitzer
# S: Maintained
/drivers/filters/mountmgr/ @HeisSpiter
/drivers/storage/mountmgr/ @HeisSpiter
# Network Drivers
# M:
@@ -225,7 +225,7 @@
# R: learn-more, learn_more, Mark Jansen
# R: ThFabba, Thomas Faber
# S: Maintained
/modules/rostests/apitests/ @learn-more @ThFabba
/modules/rostests/apitests/
# ReactOS Kernel-Mode Tests
# M: ThFabba, Thomas Faber
@@ -246,6 +246,22 @@
# S: Maintained
/sdk/lib/rtl/ @HeisSpiter @learn-more @ThFabba @tkreuzer
# Security Manager
# M: GeoB99, George Bișoc
# S: Maintained
/modules/rostests/kmtests/ntos_se/ @GeoB99
/ntoskrnl/se/ @GeoB99
# Shell
# M:
# R: learn-more, learn_more, Mark Jansen
# R: yagoulas, Giannis Adamopoulos
# S: Maintained
/base/shell/explorer/ @learn-more @yagoulas
/base/shell/rshell/ @learn-more @yagoulas
/dll/win32/browseui/ @learn-more @yagoulas
/dll/win32/shell32/ @learn-more @yagoulas
# Shell Extensions
# M:
# R: learn-more, learn_more, Mark Jansen
@@ -266,10 +282,8 @@
/drivers/filesystems/btrfs/ @HeisSpiter
/drivers/filesystems/cdfs/ @HeisSpiter
/drivers/filesystems/ext2/ @HeisSpiter
/drivers/filesystems/fastfat_new/ @HeisSpiter
/drivers/filesystems/ffs/ @HeisSpiter
/drivers/filesystems/fastfat/ @HeisSpiter
/drivers/filesystems/nfs/ @HeisSpiter
/drivers/filesystems/reiserfs/ @HeisSpiter
/media/doc/README.FSD @HeisSpiter
/sdk/lib/fslib/btrfslib/ @HeisSpiter
/sdk/lib/fslib/ext2lib/ @HeisSpiter
@@ -325,5 +339,25 @@ amd64/ @tkreuzer
/boot/freeldr/freeldr/arch/realmode/amd64.S @tkreuzer
# Translations
de-DE.rc @reactos/lang-german
nl-NL.rc @reactos/lang-dutch
# This is the list of translation teams in ReactOS GitHub organization.
# If you want to be part of one - hit us at https://chat.reactos.org/
de-DE.* @reactos/lang-german
es-ES.* @reactos/lang-spanish
et-EE.* @reactos/lang-estonian
fr-FR.* @reactos/lang-french
he-IL.* @reactos/lang-hebrew
hi-IN.* @reactos/lang-hindi
hu-HU.* @reactos/lang-hungarian
id-ID.* @reactos/lang-indonesian
it-IT.* @reactos/lang-italian
nl-NL.* @reactos/lang-dutch
pl-PL.* @reactos/lang-polish
pt-BR.* @reactos/lang-portuguese
pt-PT.* @reactos/lang-portuguese
ro-RO.* @reactos/lang-romanian
ru-RU.* @reactos/lang-russian
tr-TR.* @reactos/lang-turkish
uk-UA.* @reactos/lang-ukrainian
zh-CN.* @reactos/lang-chinese
zh-HK.* @reactos/lang-chinese
zh-TW.* @reactos/lang-chinese

View File

@@ -2,9 +2,9 @@
There are several ways to contribute to the development of ReactOS. The most often encountered problem is not knowing where to begin or what to do. If you are able to program or understand the technical information that is pertinent to this project, helping the development can be easy.
- [What To Do?](#what-to-do?)
- [How To Contribute?](#how-to-contribute?)
- [Where To Start?](#where-to-start?)
- [What To Do?](#what-to-do)
- [How To Contribute?](#how-to-contribute)
- [Where To Start?](#where-to-start)
**Legal notice:** If you have seen Microsoft Windows source code, your contribution won't be accepted because of potential copyright violation. Before contributing, you must affirm that the following is true:
>I hereby swear that I have not used nor seen the source code to any version of the Windows operating system

View File

@@ -1,12 +1,12 @@
Copyright 2008 ReactOS Portable Systems Group. All rights reserved.
Copyright 2008 ReactOS Portable Systems Group. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided
that the following conditions are met:
that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and
the following disclaimer.
the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions
and the following disclaimer in the documentation and/or other materials provided with the
distribution.
and the following disclaimer in the documentation and/or other materials provided with the
distribution.
THIS SOFTWARE IS PROVIDED BY THE REACTOS PORTABLE SYSTEMS GROUP ``AS IS'' AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND

View File

@@ -28,6 +28,7 @@ Filip Navara <xnavara@volny.cz>
Frederik Leemans
Ge van Geldorp <ge@gse.nl>
Ged Murphy <gedmurphy@reactos.org>
George Bisoc <george.bisoc@reactos.org>
Giannis Adamopoulos <gadamopoulos@reactos.org>
Gregor Brunmar <gregor brunmar at home se>
Gregor Schneider <grschneider@gmail.com>

View File

@@ -7,8 +7,8 @@
---
<p align=center>
<a href="https://reactos.org/project-news/reactos-0413-released/">
<img alt="ReactOS 0.4.13 Release" src="https://img.shields.io/badge/release-0.4.13-0688CB.svg">
<a href="https://reactos.org/project-news/reactos-0414-released/">
<img alt="ReactOS 0.4.14 Release" src="https://img.shields.io/badge/release-0.4.14-0688CB.svg">
</a>
<a href="https://reactos.org/download/">
<img alt="Download ReactOS" src="https://img.shields.io/badge/download-latest-0688CB.svg">
@@ -32,28 +32,33 @@
[Official chat](https://chat.reactos.org/) &bull;
[Wiki](https://reactos.org/wiki/) &bull;
[Forum](https://reactos.org/forum/) &bull;
[Community Discord](https://discord.gg/7knjvhT) &bull;
[JIRA Bug Tracker](https://jira.reactos.org/issues/) &bull;
[ReactOS Git mirror](https://git.reactos.org/) &bull;
[Testman](https://reactos.org/testman/)
## What is ReactOS?
ReactOS™ is an Open Source effort to develop a quality operating system that is compatible with applications and drivers written for the Microsoft® Windows™ NT family of operating systems (NT4, 2000, XP, 2003, Vista, Seven).
ReactOS™ is an Open Source effort to develop a quality operating system that is compatible with applications and drivers written for the Microsoft® Windows™ NT family of operating systems (NT4, 2000, XP, 2003, Vista, 7).
The ReactOS project, although currently focused on Windows Server 2003 compatibility, is always keeping an eye toward compatibility with Windows Vista and future Windows NT releases.
The code of ReactOS is licensed under [GNU GPL 2.0](https://github.com/reactos/reactos/blob/master/COPYING).
***ReactOS is currently an Alpha quality operating system. This means that ReactOS is under heavy development, things may not work well and it can corrupt the data present on your hard disk. It is recommended to test ReactOS on a virtual machine or on a computer with no sensitive or critical data!***
### Product quality warning
**ReactOS is currently an Alpha quality operating system.** This means that ReactOS is under heavy development and you have to be ready to encounter some problems. Different things may not work well and it can corrupt the data present on your hard disk. It is HIGHLY recommended to test ReactOS on a virtual machine or on a computer with no sensitive or critical data!
## Building
[![appveyor.badge]][appveyor.link] [![travis.badge]][travis.link] [![rosbewin.badge]][rosbewin.link] [![rosbeunix.badge]][rosbeunix.link] [![coverity.badge]][coverity.link]
![Build](https://github.com/reactos/reactos/workflows/Build/badge.svg) [![rosbewin.badge]][rosbewin.link] [![rosbeunix.badge]][rosbeunix.link] [![coverity.badge]][coverity.link]
To build the system it is strongly advised to use the _ReactOS Build Environment (RosBE)._
Up-to-date versions for Windows and for Unix/GNU-Linux are available from our download page at: ["Build Environment"](https://reactos.org/wiki/Build_Environment).
Alternatively one can use Microsoft Visual C++ (MSVC) version 2010+. Building with MSVC is covered here: ["Visual Studio or Microsoft Visual C++"](https://reactos.org/wiki/CMake#Visual_Studio_or_Microsoft_Visual_C.2B.2B).
Alternatively one can use Microsoft Visual C++ (MSVC) version 2015+. Building with MSVC is covered here: ["Visual Studio or Microsoft Visual C++"](https://reactos.org/wiki/CMake#Visual_Studio_or_Microsoft_Visual_C.2B.2B).
See ["Building ReactOS"](https://reactos.org/wiki/Building_ReactOS) article for more details.
### Binaries
@@ -61,10 +66,7 @@ To build ReactOS you must run the `configure` script in the directory you want t
### Bootable images
To build a bootable CD image run `ninja bootcd` from the
build directory. This will create a CD image with a filename `bootcd.iso`.
See ["Building ReactOS"](https://reactos.org/wiki/Building_ReactOS) for more details.
To build a bootable CD image run `ninja bootcd` from the build directory. This will create a CD image with a filename `bootcd.iso`.
You can always download fresh binary builds of bootable images from the ["Daily builds"](https://reactos.org/getbuilds/) page.
@@ -74,9 +76,7 @@ By default, ReactOS currently can only be installed on a machine that has a FAT1
The partition on which ReactOS is to be installed (which may or may not be the bootable partition) must also be formatted as FAT16 or FAT32.
ReactOS Setup can format the partitions if needed.
Starting 0.4.10, ReactOS can be installed using the BtrFS file system. But
consider this as an experimental feature and thus regressions not triggered on
FAT setup may be observed.
Starting with 0.4.10, ReactOS can be installed using the BtrFS file system. But consider this as an experimental feature and thus regressions not triggered on FAT setup may be observed.
To install ReactOS from the bootable CD distribution, extract the archive contents. Then burn the CD image, boot from it, and follow the instructions.
@@ -94,6 +94,8 @@ __NOTE:__ The bug tracker is _not_ for discussions. Please use our [official cha
We are always looking for developers! Check [how to contribute](CONTRIBUTING.md) if you are willing to participate.
__Legal notice__: If you have seen proprietary Microsoft Windows source code (including but not limited to the leaked Windows NT 3.5, NT 4, 2000 source code and the Windows Research Kernel), your contribution won't be accepted because of potential copyright violation.
Try out cloud-based ReactOS development using Gitpod and Docker:
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/reactos/reactos)
@@ -124,15 +126,11 @@ The main development is done on [GitHub](https://github.com/reactos/reactos). We
There is also an obsolete [SVN archive repository](https://svn.reactos.org/reactos/) that is kept for historical purposes.
[travis.badge]: https://api.travis-ci.org/reactos/reactos.svg?branch=master
[appveyor.badge]: https://ci.appveyor.com/api/projects/status/github/reactos/reactos?branch=master&svg=true
[coverity.badge]: https://scan.coverity.com/projects/205/badge.svg?flat=1
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.1.6-0688CB.svg
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.1.2-0688CB.svg
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.2.0-0688CB.svg
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.2-0688CB.svg
[prwelcome.badge]: https://img.shields.io/badge/PR-welcome-0688CB.svg
[travis.link]: https://travis-ci.org/github/reactos/reactos
[appveyor.link]: https://ci.appveyor.com/project/AmineKhaldi/reactos
[coverity.link]: https://scan.coverity.com/projects/205
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.1.6/
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.1.2/
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.2.0/
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.2/

View File

@@ -1,59 +0,0 @@
environment:
matrix:
- BuildType: "msvc-x64"
- BuildType: "msvc"
# - BuildType: "clang-cl"
# - BuildType: vssolution
version: reactos.appveyor.{build}
skip_branch_with_pr: true
clone_depth: 5
clone_folder: c:\reactos-cov
matrix:
fast_finish: true
init:
- ps: (New-Object System.Net.WebClient).DownloadFile("https://svn.reactos.org/amine/RosCMakeNinja.zip","C:\RosCMakeNinja.zip")
- 7z x C:\RosCMakeNinja.zip -oC:\RosCMakeNinja
- ps: >-
If ($env:BuildType -Match "clang-cl") {
$env:clang_configure_option="clang"
(New-Object System.Net.WebClient).DownloadFile("https://svn.reactos.org/amine/clang-cl.7z","C:\clang-cl.7z")
7z x C:\clang-cl.7z -oC:\RosCMakeNinja\bin
} Else {
$env:clang_configure_option=""
}
build_script:
- set PATH=C:\RosCMakeNinja\bin;%PATH%
- if "%BuildType%" == "msvc-x64" (
call "C:\PROGRA~2\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
) else (
call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
)
- cmake --version
- md c:\ros_build
- cd c:\ros_build
- call %APPVEYOR_BUILD_FOLDER%\configure.cmd %clang_configure_option% -DENABLE_ROSTESTS=1
- ps: >-
& ninja -k0 2>&1 | select-string -pattern "\[\d+\/\d+\] " -NotMatch | %{$_.Line}
- ps: >-
& ninja bootcd 2>&1 | select-string -pattern "\[\d+\/\d+\] " -NotMatch | %{$_.Line}
test: off
deploy: off
for:
-
matrix:
only:
- BuildType: vssolution
build_script:
- set PATH=C:\RosCMakeNinja\bin;%PATH%
- call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
- cmake --version
- md C:\ros_build
- cd C:\ros_build
- call %APPVEYOR_BUILD_FOLDER%\configure.cmd VSSolution -DENABLE_ROSTESTS=1
- msbuild /verbosity:quiet /target:bootcd REACTOS.sln

View File

@@ -21,7 +21,7 @@ add_subdirectory(magnify)
add_subdirectory(mmc)
add_subdirectory(mplay32)
add_subdirectory(msconfig)
add_subdirectory(msconfig_new)
#add_subdirectory(msconfig_new) #excluded from the build because it is significantly more buggy than the old msconfig. see CORE-18067 for examples
add_subdirectory(mscutils)
add_subdirectory(mshta)
add_subdirectory(mspaint)
@@ -30,10 +30,13 @@ add_subdirectory(network)
add_subdirectory(notepad)
add_subdirectory(osk)
add_subdirectory(rapps)
add_subdirectory(rapps_com)
add_subdirectory(regedit)
add_subdirectory(regedt32)
add_subdirectory(runas)
add_subdirectory(sc)
add_subdirectory(screensavers)
add_subdirectory(sdbinst)
add_subdirectory(setup16)
add_subdirectory(shutdown)
add_subdirectory(sndrec32)

View File

@@ -1,5 +1,4 @@
set_cpp()
add_definitions(-DUSER_MODE)
include_directories(${REACTOS_SOURCE_DIR}/drivers/storage/ide/uniata)
add_executable(atactl atactl.cpp atactl.rc)

View File

@@ -60,6 +60,9 @@
#ifdef LANGUAGE_PT_BR
#include "lang/pt-BR.rc"
#endif
#ifdef LANGUAGE_PT_PT
#include "lang/pt-PT.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#endif
@@ -75,6 +78,9 @@
#ifdef LANGUAGE_SQ_AL
#include "lang/sq-AL.rc"
#endif
#ifdef LANGUAGE_SR_SP
#include "lang/sr-SP.rc"
#endif
#ifdef LANGUAGE_TR_TR
#include "lang/tr-TR.rc"
#endif
@@ -84,6 +90,9 @@
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_HK
#include "lang/zh-HK.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

View File

@@ -1,4 +1,4 @@
/*
/*
* FILE: base/applications/cacls/lang/cs-CZ.rc
* TRANSLATOR: Radek Liska aka Black_Fox (radekliska at gmail dot com)
* UPDATED: 2008-02-29

View File

@@ -1,4 +1,4 @@
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
STRINGTABLE
BEGIN

View File

@@ -0,0 +1,74 @@
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
IDS_HELP "Mostra ou modifica as listas de controle de acesso (ACLs) de ficheiros\n\n\
CACLS nome-ficheiro [/T] [/E] [/C] [/G utilizador:perm] [/R utilizador [...]]\n\
[/P utilizador:perm [...]] [/D utilizador [...]]\n\
nome-ficheiro Mostra ACLs.\n\
/T Altera ACLs de ficheiros especificados\n\
na pasta actual e em todas as subpastas.\n\
/E Edita ACL em vez de substituí-la.\n\
/C Continua ao encontrar erros de acesso negado.\n\
/G utilizador:perm Concede os direitos de acesso ao utilizador especificado.\n\
Perm pode ser: R Ler\n\
W Gravar\n\
C Alterar (gravar)\n\
F Controle total\n\
/R utilizador Revoga os direitos de acesso do utilizador especificado\n\
(válido somente com /E).\n\
/P utilizador:perm Substitui os direitos de acesso do utilizador especificado.\n\
Perm pode ser: N Nenhum\n\
R Ler\n\
W Gravar\n\
C Alterar (gravar)\n\
F Controle total\n\
/D utilizador Nega o acesso ao utilizador especificado.\n\
Caracteres curinga podem ser usados para especificar mais de um ficheiro\n\
num comando.\n\
Pode especificar mais de um utilizador num comando.\n\n\
Abreviaçäes:\n\
CI - Herança de recipiente.\n\
O ACE será herdado pelas pastas.\n\
OI - Herança de objeto.\n\
O ACE será herdado pelos ficheiros.\n\
IO - Somente herança.\n\
O ACE não se aplica ao ficheiro/pasta actual.\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"
IDS_ABBR_FULL "F"
IDS_ABBR_READ "R"
IDS_ABBR_WRITE "W"
IDS_ABBR_CHANGE "C"
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_DENY "(DENY)"
IDS_SPECIAL_ACCESS "(special access:)"
IDS_GENERIC_READ "GENERIC_READ"
IDS_GENERIC_WRITE "GENERIC_WRITE"
IDS_GENERIC_EXECUTE "GENERIC_EXECUTE"
IDS_GENERIC_ALL "GENERIC_ALL"
IDS_FILE_GENERIC_EXECUTE "FILE_GENERIC_EXECUTE"
IDS_FILE_GENERIC_READ "FILE_GENERIC_READ"
IDS_FILE_GENERIC_WRITE "FILE_GENERIC_WRITE"
IDS_FILE_READ_DATA "FILE_READ_DATA"
IDS_FILE_WRITE_DATA "FILE_WRITE_DATA"
IDS_FILE_APPEND_DATA "FILE_APPEND_DATA"
IDS_FILE_READ_EA "FILE_READ_EA"
IDS_FILE_WRITE_EA "FILE_WRITE_EA"
IDS_FILE_EXECUTE "FILE_EXECUTE"
IDS_FILE_DELETE_CHILD "FILE_DELETE_CHILD"
IDS_FILE_READ_ATTRIBUTES "FILE_READ_ATTRIBUTES"
IDS_FILE_WRITE_ATTRIBUTES "FILE_WRITE_ATTRIBUTES"
IDS_MAXIMUM_ALLOWED "MAXIMUM_ALLOWED"
IDS_ACCESS_SYSTEM_SECURITY "ACCESS_SYSTEM_SECURITY"
IDS_SPECIFIC_RIGHTS_ALL "SPECIFIC_RIGHTS_ALL"
IDS_STANDARD_RIGHTS_REQUIRED "STANDARD_RIGHTS_REQUIRED"
IDS_SYNCHRONIZE "SYNCHRONIZE"
IDS_WRITE_OWNER "WRITE_OWNER"
IDS_WRITE_DAC "WRITE_DAC"
IDS_READ_CONTROL "READ_CONTROL"
IDS_DELETE "DELETE"
IDS_STANDARD_RIGHTS_ALL "STANDARD_RIGHTS_ALL"
END

View File

@@ -0,0 +1,149 @@
LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
STRINGTABLE
BEGIN
IDS_HELP "Прикажи или измени листе за управљање приступима фајловима.\n\
(access control lists ACLs)\n\n\
CACLS имефајла [/T] [/E] [/C] [/G корисник:дозвола [...]] [/R корисник [...]]\n\
[/P корисник:дозвола [...]] [/D корисник [...]]\n\
имефајла Прикажи листе приступа.\n\
/T Измени листе приступа задатих фајлова у\n\
текућем и свим поддиректоријумима.\n\
/E Измени постојећу листу приступа уместо да је замениш.\n\
/C Настави након грешке о забрањеном приступу.\n\
/G корисник:дозвола Додели наведена права корисничког приступа.\n\
Дозвола може бити: R Читање\n\
W Писање\n\
C Измена (писање)\n\
F Потпуно управљање\n\
/R корисник Повуци дозволе приступа наведеног корисника\n\
(исправно једино уз /E).\n\
/P корисник:дозвола Замени дозволе приступа наведеног корисника.\n\
Дозвола може бити: N Без приступа\n\
R Читање\n\
W Писање\n\
C Измена (писање)\n\
F Потпуно управљање\n\
/D корисник Онемогући приступ наведеном кориснику.\n\
У команди се могу користити џокер знаци ради задавања више од једног фајла.\n\
У команди се може навести више од једног корисника.\n\n\
Скраћенице:\n\
CI - Наслеђивање по контејнерима (Container Inherit).\n\
Нови упис (ACE) наслеђују директоријуми.\n\
OI - Наслеђивање по објекту (Object Inherit).\n\
Нови упис (ACE) наслеђују фајлови.\n\
IO - Само наслеђивање (Inherit Only).\n\
Упис не важи за текући фајл/директоријум.\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"
IDS_ABBR_FULL "F"
IDS_ABBR_READ "R"
IDS_ABBR_WRITE "W"
IDS_ABBR_CHANGE "C"
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_DENY "(DENY)"
IDS_SPECIAL_ACCESS "(special access:)"
IDS_GENERIC_READ "GENERIC_READ"
IDS_GENERIC_WRITE "GENERIC_WRITE"
IDS_GENERIC_EXECUTE "GENERIC_EXECUTE"
IDS_GENERIC_ALL "GENERIC_ALL"
IDS_FILE_GENERIC_EXECUTE "FILE_GENERIC_EXECUTE"
IDS_FILE_GENERIC_READ "FILE_GENERIC_READ"
IDS_FILE_GENERIC_WRITE "FILE_GENERIC_WRITE"
IDS_FILE_READ_DATA "FILE_READ_DATA"
IDS_FILE_WRITE_DATA "FILE_WRITE_DATA"
IDS_FILE_APPEND_DATA "FILE_APPEND_DATA"
IDS_FILE_READ_EA "FILE_READ_EA"
IDS_FILE_WRITE_EA "FILE_WRITE_EA"
IDS_FILE_EXECUTE "FILE_EXECUTE"
IDS_FILE_DELETE_CHILD "FILE_DELETE_CHILD"
IDS_FILE_READ_ATTRIBUTES "FILE_READ_ATTRIBUTES"
IDS_FILE_WRITE_ATTRIBUTES "FILE_WRITE_ATTRIBUTES"
IDS_MAXIMUM_ALLOWED "MAXIMUM_ALLOWED"
IDS_ACCESS_SYSTEM_SECURITY "ACCESS_SYSTEM_SECURITY"
IDS_SPECIFIC_RIGHTS_ALL "SPECIFIC_RIGHTS_ALL"
IDS_STANDARD_RIGHTS_REQUIRED "STANDARD_RIGHTS_REQUIRED"
IDS_SYNCHRONIZE "SYNCHRONIZE"
IDS_WRITE_OWNER "WRITE_OWNER"
IDS_WRITE_DAC "WRITE_DAC"
IDS_READ_CONTROL "READ_CONTROL"
IDS_DELETE "DELETE"
IDS_STANDARD_RIGHTS_ALL "STANDARD_RIGHTS_ALL"
END
LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
STRINGTABLE
BEGIN
IDS_HELP "Prikaži ili izmeni liste za upravljanje pristupima fajlovima.\n\
(access control lists ACLs)\n\n\
CACLS imefajla [/T] [/E] [/C] [/G korisnik:dozvola [...]] [/R korisnik [...]]\n\
[/P korisnik:dozvola [...]] [/D korisnik [...]]\n\
imefajla Prikaži liste pristupa.\n\
/T Izmeni liste pristupa zadatih fajlova u\n\
tekućem i svim poddirektorijumima.\n\
/E Izmeni postojeću listu pristupa umesto da je zameniš.\n\
/C Nastavi nakon greške o zabranjenom pristupu.\n\
/G korisnik:dozvola Dodeli navedena prava korisničkog pristupa.\n\
Dozvola može biti: R Čitanje\n\
W Pisanje\n\
C Izmena (pisanje)\n\
F Potpuno upravljanje\n\
/R korisnik Povuci dozvole pristupa navedenog korisnika\n\
(ispravno jedino uz /E).\n\
/P korisnik:dozvola Zameni dozvole pristupa navedenog korisnika.\n\
Dozvola može biti: N Bez pristupa\n\
R Čitanje\n\
W Pisanje\n\
C Izmena (pisanje)\n\
F Potpuno upravljanje\n\
/D korisnik Onemogući pristup navedenom korisniku.\n\
U komandi se mogu koristiti džoker znaci radi zadavanja više od jednog fajla.\n\
U komandi se može navesti više od jednog korisnika.\n\n\
Skraćenice:\n\
CI - Nasleđivanje po kontejnerima (Container Inherit).\n\
Novi upis (ACE) nasleđuju direktorijumi.\n\
OI - Nasleđivanje po objektu (Object Inherit).\n\
Novi upis (ACE) nasleđuju fajlovi.\n\
IO - Samo nasleđivanje (Inherit Only).\n\
Upis ne važi za tekući fajl/direktorijum.\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"
IDS_ABBR_FULL "F"
IDS_ABBR_READ "R"
IDS_ABBR_WRITE "W"
IDS_ABBR_CHANGE "C"
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_DENY "(DENY)"
IDS_SPECIAL_ACCESS "(special access:)"
IDS_GENERIC_READ "GENERIC_READ"
IDS_GENERIC_WRITE "GENERIC_WRITE"
IDS_GENERIC_EXECUTE "GENERIC_EXECUTE"
IDS_GENERIC_ALL "GENERIC_ALL"
IDS_FILE_GENERIC_EXECUTE "FILE_GENERIC_EXECUTE"
IDS_FILE_GENERIC_READ "FILE_GENERIC_READ"
IDS_FILE_GENERIC_WRITE "FILE_GENERIC_WRITE"
IDS_FILE_READ_DATA "FILE_READ_DATA"
IDS_FILE_WRITE_DATA "FILE_WRITE_DATA"
IDS_FILE_APPEND_DATA "FILE_APPEND_DATA"
IDS_FILE_READ_EA "FILE_READ_EA"
IDS_FILE_WRITE_EA "FILE_WRITE_EA"
IDS_FILE_EXECUTE "FILE_EXECUTE"
IDS_FILE_DELETE_CHILD "FILE_DELETE_CHILD"
IDS_FILE_READ_ATTRIBUTES "FILE_READ_ATTRIBUTES"
IDS_FILE_WRITE_ATTRIBUTES "FILE_WRITE_ATTRIBUTES"
IDS_MAXIMUM_ALLOWED "MAXIMUM_ALLOWED"
IDS_ACCESS_SYSTEM_SECURITY "ACCESS_SYSTEM_SECURITY"
IDS_SPECIFIC_RIGHTS_ALL "SPECIFIC_RIGHTS_ALL"
IDS_STANDARD_RIGHTS_REQUIRED "STANDARD_RIGHTS_REQUIRED"
IDS_SYNCHRONIZE "SYNCHRONIZE"
IDS_WRITE_OWNER "WRITE_OWNER"
IDS_WRITE_DAC "WRITE_DAC"
IDS_READ_CONTROL "READ_CONTROL"
IDS_DELETE "DELETE"
IDS_STANDARD_RIGHTS_ALL "STANDARD_RIGHTS_ALL"
END

View File

@@ -1,41 +1,44 @@
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
/* TRANSLATOR:
2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net),
2021 Süleyman Poyraz (zaryob [dot] dev [at] gmail [dot] com)
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
IDS_HELP "Kütüklerin erişim denetim dizelgelerini (ACL'lerini) görüntüler ya da değiştirir.\n\n\
CACLS kütük adı [/T] [/E] [/C] [/G kullanıcı:izin [...]] [/R kullanıcı [...]]\n\
IDS_HELP "Dosyaların erişim kontrol listelerini (ACL'ler) görüntüler veya değiştirir.\n\n\
CACLS dosya adı [/T] [/E] [/C] [/G kullanıcı:izin [...]] [/R kullanıcı [...]]\n\
[/P kullanıcı:izin [...]] [/D kullanıcı [...]]\n\
kütük adı ACL'leri görüntüler.\n\
dosya adı ACL'leri görüntüler.\n\
/T Şimdiki dizin ve alt dizinlerin içinde\n\
belirtilen kütülerin ACL'lerini değiştirir.\n\
/E ACL'yi yenisiyle değiştirme yerine onu düzenle.\n\
/C Erişim engellendi yanlışlıklarıyla sürdür.\n\
/G kullanıcı:izin Belirtilen kullanıcı erişim yetkilerini ver.\n\
İzin şu olabilir: R Okuma\n\
W Yazma\n\
C Değiştirme (yazma)\n\
F Tüm denetim\n\
/R kullanıcı Belirtilen kullanıcının erişim yetkilerini geri al\n\
belirtilen dosyaların ACL'lerini değiştirir.\n\
/E ACL'yi yenisiyle değiştirmek yerine onu düzenler.\n\
/C Erişim engellendi hatalarına rağmen devam eder.\n\
/G kullanıcı:izin Belirtilen kullanıcı erişim yetkilerini verir.\n\
Yetkilerin biri şu olabilir: R Okuma\n\
W Yazma\n\
C Değiştirme (yazma)\n\
F Tüm denetim\n\
/R kullanıcı Belirtilen kullanıcının erişim yetkilerini geri alır.\n\
(yalnızca /E ile geçerli).\n\
/P kullanıcı:izin Belirtilen kullanıcının erişim yetkilerini yenileriyle\n\
değiştir.\n\
İzin şu olabilir: N Yok\n\
R Okuma\n\
W Yazma\n\
C Değiştirme (yazma)\n\
F Tüm denetim\n\
değiştirir.\n\
Yetkilerin biri şu olabilir: N Yok\n\
R Okuma\n\
W Yazma\n\
C Değiştirme (yazma)\n\
F Tüm denetim\n\
/D kullanıcı Belirtilen kullanıcı erişimini verme.\n\
Umûmî arama damgaları, bir komutta birden çok kütük belirtmek için kullanılabilir.\n\
Bir komutta birden çok kullanıcı belirtebilirsiniz.\n\n\
Özel semboller, bir komutta birden fazla dosya belirtmek için kullanılabilir.\n\
Bir komutta birden fazla kullanıcı belirtebilirsiniz.\n\n\
Kısaltmalar:\n\
CI - Kapsayıcı Devral.\n\
CI - Kapsayıcı Devralma.\n\
ACE dizinlerle devralınacak.\n\
OI - Nesne Devral.\n\
ACE kütüklerle devralınacak.\n\
OI - Nesnel Devralma.\n\
ACE dosyalarla devralınacak.\n\
IO - Yalnızca Devral.\n\
ACE'yi şimdiki kütüğe ya da dizine uygulama.\n"
ACE'yi şimdiki dosyaya ya da dizine uygulama.\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"
@@ -45,8 +48,8 @@ Kısaltmalar:\n\
IDS_ABBR_CHANGE "C"
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_DENY "(VERME)"
IDS_SPECIAL_ACCESS "(husûsî erişim:)"
IDS_DENY "(REDDET)"
IDS_SPECIAL_ACCESS "(özel erişim:)"
IDS_GENERIC_READ "GENERIC_READ"
IDS_GENERIC_WRITE "GENERIC_WRITE"
IDS_GENERIC_EXECUTE "GENERIC_EXECUTE"

View File

@@ -13,13 +13,13 @@ BEGIN
IDS_HELP "显示或者修改文件的访问控制表\n\n\
CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
[/P user:perm [...]] [/D user [...]]\n\
filename 显示 ACLs。\n\
filename 显示访问控制表。\n\
/T 更改当前目录及其所有子目录中\n\
指定文件的 ACL。\n\
/E 编辑 ACL 而不替换。\n\
/E 编辑访问控制表而不替换。\n\
/C 在出现拒绝访问错误时继续。\n\
/G user:perm 赋予指定用户访问权限。\n\
Perm 可以是: R 读取\n\
perm 可以是R 读取\n\
W 写入\n\
C 更改(写入)\n\
F 完全控制\n\
@@ -33,7 +33,7 @@ CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
/D user 拒绝指定用户的访问。\n\
在命令中可以使用通配符指定多个文件。\n\
您也可以在命令中指定多个用户。\n\n\
缩写:\n\
缩写\n\
CI - 容器继承。\n\
ACE会由目录继承。\n\
OI - 对象继承。\n\

View File

@@ -0,0 +1,80 @@
/*
* PROJECT: ReactOS CACLS
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Chinese (Hong Kong) resource file
* TRANSLATORS: Copyright 2021 Chan Chilung <eason066@gmail.com>
* REFERENCES: Chinese (Traditional) resource file
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
STRINGTABLE
BEGIN
IDS_HELP "顯示或修改文件的存取控制串列\n\n\
CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
[/P user:perm [...]] [/D user [...]]\n\
filename 顯示 ACLs。\n\
/T 更改目前目錄及其所有子目錄\n\
指定文件的 ACL。\n\
/E 編輯 ACL 而不替換。\n\
/C 在出現拒絕存取錯誤時繼續。\n\
/G user:perm 賦予指定使用者存取權限。\n\
perm 可以是: R 讀取\n\
W 寫入\n\
C 更改 (寫入)\n\
F 完全控制\n\
/R user 撤銷指定使用者的存取權限 (與 /E 一齊使用時才會有效)。\n\
/P user:perm 更改指定使用者的存取權限。\n\
perm 可以是: N 無\n\
R 讀取\n\
W 寫入\n\
C 更改 (寫入)\n\
F 完全控制\n\
/D user 拒絕指定使用者的存取。\n\
在命令中可以使用通配符指定多個檔案。\n\
您亦可以在命令中指定多個使用者。\n\n\
縮寫:\n\
CI - 容器繼承。\n\
ACE會由目錄繼承。\n\
OI - 對象繼承。\n\
ACE 會由文件繼承。\n\
IO - 只繼承。\n\
ACE 不適用於目前檔案/目錄。\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"
IDS_ABBR_FULL "F"
IDS_ABBR_READ "R"
IDS_ABBR_WRITE "W"
IDS_ABBR_CHANGE "C"
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_DENY "(DENY)"
IDS_SPECIAL_ACCESS "(特殊存取:)"
IDS_GENERIC_READ "GENERIC_READ"
IDS_GENERIC_WRITE "GENERIC_WRITE"
IDS_GENERIC_EXECUTE "GENERIC_EXECUTE"
IDS_GENERIC_ALL "GENERIC_ALL"
IDS_FILE_GENERIC_EXECUTE "FILE_GENERIC_EXECUTE"
IDS_FILE_GENERIC_READ "FILE_GENERIC_READ"
IDS_FILE_GENERIC_WRITE "FILE_GENERIC_WRITE"
IDS_FILE_READ_DATA "FILE_READ_DATA"
IDS_FILE_WRITE_DATA "FILE_WRITE_DATA"
IDS_FILE_APPEND_DATA "FILE_APPEND_DATA"
IDS_FILE_READ_EA "FILE_READ_EA"
IDS_FILE_WRITE_EA "FILE_WRITE_EA"
IDS_FILE_EXECUTE "FILE_EXECUTE"
IDS_FILE_DELETE_CHILD "FILE_DELETE_CHILD"
IDS_FILE_READ_ATTRIBUTES "FILE_READ_ATTRIBUTES"
IDS_FILE_WRITE_ATTRIBUTES "FILE_WRITE_ATTRIBUTES"
IDS_MAXIMUM_ALLOWED "MAXIMUM_ALLOWED"
IDS_ACCESS_SYSTEM_SECURITY "ACCESS_SYSTEM_SECURITY"
IDS_SPECIFIC_RIGHTS_ALL "SPECIFIC_RIGHTS_ALL"
IDS_STANDARD_RIGHTS_REQUIRED "STANDARD_RIGHTS_REQUIRED"
IDS_SYNCHRONIZE "SYNCHRONIZE"
IDS_WRITE_OWNER "WRITE_OWNER"
IDS_WRITE_DAC "WRITE_DAC"
IDS_READ_CONTROL "READ_CONTROL"
IDS_DELETE "DELETE"
IDS_STANDARD_RIGHTS_ALL "STANDARD_RIGHTS_ALL"
END

View File

@@ -1,36 +1,36 @@
/*
* PROJECT: ReactOS CACLS
* FILE: base/applications/cacls/lang/zh-TW.rc
* LICENSE: LGPL - See COPYING.LIB in the top level directory
* PURPOSE: TRADITIONAL Chinese resource file
* TRANSLATOR: jauming <jauming.tw@gmail.com>
* PROJECT: ReactOS CACLS
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Chinese (Traditional) resource file
* TRANSLATORS: Copyright 2007 Chaoming Tseng <jauming.tw@gmail.com>
* Copyright 2021 Chan Chilung <eason066@gmail.com>
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
STRINGTABLE
BEGIN
IDS_HELP "顯示或修改文件的訪問控制表\n\n\
IDS_HELP "顯示或修改文件的存取控制串列\n\n\
CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
[/P user:perm [...]] [/D user [...]]\n\
filename 顯示 ACLs。\n\
/T 更改前目錄及其所有子目錄\n\
/T 更改前目錄及其所有子目錄\n\
指定文件的 ACL。\n\
/E 編輯 ACL 而不替換。\n\
/C 在出現拒絕訪問錯誤時繼續。\n\
/G user:perm 賦予指定使用者訪問權限。\n\
Perm 可以是: R 讀取\n\
/C 在出現拒絕存取錯誤時繼續。\n\
/G user:perm 賦予指定使用者存取權限。\n\
perm 可以是: R 讀取\n\
W 寫入\n\
C 更改(寫入)\n\
F 完全控制\n\
/R user 撤銷指定使用者的訪問權限(僅在 /E 一起使用時合法)。\n\
/P user:perm 替換指定使用者的訪問權限。\n\
Perm 可以是: N 無\n\
/R user 撤銷指定使用者的存取權限 (僅在 /E 一起使用時才有效)。\n\
/P user:perm 替換指定使用者的存取權限。\n\
perm 可以是: N 無\n\
R 讀取\n\
W 寫入\n\
C 更改(寫入)\n\
F 完全控制\n\
/D user 拒絕指定使用者的訪問。\n\
/D user 拒絕指定使用者的存取。\n\
在命令中可以使用通配符指定多個文件。\n\
您也可以在命令中指定多個使用者。\n\n\
縮寫:\n\
@@ -39,7 +39,7 @@ CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
OI - 對象繼承。\n\
ACE 會由文件繼承。\n\
IO - 只繼承。\n\
ACE 不適用於前文件/目錄。\n"
ACE 不適用於前文件/目錄。\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"
@@ -50,7 +50,7 @@ CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_DENY "(DENY)"
IDS_SPECIAL_ACCESS "(special access:)"
IDS_SPECIAL_ACCESS "(特殊存取:)"
IDS_GENERIC_READ "GENERIC_READ"
IDS_GENERIC_WRITE "GENERIC_WRITE"
IDS_GENERIC_EXECUTE "GENERIC_EXECUTE"

View File

@@ -512,7 +512,7 @@ static const conv_t conv_VOLUME[] = {
1 chang = 20 tamlung
1 tamlung = 4 baht
1 baht = 4 saloung
1 saloung =
1 saloung =
1 chang = 6/5 kg = 1200 g
1 tamlung = 1/20 chang = 60 g

View File

@@ -55,7 +55,7 @@ double acosh(double x)
{
// must be x>=1, if not return Nan (Not a Number)
if(!(x>=1.0)) return sqrt(-1.0);
// return only the positive result (as sqrt does).
return log(x+sqrt(x*x-1.0));
}
@@ -64,7 +64,7 @@ double atanh(double x)
{
// must be x>-1, x<1, if not return Nan (Not a Number)
if(!(x>-1.0 && x<1.0)) return sqrt(-1.0);
return log((1.0+x)/(1.0-x))/2.0;
}
@@ -372,7 +372,7 @@ static __int64 cbrti(__int64 x) {
s = 60;
y = 0;
while(s >= 0) {
while(s >= 0) {
y = 2*y;
b = (3*y*(y + 1) + 1) << s;
s = s - 3;

View File

@@ -1,5 +1,5 @@
/* Превод на Български/ Bulgarian translation
* http://www.reactos.org/wiki/Bulgarian_translation
* https://reactos.org/wiki/Bulgarian_translation
* FILE: base/applications/calc/lang/bg-BG.rc
* Недовършен / Incomplete
*/
@@ -10,7 +10,7 @@ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Изчислителят на РеактОС"
CAPTION "Калкулатор за ReactOS"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -145,7 +145,7 @@ BEGIN
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Градуси", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Радиани", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Градове", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
CONTROL "Градиани", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -158,7 +158,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Изчислителян на РеактОС"
CAPTION "Калкулатор за ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -223,7 +223,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Изчислителят на РеактОС"
CAPTION "Калкулатор за ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -331,7 +331,7 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "Градуси\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Радиани\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Градове\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM "Градиани\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Разделяне на хилядите", IDM_VIEW_GROUP, CHECKED
END
@@ -339,7 +339,7 @@ BEGIN
BEGIN
MENUITEM "Помощ", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "За ReactOS Calc", IDM_HELP_ABOUT
MENUITEM "За ReactOS Calculator", IDM_HELP_ABOUT
END
END
@@ -372,7 +372,7 @@ BEGIN
BEGIN
MENUITEM "Помощ", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "За ReactOS Calc", IDM_HELP_ABOUT
MENUITEM "За ReactOS Calculator", IDM_HELP_ABOUT
END
END
@@ -395,7 +395,7 @@ BEGIN
BEGIN
MENUITEM "Помощ", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "За ReactOS Calc", IDM_HELP_ABOUT
MENUITEM "За ReactOS Calculator", IDM_HELP_ABOUT
END
END
@@ -410,7 +410,7 @@ END
/* About */
STRINGTABLE
BEGIN
IDS_CALC_NAME "Изчислителят на РеактОС"
IDS_CALC_NAME "Калкулатор за ReactOS"
IDS_AUTHOR "Написано от Carlo Bramini"
END
@@ -419,7 +419,7 @@ STRINGTABLE
BEGIN
IDS_CONV_ANGLE "Ъгъл"
IDS_CONV_AREA "Площ"
IDS_CONV_CONSUMPTION "Потребление (двигатели)"
IDS_CONV_CONSUMPTION "Разход (двигатели)"
IDS_CONV_CURRENCY "Парични единици"
IDS_CONV_ENERGY "Енергия"
IDS_CONV_LENGTH "Дължина"
@@ -435,10 +435,10 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_ARCMINUTES "Минути от arc"
IDS_ANGLE_ARCSECONDS "Секунди от arc"
IDS_ANGLE_DEGREES "Градуси"
IDS_ANGLE_GRADIANS "Гради"
IDS_ANGLE_GRADIANS "Градиани"
IDS_ANGLE_RADIANS "Радиани"
END
@@ -486,7 +486,7 @@ STRINGTABLE
BEGIN
IDS_CONSUMPTION_KM_PER_L "Километри/литър"
IDS_CONSUMPTION_L_PER_100_KM "Литри/100 километра"
IDS_CONSUMPTION_MILES_GALLON_UK "Мили/галон (ОК)"
IDS_CONSUMPTION_MILES_GALLON_UK "Мили/галон (ВБ)"
IDS_CONSUMPTION_MILES_GALLON_US "Мили/галон (САЩ)"
END
@@ -710,6 +710,6 @@ BEGIN
IDS_WEIGHT_STONES "Камъни"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "Тонове"
IDS_WEIGHT_TONS_UK "Тонове (ОК)"
IDS_WEIGHT_TONS_UK "Тонове (ВБ)"
IDS_WEIGHT_TONS_US "Тонове (САЩ)"
END

View File

@@ -429,8 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_ARCMINUTES "Minute d'arc"
IDS_ANGLE_ARCSECONDS "Seconde d'arc"
IDS_ANGLE_DEGREES "Degrés"
IDS_ANGLE_GRADIANS "Grades"
IDS_ANGLE_RADIANS "Radians"
@@ -599,7 +599,7 @@ BEGIN
IDS_PRESSURE_KILOPASCALS "Kilopascals"
IDS_PRESSURE_MM_OF_MERCURY "Millimètres de mercure"
IDS_PRESSURE_PASCALS "Pascals"
IDS_PRESSURE_PSI "Pounds-force per square inch"
IDS_PRESSURE_PSI "Livre-force par pouce-carrés"
END
/* Temperatures */

View File

@@ -0,0 +1,716 @@
/*
* PROJECT: ReactOS Calc
* LICENSE: LGPL-2.0-or-later (https://spdx.org/licenses/LGPL-2.0-or-later)
* PURPOSE: Indonesian resource file
* TRANSLATORS: Copyright 2022 Wilson Simanjuntak <wilsontulus5@gmail.com>
*/
LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
/* Dialogs */
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms", IDC_BUTTON_DMS, 38, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin", IDC_BUTTON_SIN, 38, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos", IDC_BUTTON_COS, 38, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan", IDC_BUTTON_TAN, 38, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(", IDC_BUTTON_LEFTPAR, 64, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp", IDC_BUTTON_EXP, 64, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y", IDC_BUTTON_XeY, 64, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2", IDC_BUTTON_Xe2, 64, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3", IDC_BUTTON_Xe3, 64, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")", IDC_BUTTON_RIGHTPAR, 90, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln", IDC_BUTTON_LN, 90, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log", IDC_BUTTON_LOG, 90, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!", IDC_BUTTON_NF, 90, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 90, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC", IDC_BUTTON_MC, 123, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 123, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 123, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 123, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7", IDC_BUTTON_7, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 156, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A", IDC_BUTTON_A, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 182, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 182, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 182, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 182, 120, 24, 18,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B", IDC_BUTTON_B, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 208, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C", IDC_BUTTON_C, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 234, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 234, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 234, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 234, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D", IDC_BUTTON_D, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor", IDC_BUTTON_XOR, 286, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not", IDC_BUTTON_NOT, 286, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Derajat", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radian", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradian", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Kembali", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Kembali", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 36, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 62, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 62, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 62, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 62, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 88, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 114, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 114, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 114, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 114, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt", IDC_BUTTON_SQRT, 140, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%", IDC_BUTTON_PERCENT, 140, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 140, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 140, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "", IDC_TEXT_MEMORY, 8, 24, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "MC", IDC_BUTTON_MC, 5, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 5, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 5, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 5, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
PUSHBUTTON "Konversi", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Kategori:", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Konversikan dari:", IDC_STATIC, 5, 49, 56, 8
COMBOBOX IDC_COMBO_TO, 5, 87, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Konversikan ke:", IDC_STATIC, 5, 76, 56, 8
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Kembali", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 67, 24, 18
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 86, 24, 18
CONTROL "0", IDC_BUTTON_0, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 105, 24, 18
CONTROL "8", IDC_BUTTON_8, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 48, 24, 18
CONTROL "5", IDC_BUTTON_5, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 67, 24, 18
CONTROL "2", IDC_BUTTON_2, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 86, 24, 18
CONTROL "+/-", IDC_BUTTON_SIGN, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 105, 24, 18
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 48, 24, 18
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 67, 24, 18
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 86, 24, 18
CONTROL ",", IDC_BUTTON_DOT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 105, 24, 18
CONTROL "/", IDC_BUTTON_DIV, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 48, 24, 18
CONTROL "*", IDC_BUTTON_MULT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 67, 24, 18
CONTROL "-", IDC_BUTTON_SUB, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 86, 24, 18
CONTROL "+", IDC_BUTTON_ADD, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 105, 24, 18
CONTROL "Sqrt", IDC_BUTTON_SQRT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 48, 24, 18
CONTROL "%", IDC_BUTTON_PERCENT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 67, 24, 18
CONTROL "1/x", IDC_BUTTON_RX, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 86, 24, 18
CONTROL "=", IDC_BUTTON_EQU, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 105, 24, 18
CTEXT "", IDC_TEXT_MEMORY, 152, 24, 24, 18, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "MC", IDC_BUTTON_MC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 48, 24, 18
CONTROL "MR", IDC_BUTTON_MR, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 67, 24, 18
CONTROL "MS", IDC_BUTTON_MS, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 86, 24, 18
CONTROL "M+", IDC_BUTTON_MP, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 105, 24, 18
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kotak statistik"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET", IDC_BUTTON_RET, 4, 48, 36, 16
PUSHBUTTON "LOAD", IDC_BUTTON_LOAD, 44, 48, 36, 16
PUSHBUTTON "CD", IDC_BUTTON_CD, 84, 48, 36, 16
PUSHBUTTON "CAD", IDC_BUTTON_CAD, 124, 48, 36, 16
CTEXT "n=0", IDC_TEXT_NITEMS, 4, 68, 156, 12, SS_CENTERIMAGE | SS_SUNKEN
END
/* Menus */
IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "&Ubah"
BEGIN
MENUITEM "&Salin\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Tempel\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "&Lihat"
BEGIN
MENUITEM "S&tandar", IDM_VIEW_STANDARD
MENUITEM "&Ilmiah", IDM_VIEW_SCIENTIFIC
MENUITEM "K&onversi", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "&Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "&Desimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "&Oktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&Biner\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "D&erajat\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "&Radian\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "&Gradian\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Grup d&igit", IDM_VIEW_GROUP, CHECKED
END
POPUP "&Bantuan"
BEGIN
MENUITEM "&Topik Bantuan", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&Tentang Kalkulator ReactOS", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "&Ubah"
BEGIN
MENUITEM "&Salin\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Tempel\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "&Lihat"
BEGIN
MENUITEM "S&tandar", IDM_VIEW_STANDARD
MENUITEM "&Ilmiah", IDM_VIEW_SCIENTIFIC
MENUITEM "K&onversi", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "&Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "&Desimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "&Oktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&Biner\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "&Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "&Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "&Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "B&yte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Grup d&igit", IDM_VIEW_GROUP, CHECKED
END
POPUP "&Bantuan"
BEGIN
MENUITEM "&Topik Bantuan", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&Tentang Kalkulator ReactOS", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU
BEGIN
POPUP "&Ubah"
BEGIN
MENUITEM "&Salin\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Tempel\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "&Lihat"
BEGIN
MENUITEM "S&tandar", IDM_VIEW_STANDARD
MENUITEM "&Ilmiah", IDM_VIEW_SCIENTIFIC
MENUITEM "K&onversi", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Grup d&igit", IDM_VIEW_GROUP, CHECKED
END
POPUP "&Bantuan"
BEGIN
MENUITEM "&Topik Bantuan", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&Tentang Kalkulator ReactOS", IDM_HELP_ABOUT
END
END
/* String Tables */
STRINGTABLE
BEGIN
IDS_MATH_ERROR "Kesalahan"
IDS_QUICKHELP "Bantuan cepat"
END
/* About */
STRINGTABLE
BEGIN
IDS_CALC_NAME "Kalkulator ReactOS"
IDS_AUTHOR "Dibuat oleh Carlo Bramini"
END
/* Types of conversion */
STRINGTABLE
BEGIN
IDS_CONV_ANGLE "Sudut"
IDS_CONV_AREA "Area"
IDS_CONV_CONSUMPTION "Konsumsi (mesin)"
IDS_CONV_CURRENCY "Mata Uang"
IDS_CONV_ENERGY "Energi"
IDS_CONV_LENGTH "Panjang"
IDS_CONV_POWER "Daya"
IDS_CONV_PRESSURE "Tekanan"
IDS_CONV_TEMPERATURE "Suhu"
IDS_CONV_TIME "Waktu"
IDS_CONV_VELOCITY "Kecepatan"
IDS_CONV_VOLUME "Volume"
IDS_CONV_WEIGHT "Berat"
END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Busur menit"
IDS_ANGLE_ARCSECONDS "Busur detik"
IDS_ANGLE_DEGREES "Derajat"
IDS_ANGLE_GRADIANS "Gradian"
IDS_ANGLE_RADIANS "Radian"
END
/* Areas */
STRINGTABLE
BEGIN
IDS_AREA_ACRES "Hektar"
IDS_AREA_ACRES_BRAZIL "Hektar (Brazil)"
IDS_AREA_ACRES_FRANCE "Hektar (Perancis)"
IDS_AREA_ACRES_SCOTS "Hektar (Skotlandia)"
IDS_AREA_ACRES_US "Hektar (US)"
IDS_AREA_ARES "Ares"
IDS_AREA_CHOU "Chou"
IDS_AREA_DANBO "Danbo"
IDS_AREA_HECTARES "Hektar"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "Morgen (Hungaria)"
IDS_AREA_MU "Mu"
IDS_AREA_PING "Ping"
IDS_AREA_PYEONG "Pyeong"
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
IDS_AREA_RAI "Rai"
IDS_AREA_SE "Se"
IDS_AREA_SQUARE_CENTIMETERS "Centimeter persegi"
IDS_AREA_SQUARE_CHR "Chr persegi"
IDS_AREA_SQUARE_FATHOMS "Fathom persegi"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Fathom persegi (Hungaria)"
IDS_AREA_SQUARE_FEET "Kaki persegi"
IDS_AREA_SQUARE_INCHES "Inci persegi"
IDS_AREA_SQUARE_KILOMETERS "Kilometer persegi"
IDS_AREA_SQUARE_LAR "Lar persegi"
IDS_AREA_SQUARE_METER "Meter persegi"
IDS_AREA_SQUARE_MILES "Mil persegi"
IDS_AREA_SQUARE_MILLIMETERS "Milimeter persegi"
IDS_AREA_SQUARE_SHAKU "Shaku persegi"
IDS_AREA_SQUARE_TSUEN "Tsuen persegi"
IDS_AREA_SQUARE_VA "Va persegi"
IDS_AREA_SQUARE_YARD "Yard persegi"
IDS_AREA_TAN "Tan"
IDS_AREA_TSUBO "Tsubo"
END
/* Consumptions */
STRINGTABLE
BEGIN
IDS_CONSUMPTION_KM_PER_L "Kilometer/liter"
IDS_CONSUMPTION_L_PER_100_KM "Liter/100 kilometer"
IDS_CONSUMPTION_MILES_GALLON_UK "Mil/galon (UK)"
IDS_CONSUMPTION_MILES_GALLON_US "Mil/galon (US)"
END
/* Currencies */
STRINGTABLE
BEGIN
IDS_CURRENCY_AUSTRIAN_SCHILLING "Schilling Austria"
IDS_CURRENCY_BELGIAN_FRANC "Franc Belgia"
IDS_CURRENCY_CYPRIOT_POUND "Pound Siprus"
IDS_CURRENCY_CZECH_KORUNA "Koruna Ceko"
IDS_CURRENCY_DEUTSCHE_MARK "Mark Jerman"
IDS_CURRENCY_DUTCH_GUILDER "Gulden Belanda"
IDS_CURRENCY_ESTONIAN_KROON "Kroon Estonia"
IDS_CURRENCY_EURO "Euro"
IDS_CURRENCY_FINNISH_MARKKA "Markka Finlandia"
IDS_CURRENCY_FRENCH_FRANC "Franc Perancis"
IDS_CURRENCY_GREEK_DRACHMA "Drakhma Yunani"
IDS_CURRENCY_IRISH_POUND "Pound Irlandia"
IDS_CURRENCY_ITALIAN_LIRA "Lira Italia"
IDS_CURRENCY_LATVIAN_LATS "Lats Latvia"
IDS_CURRENCY_LITHUANIAN_LITAS "Litas Lithuania"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc Luksemburg"
IDS_CURRENCY_MALTESE_LIRA "Lira Malta"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo Portugis"
IDS_CURRENCY_SLOVAK_KORUNA "Koruna Slovakia"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar Slovenia"
IDS_CURRENCY_SPANISH_PESETA "Peseta Spanyol"
END
/* Energies */
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C Kalori"
IDS_ENERGY_BTUS "British Thermal Unit"
IDS_ENERGY_ERGS "Erg"
IDS_ENERGY_EVS "Voltase elektron"
IDS_ENERGY_FOOT_POUNDS "Pon kaki"
IDS_ENERGY_IT_CALORIES "Tabel Kalori Internasional"
IDS_ENERGY_IT_KILOCALORIES "Tabel Kilokalori Internasional"
IDS_ENERGY_JOULES "Joule"
IDS_ENERGY_KILOJOULES "Kilojoule"
IDS_ENERGY_KILOWATT_HOURS "Kilowatt per jam"
IDS_ENERGY_NUTRITION_CALORIES "Kalori pangan"
IDS_ENERGY_TH_CALORIES "Kalori termokimia"
END
/* Lengths */
STRINGTABLE
BEGIN
IDS_LENGTH_ANGSTROMS "Ångström"
IDS_LENGTH_ASTRONOMICAL_UNITS "Satuan astronomi"
IDS_LENGTH_BARLEYCORNS "Barleycorn"
IDS_LENGTH_CENTIMETERS "Centimeter"
IDS_LENGTH_CHAINS_UK "Rantai (UK)"
IDS_LENGTH_CHI "Chi"
IDS_LENGTH_CHOU "Chou"
IDS_LENGTH_CHR "Chr"
IDS_LENGTH_CUN "Cun"
IDS_LENGTH_FATHOMS "Fathom"
IDS_LENGTH_FATHOMS_HUNGARY "Fathom (Hungaria)"
IDS_LENGTH_FEET "Kaki"
IDS_LENGTH_FURLONGS "Furlong"
IDS_LENGTH_GAN "Gan"
IDS_LENGTH_HANDS "Tangan"
IDS_LENGTH_HUNH "Hunh"
IDS_LENGTH_INCHES "Inci"
IDS_LENGTH_JA "Ja"
IDS_LENGTH_JEONG "Jeong"
IDS_LENGTH_KABIET "Kabiet"
IDS_LENGTH_KEN "Ken"
IDS_LENGTH_KEUB "Keub"
IDS_LENGTH_KILOMETERS "Kilometer"
IDS_LENGTH_LAR "Lar"
IDS_LENGTH_LIGHT_YEARS "Tahun cahaya"
IDS_LENGTH_LINKS_UK "Link (UK)"
IDS_LENGTH_METERS "Meter"
IDS_LENGTH_MICRONS "Mikron"
IDS_LENGTH_MILES "Mil"
IDS_LENGTH_MILLIMETERS "Milimeter"
IDS_LENGTH_NAUTICAL_MILES "Mil laut"
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parsec"
IDS_LENGTH_PICAS "Pica"
IDS_LENGTH_RI_JAPAN "Ri (Jepang)"
IDS_LENGTH_RI_KOREA "Ri (Korea)"
IDS_LENGTH_RODS "Rod"
IDS_LENGTH_SAWK "Sawk"
IDS_LENGTH_SEN "Sen"
IDS_LENGTH_SHAKU "Shaku"
IDS_LENGTH_SPAN "Jengkal"
IDS_LENGTH_SUN "Sun"
IDS_LENGTH_TSUEN "Tsuen"
IDS_LENGTH_VA "Va"
IDS_LENGTH_YARDS "Yard"
IDS_LENGTH_YOTE "Yote"
IDS_LENGTH_ZHANG "Zhang"
END
/* Powers */
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "British Thermal Unit per menit"
IDS_POWER_FPS_PER_MINUTE "Pon Kaki per menit"
IDS_POWER_HORSEPOWER "Tenaga kuda"
IDS_POWER_KILOWATTS "Kilowatt"
IDS_POWER_MEGAWATTS "Megawatt"
IDS_POWER_WATTS "Watt"
END
/* Pressures */
STRINGTABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "Atmosfir"
IDS_PRESSURE_BARS "Bar"
IDS_PRESSURE_HECTOPASCALS "Hektopascal"
IDS_PRESSURE_KILOPASCALS "Kilopascal"
IDS_PRESSURE_MM_OF_MERCURY "Milimeter merkuri"
IDS_PRESSURE_PASCALS "Pascal"
IDS_PRESSURE_PSI "Pon per inci persegi"
END
/* Temperatures */
STRINGTABLE
BEGIN
IDS_TEMPERATURE_CELSIUS "Celsius"
IDS_TEMPERATURE_FAHRENHEIT "Fahrenheit"
IDS_TEMPERATURE_KELVIN "Kelvin"
IDS_TEMPERATURE_RANKINE "Rankine"
END
/* Time */
STRINGTABLE
BEGIN
IDS_TIME_DAYS "Hari"
IDS_TIME_HOURS "Jam"
IDS_TIME_NANOSECONDS "Nanodetik"
IDS_TIME_MICROSECONDS "Mikrodetik"
IDS_TIME_MILLISECONDS "Milidetik"
IDS_TIME_MINUTES "Menit"
IDS_TIME_SECONDS "Detik"
IDS_TIME_WEEKS "Minggu"
IDS_TIME_YEARS "Tahun"
END
/* Velocities */
STRINGTABLE
BEGIN
IDS_VELOCITY_CMS_SECOND "Centimeter/jam"
IDS_VELOCITY_FEET_HOUR "Kaki/jam"
IDS_VELOCITY_FEET_SECOND "Kaki/detik"
IDS_VELOCITY_KILOMETERS_HOUR "Kilometer/jam"
IDS_VELOCITY_KNOTS "Knot"
IDS_VELOCITY_MACH "Mach"
IDS_VELOCITY_METERS_SECOND "Meter/detik"
IDS_VELOCITY_MILES_HOUR "Mil/jam"
END
/* Volumes */
STRINGTABLE
BEGIN
IDS_VOLUME_BARRELS_UK "Barel (UK)"
IDS_VOLUME_BARRELS_OIL "Barel minyak"
IDS_VOLUME_BUN "Bun"
IDS_VOLUME_BUSHELS_UK "Bushel (UK)"
IDS_VOLUME_BUSHELS_US "Bushel (US)"
IDS_VOLUME_CUBIC_CENTIMETERS "Centimeter kubik"
IDS_VOLUME_CUBIC_FEET "Kaki kubik"
IDS_VOLUME_CUBIC_INCHES "Inci Kubik"
IDS_VOLUME_CUBIC_METERS "Meter kubik"
IDS_VOLUME_CUBIC_YARDS "Yard kubik"
IDS_VOLUME_DOE "Doe"
IDS_VOLUME_FLUID_OUNCES_UK "Ons cairan (UK)"
IDS_VOLUME_FLUID_OUNCES_US "Ons cairan (US)"
IDS_VOLUME_GALLONS_UK "Galon (UK)"
IDS_VOLUME_GALLONS_DRY_US "Galon, beku (US)"
IDS_VOLUME_GALLONS_LIQUID_US "Galon, cair (US)"
IDS_VOLUME_GOU "Gou"
IDS_VOLUME_HOP "Hop"
IDS_VOLUME_ICCE "Icce"
IDS_VOLUME_KWIAN "Kwian"
IDS_VOLUME_LITERS "Liter"
IDS_VOLUME_MAL "Mal"
IDS_VOLUME_MILLILITERS "Mililiter"
IDS_VOLUME_PINTS_UK "Pint (UK)"
IDS_VOLUME_PINTS_DRY_US "Pint, beku (US)"
IDS_VOLUME_PINTS_LIQUID_US "Pint, cair (US)"
IDS_VOLUME_QUARTS_UK "Quart (UK)"
IDS_VOLUME_QUARTS_DRY_US "Quart, beku (US)"
IDS_VOLUME_QUARTS_LIQUID_US "Quart, cair (US)"
IDS_VOLUME_SEKI "Seki"
IDS_VOLUME_SYOU "Syou"
IDS_VOLUME_TANANLOUNG "Tananloung"
IDS_VOLUME_TANG "Tang"
IDS_VOLUME_TO "To"
END
/* Weights */
STRINGTABLE
BEGIN
IDS_WEIGHT_BAHT "Baht"
IDS_WEIGHT_CARATS "Karat"
IDS_WEIGHT_CHUNG "Chung"
IDS_WEIGHT_DON "Don"
IDS_WEIGHT_GEUN "Geun"
IDS_WEIGHT_GRAMS "Gram"
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "Jin (China)"
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwan)"
IDS_WEIGHT_KAN "Kan"
IDS_WEIGHT_KILOGRAMS "Kilogram"
IDS_WEIGHT_KIN "Kin"
IDS_WEIGHT_LIANG_CHINA "Liang (China)"
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwan)"
IDS_WEIGHT_MONME "Monme"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Ons, avoirdupois"
IDS_WEIGHT_OUNCES_TROY "Ons, troy"
IDS_WEIGHT_POUNDS "Pon"
IDS_WEIGHT_QUINTAL_METRIC "Kuintal (metrik)"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "Batu"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "Tonne"
IDS_WEIGHT_TONS_UK "Ton (UK)"
IDS_WEIGHT_TONS_US "Ton (US)"
END

View File

@@ -1,7 +1,7 @@
/*
* Translated by Caemyr - Olaf Siejka (Feb, Jun 2008)
* Use ReactOS forum PM or IRC to contact me
* http://www.reactos.org
* https://reactos.org
* IRC: irc.freenode.net #reactos-pl;
* Updated by Saibamen - Adam Stachowicz (saibamenppl@gmail.com) (Apr, 2011)
* UTF-8 conversion by Caemyr (May, 2011)

View File

@@ -1,6 +1,6 @@
/* Translation and UTF-8 Conversion by mkbu95 <mkbu95@gmail.com> (August, 2011) */
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
/* Dialogs */

View File

@@ -0,0 +1,711 @@
/* Translation and UTF-8 Conversion by Gabriel Aguiar <fgygh5804@gmail.com,fgsoftwarestudio@gmail.com> (July, 2021) */
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
/* Dialogs */
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms", IDC_BUTTON_DMS, 38, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin", IDC_BUTTON_SIN, 38, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos", IDC_BUTTON_COS, 38, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan", IDC_BUTTON_TAN, 38, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(", IDC_BUTTON_LEFTPAR, 64, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp", IDC_BUTTON_EXP, 64, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y", IDC_BUTTON_XeY, 64, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2", IDC_BUTTON_Xe2, 64, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3", IDC_BUTTON_Xe3, 64, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")", IDC_BUTTON_RIGHTPAR, 90, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln", IDC_BUTTON_LN, 90, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log", IDC_BUTTON_LOG, 90, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!", IDC_BUTTON_NF, 90, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 90, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC", IDC_BUTTON_MC, 123, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 123, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 123, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 123, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7", IDC_BUTTON_7, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 156, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A", IDC_BUTTON_A, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 182, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 182, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 182, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 182, 120, 24, 18,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B", IDC_BUTTON_B, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 208, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C", IDC_BUTTON_C, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 234, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 234, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 234, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 234, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D", IDC_BUTTON_D, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor", IDC_BUTTON_XOR, 286, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not", IDC_BUTTON_NOT, 286, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Graus", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radianos", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grados", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Apagar", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Apagar", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 36, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 62, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 62, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 62, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 62, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 88, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 114, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 114, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 114, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 114, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt", IDC_BUTTON_SQRT, 140, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%", IDC_BUTTON_PERCENT, 140, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 140, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 140, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "", IDC_TEXT_MEMORY, 8, 24, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "MC", IDC_BUTTON_MC, 5, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 5, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 5, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 5, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
PUSHBUTTON "Converter", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Categoria:", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Converter de:", IDC_STATIC, 5, 49, 56, 8
COMBOBOX IDC_COMBO_TO, 5, 87, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Converter para:", IDC_STATIC, 5, 76, 56, 8
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Apagar", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 67, 24, 18
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 86, 24, 18
CONTROL "0", IDC_BUTTON_0, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 105, 24, 18
CONTROL "8", IDC_BUTTON_8, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 48, 24, 18
CONTROL "5", IDC_BUTTON_5, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 67, 24, 18
CONTROL "2", IDC_BUTTON_2, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 86, 24, 18
CONTROL "+/-", IDC_BUTTON_SIGN, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 105, 24, 18
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 48, 24, 18
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 67, 24, 18
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 86, 24, 18
CONTROL ",", IDC_BUTTON_DOT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 105, 24, 18
CONTROL "/", IDC_BUTTON_DIV, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 48, 24, 18
CONTROL "*", IDC_BUTTON_MULT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 67, 24, 18
CONTROL "-", IDC_BUTTON_SUB, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 86, 24, 18
CONTROL "+", IDC_BUTTON_ADD, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 105, 24, 18
CONTROL "Sqrt", IDC_BUTTON_SQRT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 48, 24, 18
CONTROL "%", IDC_BUTTON_PERCENT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 67, 24, 18
CONTROL "1/x", IDC_BUTTON_RX, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 86, 24, 18
CONTROL "=", IDC_BUTTON_EQU, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 105, 24, 18
CTEXT "", IDC_TEXT_MEMORY, 152, 24, 24, 18, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "MC", IDC_BUTTON_MC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 48, 24, 18
CONTROL "MR", IDC_BUTTON_MR, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 67, 24, 18
CONTROL "MS", IDC_BUTTON_MS, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 86, 24, 18
CONTROL "M+", IDC_BUTTON_MP, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 105, 24, 18
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Caixa de estatísticas"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET", IDC_BUTTON_RET, 4, 48, 36, 16
PUSHBUTTON "LOAD", IDC_BUTTON_LOAD, 44, 48, 36, 16
PUSHBUTTON "CD", IDC_BUTTON_CD, 84, 48, 36, 16
PUSHBUTTON "CAD", IDC_BUTTON_CAD, 124, 48, 36, 16
CTEXT "n=0", IDC_TEXT_NITEMS, 4, 68, 156, 12, SS_CENTERIMAGE | SS_SUNKEN
END
/* Menus */
IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Editar"
BEGIN
MENUITEM "Copiar\tCtrl+C", IDM_EDIT_COPY
MENUITEM "Colar\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "Visualizar"
BEGIN
MENUITEM "Padrão", IDM_VIEW_STANDARD
MENUITEM "Científica", IDM_VIEW_SCIENTIFIC
MENUITEM "Conversão", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binário\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Graus\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Radianos\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Grados\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Agrupar dígitos", IDM_VIEW_GROUP, CHECKED
END
POPUP "Ajuda"
BEGIN
MENUITEM "Tópicos de ajuda", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Sobre Calculadora ReactOS", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Editar"
BEGIN
MENUITEM "Copiar\tCtrl+C", IDM_EDIT_COPY
MENUITEM "Colar\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "Visualizar"
BEGIN
MENUITEM "Padrão", IDM_VIEW_STANDARD
MENUITEM "Científica", IDM_VIEW_SCIENTIFIC
MENUITEM "Conversão", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binário\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Agrupar dígitos", IDM_VIEW_GROUP, CHECKED
END
POPUP "Ajuda"
BEGIN
MENUITEM "Tópicos de ajuda", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Sobre Calculadora ReactOS", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU
BEGIN
POPUP "Editar"
BEGIN
MENUITEM "Copiar\tCtrl+C", IDM_EDIT_COPY
MENUITEM "Colar\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "Visualizar"
BEGIN
MENUITEM "Padrão", IDM_VIEW_STANDARD
MENUITEM "Científica", IDM_VIEW_SCIENTIFIC
MENUITEM "Conversão", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Agrupar dígitos", IDM_VIEW_GROUP, CHECKED
END
POPUP "Ajuda"
BEGIN
MENUITEM "Tópicos de ajuda", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Sobre Calculadora ReactOS", IDM_HELP_ABOUT
END
END
/* String Tables */
STRINGTABLE
BEGIN
IDS_MATH_ERROR "Erro"
IDS_QUICKHELP "Ajuda rápida"
END
/* About */
STRINGTABLE
BEGIN
IDS_CALC_NAME "Calcuadora ReactOS"
IDS_AUTHOR "Escrita por Carlo Bramini"
END
/* Types of conversion */
STRINGTABLE
BEGIN
IDS_CONV_ANGLE "Ângulo"
IDS_CONV_AREA "Área"
IDS_CONV_CONSUMPTION "Consumo (veículos)"
IDS_CONV_CURRENCY "Monetária"
IDS_CONV_ENERGY "Energia"
IDS_CONV_LENGTH "Distância"
IDS_CONV_POWER "Potência"
IDS_CONV_PRESSURE "Pressão"
IDS_CONV_TEMPERATURE "Temperatura"
IDS_CONV_TIME "Tempo"
IDS_CONV_VELOCITY "Velocidade"
IDS_CONV_VOLUME "Volume"
IDS_CONV_WEIGHT "Peso"
END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Graus"
IDS_ANGLE_GRADIANS "Grados"
IDS_ANGLE_RADIANS "Radianos"
END
/* Areas */
STRINGTABLE
BEGIN
IDS_AREA_ACRES "Acres"
IDS_AREA_ACRES_BRAZIL "Acres (Brasil)"
IDS_AREA_ACRES_FRANCE "Acres (França)"
IDS_AREA_ACRES_SCOTS "Acres (Escócia)"
IDS_AREA_ACRES_US "Acres (EUA)"
IDS_AREA_ARES "Ares"
IDS_AREA_CHOU "Chou"
IDS_AREA_DANBO "Danbo"
IDS_AREA_HECTARES "Hectares"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "Morgen (Hungária)"
IDS_AREA_MU "Mu"
IDS_AREA_PING "Ping"
IDS_AREA_PYEONG "Pyeong"
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
IDS_AREA_RAI "Rai"
IDS_AREA_SE "Se"
IDS_AREA_SQUARE_CENTIMETERS "Centímetros quadrados"
IDS_AREA_SQUARE_CHR "Chr quadradas"
IDS_AREA_SQUARE_FATHOMS "Braças quadradas"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Braças quadradas (Hungária)"
IDS_AREA_SQUARE_FEET "Pés quadrados"
IDS_AREA_SQUARE_INCHES "Polegadas quadradas"
IDS_AREA_SQUARE_KILOMETERS "Quilômetros quadrados"
IDS_AREA_SQUARE_LAR "Lar quadradas"
IDS_AREA_SQUARE_METER "Metros quadrados"
IDS_AREA_SQUARE_MILES "Milhas quadradas"
IDS_AREA_SQUARE_MILLIMETERS "Milímetros quadrados"
IDS_AREA_SQUARE_SHAKU "Shaku quadradas"
IDS_AREA_SQUARE_TSUEN "Tsuen quadrados"
IDS_AREA_SQUARE_VA "Va quadrados"
IDS_AREA_SQUARE_YARD "Jardas quadradas"
IDS_AREA_TAN "Tan"
IDS_AREA_TSUBO "Tsubo"
END
/* Consumptions */
STRINGTABLE
BEGIN
IDS_CONSUMPTION_KM_PER_L "Quilômetros/litro"
IDS_CONSUMPTION_L_PER_100_KM "Litros/100 quilômetros"
IDS_CONSUMPTION_MILES_GALLON_UK "Milhas/galão (UK)"
IDS_CONSUMPTION_MILES_GALLON_US "Milhas/galão (EUA)"
END
/* Currencies */
STRINGTABLE
BEGIN
IDS_CURRENCY_AUSTRIAN_SCHILLING "Xelim austríaco"
IDS_CURRENCY_BELGIAN_FRANC "Franco belga"
IDS_CURRENCY_CYPRIOT_POUND "Libra cipriota"
IDS_CURRENCY_CZECH_KORUNA "Coroa checa"
IDS_CURRENCY_DEUTSCHE_MARK "Marco alemão"
IDS_CURRENCY_DUTCH_GUILDER "Florim neerlandês"
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
IDS_CURRENCY_EURO "Euro"
IDS_CURRENCY_FINNISH_MARKKA "Marco finlandês"
IDS_CURRENCY_FRENCH_FRANC "Franco francês"
IDS_CURRENCY_GREEK_DRACHMA "Dracma"
IDS_CURRENCY_IRISH_POUND "Libra irlandesa"
IDS_CURRENCY_ITALIAN_LIRA "Lira italiana"
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco luxemburguês"
IDS_CURRENCY_MALTESE_LIRA "Lira maltesa"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo português"
IDS_CURRENCY_SLOVAK_KORUNA "Coroa eslovaca"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar"
IDS_CURRENCY_SPANISH_PESETA "Peseta"
END
/* Energies */
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C calorias"
IDS_ENERGY_BTUS "British Thermal Unit"
IDS_ENERGY_ERGS "Ergs (Cgs)"
IDS_ENERGY_EVS "Elétron-volt"
IDS_ENERGY_FOOT_POUNDS "Foot-Pounds"
IDS_ENERGY_IT_CALORIES "Tabela Internacional de calorias"
IDS_ENERGY_IT_KILOCALORIES "Tabela Internacional de quilocalorias"
IDS_ENERGY_JOULES "Joules"
IDS_ENERGY_KILOJOULES "Quilojoules"
IDS_ENERGY_KILOWATT_HOURS "Quilowatt-hora"
IDS_ENERGY_NUTRITION_CALORIES "Calorias nutritivas"
IDS_ENERGY_TH_CALORIES "Caloria termoquímica"
END
/* Lengths */
STRINGTABLE
BEGIN
IDS_LENGTH_ANGSTROMS "Ångström"
IDS_LENGTH_ASTRONOMICAL_UNITS "Unidade astronômica"
IDS_LENGTH_BARLEYCORNS "Barleycorns"
IDS_LENGTH_CENTIMETERS "Centímetros"
IDS_LENGTH_CHAINS_UK "Correntes (UK)"
IDS_LENGTH_CHI "Chi"
IDS_LENGTH_CHOU "Chou"
IDS_LENGTH_CHR "Chr"
IDS_LENGTH_CUN "Cun"
IDS_LENGTH_FATHOMS "Braças"
IDS_LENGTH_FATHOMS_HUNGARY "Braças (Hungária)"
IDS_LENGTH_FEET "Pés"
IDS_LENGTH_FURLONGS "Furlongs"
IDS_LENGTH_GAN "Gan"
IDS_LENGTH_HANDS "Mãos"
IDS_LENGTH_HUNH "Hunh"
IDS_LENGTH_INCHES "Polegadas"
IDS_LENGTH_JA "Ja"
IDS_LENGTH_JEONG "Jeong"
IDS_LENGTH_KABIET "Kabiet"
IDS_LENGTH_KEN "Ken"
IDS_LENGTH_KEUB "Keub"
IDS_LENGTH_KILOMETERS "Quilômetors"
IDS_LENGTH_LAR "Lar"
IDS_LENGTH_LIGHT_YEARS "Anos-luz"
IDS_LENGTH_LINKS_UK "Links (UK)"
IDS_LENGTH_METERS "Metros"
IDS_LENGTH_MICRONS "Micrômetro"
IDS_LENGTH_MILES "Milhas"
IDS_LENGTH_MILLIMETERS "Milímetros"
IDS_LENGTH_NAUTICAL_MILES "Milhas náuticas"
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parsecs"
IDS_LENGTH_PICAS "Paicas"
IDS_LENGTH_RI_JAPAN "Ri (Japão)"
IDS_LENGTH_RI_KOREA "Ri (Coreia)"
IDS_LENGTH_RODS "Varas"
IDS_LENGTH_SAWK "Sawk"
IDS_LENGTH_SEN "Sen"
IDS_LENGTH_SHAKU "Shaku"
IDS_LENGTH_SPAN "Span"
IDS_LENGTH_SUN "Sun"
IDS_LENGTH_TSUEN "Tsuen"
IDS_LENGTH_VA "Va"
IDS_LENGTH_YARDS "Jardas"
IDS_LENGTH_YOTE "Yote"
IDS_LENGTH_ZHANG "Zhang"
END
/* Powers */
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "British Thermal Units por minuto"
IDS_POWER_FPS_PER_MINUTE "Foot-Pounds por minuto"
IDS_POWER_HORSEPOWER "Cavalos de potência"
IDS_POWER_KILOWATTS "Quilowatts"
IDS_POWER_MEGAWATTS "Megawatts"
IDS_POWER_WATTS "Watts"
END
/* Pressures */
STRINGTABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "Atmosferas"
IDS_PRESSURE_BARS "Bars"
IDS_PRESSURE_HECTOPASCALS "Hectopascais"
IDS_PRESSURE_KILOPASCALS "Quilopascais"
IDS_PRESSURE_MM_OF_MERCURY "Milímetros de mercúrio"
IDS_PRESSURE_PASCALS "Pascais"
IDS_PRESSURE_PSI "Pounds-force per square inch (PSI)"
END
/* Temperatures */
STRINGTABLE
BEGIN
IDS_TEMPERATURE_CELSIUS "Celsius"
IDS_TEMPERATURE_FAHRENHEIT "Fahrenheit"
IDS_TEMPERATURE_KELVIN "Kelvin"
IDS_TEMPERATURE_RANKINE "Rankine"
END
/* Time */
STRINGTABLE
BEGIN
IDS_TIME_DAYS "Dias"
IDS_TIME_HOURS "Horas"
IDS_TIME_NANOSECONDS "Nanosegundos"
IDS_TIME_MICROSECONDS "Microsegundos"
IDS_TIME_MILLISECONDS "Milisegundos"
IDS_TIME_MINUTES "Minutos"
IDS_TIME_SECONDS "Segundos"
IDS_TIME_WEEKS "Semanas"
IDS_TIME_YEARS "Anos"
END
/* Velocities */
STRINGTABLE
BEGIN
IDS_VELOCITY_CMS_SECOND "Centímetros/hora"
IDS_VELOCITY_FEET_HOUR "Pés/hora"
IDS_VELOCITY_FEET_SECOND "Pés/segundo"
IDS_VELOCITY_KILOMETERS_HOUR "Quilômetros/hora"
IDS_VELOCITY_KNOTS "Nós"
IDS_VELOCITY_MACH "Mach"
IDS_VELOCITY_METERS_SECOND "Metros/segundo"
IDS_VELOCITY_MILES_HOUR "Milhas/hora"
END
/* Volumes */
STRINGTABLE
BEGIN
IDS_VOLUME_BARRELS_UK "Barris (UK)"
IDS_VOLUME_BARRELS_OIL "Barris de petróleo"
IDS_VOLUME_BUN "Bun"
IDS_VOLUME_BUSHELS_UK "Celemim (UK)"
IDS_VOLUME_BUSHELS_US "Celemim (EUA)"
IDS_VOLUME_CUBIC_CENTIMETERS "Centímetros cúbicos"
IDS_VOLUME_CUBIC_FEET "Pés cúbicos"
IDS_VOLUME_CUBIC_INCHES "Polegadas cúbicas"
IDS_VOLUME_CUBIC_METERS "Metros cúbicos"
IDS_VOLUME_CUBIC_YARDS "Jardas cúbicas"
IDS_VOLUME_DOE "Doe"
IDS_VOLUME_FLUID_OUNCES_UK "Onças líquidas (UK)"
IDS_VOLUME_FLUID_OUNCES_US "Onças líquidas (EUA)"
IDS_VOLUME_GALLONS_UK "Galões (EUA)"
IDS_VOLUME_GALLONS_DRY_US "Galões secos (EUA)"
IDS_VOLUME_GALLONS_LIQUID_US "Galões líquidos (EUA)"
IDS_VOLUME_GOU "Gou"
IDS_VOLUME_HOP "Hop"
IDS_VOLUME_ICCE "Icce"
IDS_VOLUME_KWIAN "Kwian"
IDS_VOLUME_LITERS "Litros"
IDS_VOLUME_MAL "Mal"
IDS_VOLUME_MILLILITERS "Milímetros"
IDS_VOLUME_PINTS_UK "Pintos (UK)"
IDS_VOLUME_PINTS_DRY_US "Pintos secos (EUA)"
IDS_VOLUME_PINTS_LIQUID_US "Pints líquidos (EUA)"
IDS_VOLUME_QUARTS_UK "Quartos (UK)"
IDS_VOLUME_QUARTS_DRY_US "Quartos secos (EUA)"
IDS_VOLUME_QUARTS_LIQUID_US "Quartos líquidos (EUA)"
IDS_VOLUME_SEKI "Seki"
IDS_VOLUME_SYOU "Syou"
IDS_VOLUME_TANANLOUNG "Tananloung"
IDS_VOLUME_TANG "Tang"
IDS_VOLUME_TO "To"
END
/* Weights */
STRINGTABLE
BEGIN
IDS_WEIGHT_BAHT "Baht"
IDS_WEIGHT_CARATS "Quilate"
IDS_WEIGHT_CHUNG "Chung"
IDS_WEIGHT_DON "Don"
IDS_WEIGHT_GEUN "Geun"
IDS_WEIGHT_GRAMS "Gramas"
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "Jin (China)"
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwan)"
IDS_WEIGHT_KAN "Kan"
IDS_WEIGHT_KILOGRAMS "Quilogramas"
IDS_WEIGHT_KIN "Kin"
IDS_WEIGHT_LIANG_CHINA "Liang (China)"
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwan)"
IDS_WEIGHT_MONME "Monme"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Onças avoirdupois"
IDS_WEIGHT_OUNCES_TROY "Onças troy"
IDS_WEIGHT_POUNDS "Libras"
IDS_WEIGHT_QUINTAL_METRIC "Quintal (métrico)"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "Pedras"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "Toneladas"
IDS_WEIGHT_TONS_UK "Toneladas (UK)"
IDS_WEIGHT_TONS_US "Toneladas (EUA)"
END

View File

@@ -1,6 +1,10 @@
/*
* Translators: Petru Dimitriu (petrimetri at gmail dot com)
* Ștefan Fulea (stefan dot fulea at mail dot com)
* PROJECT: ReactOS Calc
* LICENSE: LGPL-2.0-or-later (https://spdx.org/licenses/LGPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2009 Petru Dimitriu <petrimetri@gmail.com>
* Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2022 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -501,7 +505,7 @@ BEGIN
IDS_CURRENCY_ESTONIAN_KROON "Coroană estoniană"
IDS_CURRENCY_EURO "Euro"
IDS_CURRENCY_FINNISH_MARKKA "Marcă finlandeză"
IDS_CURRENCY_FRENCH_FRANC "Franc framcez"
IDS_CURRENCY_FRENCH_FRANC "Franc francez"
IDS_CURRENCY_GREEK_DRACHMA "Drahmă grecească"
IDS_CURRENCY_IRISH_POUND "Liră irlandeză"
IDS_CURRENCY_ITALIAN_LIRA "Liră italiană"

View File

@@ -1,4 +1,7 @@
/* TRANSLATOR: 2013-2014, 2016, 2019 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
/* TRANSLATOR:
2013-2014, 2016, 2019 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net),
2021 Süleyman Poyraz (zaryob [dot] dev [at] gmail [dot] com)
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@@ -16,11 +19,11 @@ BEGIN
CONTROL "Sekizlik", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "İkilik", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Ters", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "ırı", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "İst", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ort", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
@@ -30,9 +33,9 @@ BEGIN
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ekle", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BG", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "DDS", IDC_BUTTON_DMS, 38, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "dms", IDC_BUTTON_DMS, 38, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin", IDC_BUTTON_SIN, 38, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -60,13 +63,13 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 90, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BS", IDC_BUTTON_MC, 123, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "MC", IDC_BUTTON_MC, 123, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BG", IDC_BUTTON_MR, 123, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "MR", IDC_BUTTON_MR, 123, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BK", IDC_BUTTON_MS, 123, 100, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "MS", IDC_BUTTON_MS, 123, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BE", IDC_BUTTON_MP, 123, 120, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "M+", IDC_BUTTON_MP, 123, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -112,39 +115,39 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Veya", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Or", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sola", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
PUSHBUTTON "Lsh", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ve", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ya da", IDC_BUTTON_XOR, 286, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Xor", IDC_BUTTON_XOR, 286, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Değil", IDC_BUTTON_NOT, 286, 100, 24, 18, BS_CENTER |
PUSHBUTTON "Not", IDC_BUTTON_NOT, 286, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Tam", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Dörtlü Sözcük", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "İkili Sözcük", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Sözcük", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Bayt", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Derece", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radyan", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradyan", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "Baştan", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
CONTROL "Radian", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradian", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sil", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Geri", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -158,9 +161,9 @@ CAPTION "ReactOS Hesap Makinesi"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
PUSHBUTTON "Baştan", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sil", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Geri", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -197,7 +200,7 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 114, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Karekök", IDC_BUTTON_SQRT, 140, 45, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Sqrt", IDC_BUTTON_SQRT, 140, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%", IDC_BUTTON_PERCENT, 140, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -206,13 +209,13 @@ BEGIN
PUSHBUTTON "=", IDC_BUTTON_EQU, 140, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "", IDC_TEXT_MEMORY, 8, 24, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "BS", IDC_BUTTON_MC, 5, 45, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "MC", IDC_BUTTON_MC, 5, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BG", IDC_BUTTON_MR, 5, 65, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "MR", IDC_BUTTON_MR, 5, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BK", IDC_BUTTON_MS, 5, 85, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "MS", IDC_BUTTON_MS, 5, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "BE", IDC_BUTTON_MP, 5, 105, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "M+", IDC_BUTTON_MP, 5, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
@@ -229,13 +232,13 @@ BEGIN
LTEXT "Kategori:", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Şundan Dönüştür:", IDC_STATIC, 5, 49, 56, 8
LTEXT "Şundan dönüştür:", IDC_STATIC, 5, 49, 56, 8
COMBOBOX IDC_COMBO_TO, 5, 87, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Şuna Dönüştür:", IDC_STATIC, 5, 76, 56, 8
CONTROL "Baştan", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "Sil", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Geri", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
@@ -272,7 +275,7 @@ BEGIN
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 86, 24, 18
CONTROL "+", IDC_BUTTON_ADD, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 105, 24, 18
CONTROL "Karekök", IDC_BUTTON_SQRT, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "Sqrt", IDC_BUTTON_SQRT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 48, 24, 18
CONTROL "%", IDC_BUTTON_PERCENT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 67, 24, 18
@@ -281,13 +284,13 @@ BEGIN
CONTROL "=", IDC_BUTTON_EQU, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 105, 24, 18
CTEXT "", IDC_TEXT_MEMORY, 152, 24, 24, 18, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "BS", IDC_BUTTON_MC, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "MC", IDC_BUTTON_MC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 48, 24, 18
CONTROL "BG", IDC_BUTTON_MR, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "MR", IDC_BUTTON_MR, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 67, 24, 18
CONTROL "BK", IDC_BUTTON_MS, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "MS", IDC_BUTTON_MS, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 86, 24, 18
CONTROL "BE", IDC_BUTTON_MP, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "M+", IDC_BUTTON_MP, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 105, 24, 18
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
@@ -298,10 +301,10 @@ CAPTION "İstatistik Kutusu"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "&Geri Dön", IDC_BUTTON_RET, 4, 48, 36, 16
PUSHBUTTON "&Yükle", IDC_BUTTON_LOAD, 44, 48, 36, 16
PUSHBUTTON "&Sil", IDC_BUTTON_CD, 84, 48, 36, 16
PUSHBUTTON "&Tümünü Sil", IDC_BUTTON_CAD, 124, 48, 36, 16
PUSHBUTTON "RET", IDC_BUTTON_RET, 4, 48, 36, 16
PUSHBUTTON "LOAD", IDC_BUTTON_LOAD, 44, 48, 36, 16
PUSHBUTTON "CD", IDC_BUTTON_CD, 84, 48, 36, 16
PUSHBUTTON "CAD", IDC_BUTTON_CAD, 124, 48, 36, 16
CTEXT "n=0", IDC_TEXT_NITEMS, 4, 68, 156, 12, SS_CENTERIMAGE | SS_SUNKEN
END
@@ -586,7 +589,7 @@ STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "Dakikadaki İngiliz Isı Birimi"
IDS_POWER_FPS_PER_MINUTE "Dakikadaki ayak pond kuvveti"
IDS_POWER_HORSEPOWER "At gücü"
IDS_POWER_HORSEPOWER "Beygir gücü"
IDS_POWER_KILOWATTS "Kilovat"
IDS_POWER_MEGAWATTS "Megavat"
IDS_POWER_WATTS "Vat"

View File

@@ -1,4 +1,10 @@
/* Simplified Chinese translation for calc. By Song Fuchang (0xfc) <sfc_0@yahoo.com.cn> */
/*
* PROJECT: ReactOS Calc
* LICENSE: LGPL-2.0-or-later (https://spdx.org/licenses/LGPL-2.0-or-later)
* PURPOSE: Chinese (Simplified) resource file
* TRANSLATORS: Copyright 2011 Song Fuchang (0xfc) <sfc_0@yahoo.com.cn>
* Copyright 2021 Wu Haotian <rigoligo03@gmail.com>
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
@@ -226,13 +232,13 @@ BEGIN
PUSHBUTTON "转换", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "类别:", IDC_STATIC, 5, 20, 56, 8
LTEXT "类别", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "从...转换:", IDC_STATIC, 5, 49, 56, 8
LTEXT "从...转换", IDC_STATIC, 5, 49, 56, 8
COMBOBOX IDC_COMBO_TO, 5, 87, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "转换为:", IDC_STATIC, 5, 76, 56, 8
LTEXT "转换为", IDC_STATIC, 5, 76, 56, 8
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
@@ -415,7 +421,7 @@ STRINGTABLE
BEGIN
IDS_CONV_ANGLE "角"
IDS_CONV_AREA "面积"
IDS_CONV_CONSUMPTION "油耗 (引擎)"
IDS_CONV_CONSUMPTION "油耗引擎"
IDS_CONV_CURRENCY "货币"
IDS_CONV_ENERGY "能量"
IDS_CONV_LENGTH "长度"
@@ -431,8 +437,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_ARCMINUTES ""
IDS_ANGLE_ARCSECONDS ""
IDS_ANGLE_DEGREES "角度"
IDS_ANGLE_GRADIANS "梯度"
IDS_ANGLE_RADIANS "弧度"
@@ -442,26 +448,26 @@ END
STRINGTABLE
BEGIN
IDS_AREA_ACRES "英亩"
IDS_AREA_ACRES_BRAZIL "英亩 (巴西)"
IDS_AREA_ACRES_FRANCE "英亩 (法国)"
IDS_AREA_ACRES_SCOTS "英亩 (苏格兰)"
IDS_AREA_ACRES_US "英亩 (美国)"
IDS_AREA_ACRES_BRAZIL "英亩巴西"
IDS_AREA_ACRES_FRANCE "英亩法国"
IDS_AREA_ACRES_SCOTS "英亩苏格兰"
IDS_AREA_ACRES_US "英亩美国"
IDS_AREA_ARES "公亩"
IDS_AREA_CHOU "畴"
IDS_AREA_DANBO "大亩"
IDS_AREA_HECTARES "公顷"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "摩根 (匈牙利)"
IDS_AREA_MORGEN_HUNGARY "摩根匈牙利"
IDS_AREA_MU "亩"
IDS_AREA_PING "坪"
IDS_AREA_PYEONG "坪 (韩国)"
IDS_AREA_PYEONG "坪韩国"
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
IDS_AREA_RAI "莱"
IDS_AREA_SE "亩 (日本)"
IDS_AREA_SE "亩日本"
IDS_AREA_SQUARE_CENTIMETERS "平方厘米"
IDS_AREA_SQUARE_CHR "Square chr"
IDS_AREA_SQUARE_FATHOMS "平方英寻"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "平方英寻 (匈牙利)"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "平方英寻匈牙利"
IDS_AREA_SQUARE_FEET "平方英尺"
IDS_AREA_SQUARE_INCHES "平方英寸"
IDS_AREA_SQUARE_KILOMETERS "平方千米"
@@ -474,7 +480,7 @@ BEGIN
IDS_AREA_SQUARE_VA "Square va"
IDS_AREA_SQUARE_YARD "平方码"
IDS_AREA_TAN "段"
IDS_AREA_TSUBO "坪 (日本)"
IDS_AREA_TSUBO "坪日本"
END
/* Consumptions */
@@ -482,8 +488,8 @@ STRINGTABLE
BEGIN
IDS_CONSUMPTION_KM_PER_L "千米/升"
IDS_CONSUMPTION_L_PER_100_KM "升/100 千米"
IDS_CONSUMPTION_MILES_GALLON_UK "英里/加仑 (英国)"
IDS_CONSUMPTION_MILES_GALLON_US "英里/加仑 (美国)"
IDS_CONSUMPTION_MILES_GALLON_UK "英里/加仑英国"
IDS_CONSUMPTION_MILES_GALLON_US "英里/加仑美国"
END
/* Currencies */
@@ -536,20 +542,20 @@ BEGIN
IDS_LENGTH_ASTRONOMICAL_UNITS "天文单位"
IDS_LENGTH_BARLEYCORNS "巴利肯"
IDS_LENGTH_CENTIMETERS "厘米"
IDS_LENGTH_CHAINS_UK "链 (英国)"
IDS_LENGTH_CHAINS_UK "链英国"
IDS_LENGTH_CHI "尺"
IDS_LENGTH_CHOU "畴"
IDS_LENGTH_CHR "Chr"
IDS_LENGTH_CUN "寸"
IDS_LENGTH_FATHOMS "英寻"
IDS_LENGTH_FATHOMS_HUNGARY "英寻 (匈牙利)"
IDS_LENGTH_FATHOMS_HUNGARY "英寻匈牙利"
IDS_LENGTH_FEET "英尺"
IDS_LENGTH_FURLONGS "浪"
IDS_LENGTH_GAN "杆"
IDS_LENGTH_HANDS "掌宽"
IDS_LENGTH_HUNH "Hunh"
IDS_LENGTH_INCHES "英尺"
IDS_LENGTH_JA "尺 (韩国)"
IDS_LENGTH_JA "尺韩国"
IDS_LENGTH_JEONG "Jeong"
IDS_LENGTH_KABIET "Kabiet"
IDS_LENGTH_KEN "Ken"
@@ -566,14 +572,14 @@ BEGIN
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parsecs"
IDS_LENGTH_PICAS "Picas"
IDS_LENGTH_RI_JAPAN "里 (日本)"
IDS_LENGTH_RI_KOREA "里 (韩国)"
IDS_LENGTH_RI_JAPAN "里日本"
IDS_LENGTH_RI_KOREA "里韩国"
IDS_LENGTH_RODS "杆"
IDS_LENGTH_SAWK "Sawk"
IDS_LENGTH_SEN "Sen"
IDS_LENGTH_SHAKU "尺 (日本)"
IDS_LENGTH_SHAKU "尺日本"
IDS_LENGTH_SPAN "Span"
IDS_LENGTH_SUN "寸 (日本)"
IDS_LENGTH_SUN "寸日本"
IDS_LENGTH_TSUEN "寸"
IDS_LENGTH_VA "Va"
IDS_LENGTH_YARDS "码"
@@ -643,22 +649,22 @@ END
/* Volumes */
STRINGTABLE
BEGIN
IDS_VOLUME_BARRELS_UK "桶 (英国)"
IDS_VOLUME_BARRELS_UK "桶英国"
IDS_VOLUME_BARRELS_OIL "桶油"
IDS_VOLUME_BUN "Bun"
IDS_VOLUME_BUSHELS_UK "蒲式耳 (英国)"
IDS_VOLUME_BUSHELS_US "蒲式耳 (美国)"
IDS_VOLUME_BUSHELS_UK "蒲式耳英国"
IDS_VOLUME_BUSHELS_US "蒲式耳美国"
IDS_VOLUME_CUBIC_CENTIMETERS "立方厘米"
IDS_VOLUME_CUBIC_FEET "立方英尺"
IDS_VOLUME_CUBIC_INCHES "立方英寸"
IDS_VOLUME_CUBIC_METERS "立方米"
IDS_VOLUME_CUBIC_YARDS "立方码"
IDS_VOLUME_DOE "Doe"
IDS_VOLUME_FLUID_OUNCES_UK "液盎司 (英国)"
IDS_VOLUME_FLUID_OUNCES_US "液盎司 (美国)"
IDS_VOLUME_GALLONS_UK "加仑 (英国)"
IDS_VOLUME_GALLONS_DRY_US "干量加仑 (美国)"
IDS_VOLUME_GALLONS_LIQUID_US "液加仑 (美国)"
IDS_VOLUME_FLUID_OUNCES_UK "液盎司英国"
IDS_VOLUME_FLUID_OUNCES_US "液盎司美国"
IDS_VOLUME_GALLONS_UK "加仑英国"
IDS_VOLUME_GALLONS_DRY_US "干量加仑美国"
IDS_VOLUME_GALLONS_LIQUID_US "液加仑美国"
IDS_VOLUME_GOU "合"
IDS_VOLUME_HOP "Hop"
IDS_VOLUME_ICCE "Icce"
@@ -666,17 +672,17 @@ BEGIN
IDS_VOLUME_LITERS "升"
IDS_VOLUME_MAL "Mal"
IDS_VOLUME_MILLILITERS "毫升"
IDS_VOLUME_PINTS_UK "品脱 (英国)"
IDS_VOLUME_PINTS_DRY_US "干量品脱 (美国)"
IDS_VOLUME_PINTS_LIQUID_US "液品脱 (美国)"
IDS_VOLUME_QUARTS_UK "夸脱 (英国)"
IDS_VOLUME_QUARTS_DRY_US "干量夸脱 (美国)"
IDS_VOLUME_QUARTS_LIQUID_US "液夸脱 (美国)"
IDS_VOLUME_PINTS_UK "品脱英国"
IDS_VOLUME_PINTS_DRY_US "干量品脱美国"
IDS_VOLUME_PINTS_LIQUID_US "液品脱美国"
IDS_VOLUME_QUARTS_UK "夸脱英国"
IDS_VOLUME_QUARTS_DRY_US "干量夸脱美国"
IDS_VOLUME_QUARTS_LIQUID_US "液夸脱美国"
IDS_VOLUME_SEKI "Seki"
IDS_VOLUME_SYOU "Syou"
IDS_VOLUME_TANANLOUNG "Tananloung"
IDS_VOLUME_TANG "Tang"
IDS_VOLUME_TO "斗 (日本)"
IDS_VOLUME_TO "斗日本"
END
/* Weights */
@@ -690,14 +696,14 @@ BEGIN
IDS_WEIGHT_GRAMS "克"
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "斤 (中国)"
IDS_WEIGHT_JIN_TAIWAN "斤 (中国台湾)"
IDS_WEIGHT_KAN "贯 (日本)"
IDS_WEIGHT_JIN_CHINA "斤中国"
IDS_WEIGHT_JIN_TAIWAN "斤中国台湾"
IDS_WEIGHT_KAN "贯日本"
IDS_WEIGHT_KILOGRAMS "千克"
IDS_WEIGHT_KIN "斤 (日本)"
IDS_WEIGHT_LIANG_CHINA "两 (中国)"
IDS_WEIGHT_LIANG_TAIWAN "两 (中国台湾)"
IDS_WEIGHT_MONME "两 (日本)"
IDS_WEIGHT_KIN "斤日本"
IDS_WEIGHT_LIANG_CHINA "两中国"
IDS_WEIGHT_LIANG_TAIWAN "两中国台湾"
IDS_WEIGHT_MONME "两日本"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "常衡盎司"
IDS_WEIGHT_OUNCES_TROY "金衡盎司"
IDS_WEIGHT_POUNDS "英磅"
@@ -706,6 +712,6 @@ BEGIN
IDS_WEIGHT_STONES "石"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "吨"
IDS_WEIGHT_TONS_UK "吨 (英国)"
IDS_WEIGHT_TONS_US "吨 (美国)"
IDS_WEIGHT_TONS_UK "吨英国"
IDS_WEIGHT_TONS_US "吨美国"
END

View File

@@ -0,0 +1,717 @@
/*
* PROJECT: ReactOS Calc
* LICENSE: LGPL-2.0-or-later (https://spdx.org/licenses/LGPL-2.0-or-later)
* PURPOSE: Chinese (Hong Kong) resource file
* TRANSLATORS: Copyright 2021 Chan Chilung <eason066@gmail.com>
* REFERENCES: Chinese (Simplified) resource file
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
/* Dialogs */
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計數機"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms", IDC_BUTTON_DMS, 38, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin", IDC_BUTTON_SIN, 38, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos", IDC_BUTTON_COS, 38, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan", IDC_BUTTON_TAN, 38, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(", IDC_BUTTON_LEFTPAR, 64, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp", IDC_BUTTON_EXP, 64, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y", IDC_BUTTON_XeY, 64, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2", IDC_BUTTON_Xe2, 64, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3", IDC_BUTTON_Xe3, 64, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")", IDC_BUTTON_RIGHTPAR, 90, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln", IDC_BUTTON_LN, 90, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log", IDC_BUTTON_LOG, 90, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!", IDC_BUTTON_NF, 90, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 90, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC", IDC_BUTTON_MC, 123, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 123, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 123, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 123, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7", IDC_BUTTON_7, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 156, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A", IDC_BUTTON_A, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 182, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 182, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 182, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 182, 120, 24, 18,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B", IDC_BUTTON_B, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 208, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C", IDC_BUTTON_C, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 234, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 234, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 234, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 234, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D", IDC_BUTTON_D, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor", IDC_BUTTON_XOR, 286, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not", IDC_BUTTON_NOT, 286, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "位元組", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "角度", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "弧度", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "梯度", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計數機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 36, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 62, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 62, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 62, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 62, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 88, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 114, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 114, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 114, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 114, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt", IDC_BUTTON_SQRT, 140, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%", IDC_BUTTON_PERCENT, 140, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 140, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 140, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "", IDC_TEXT_MEMORY, 8, 24, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "MC", IDC_BUTTON_MC, 5, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 5, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 5, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 5, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計數機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體"
BEGIN
PUSHBUTTON "轉換", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "類別:", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "從...轉換:", IDC_STATIC, 5, 49, 56, 8
COMBOBOX IDC_COMBO_TO, 5, 87, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "轉換為:", IDC_STATIC, 5, 76, 56, 8
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Back", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 67, 24, 18
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 86, 24, 18
CONTROL "0", IDC_BUTTON_0, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 105, 24, 18
CONTROL "8", IDC_BUTTON_8, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 48, 24, 18
CONTROL "5", IDC_BUTTON_5, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 67, 24, 18
CONTROL "2", IDC_BUTTON_2, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 86, 24, 18
CONTROL "+/-", IDC_BUTTON_SIGN, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 105, 24, 18
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 48, 24, 18
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 67, 24, 18
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 86, 24, 18
CONTROL ",", IDC_BUTTON_DOT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 105, 24, 18
CONTROL "/", IDC_BUTTON_DIV, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 48, 24, 18
CONTROL "*", IDC_BUTTON_MULT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 67, 24, 18
CONTROL "-", IDC_BUTTON_SUB, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 86, 24, 18
CONTROL "+", IDC_BUTTON_ADD, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 105, 24, 18
CONTROL "Sqrt", IDC_BUTTON_SQRT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 48, 24, 18
CONTROL "%", IDC_BUTTON_PERCENT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 67, 24, 18
CONTROL "1/x", IDC_BUTTON_RX, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 86, 24, 18
CONTROL "=", IDC_BUTTON_EQU, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 105, 24, 18
CTEXT "", IDC_TEXT_MEMORY, 152, 24, 24, 18, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "MC", IDC_BUTTON_MC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 48, 24, 18
CONTROL "MR", IDC_BUTTON_MR, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 67, 24, 18
CONTROL "MS", IDC_BUTTON_MS, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 86, 24, 18
CONTROL "M+", IDC_BUTTON_MP, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 105, 24, 18
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "統計框"
FONT 9, "新細明體"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "返回", IDC_BUTTON_RET, 4, 48, 36, 16
PUSHBUTTON "載入", IDC_BUTTON_LOAD, 44, 48, 36, 16
PUSHBUTTON "清除", IDC_BUTTON_CD, 84, 48, 36, 16
PUSHBUTTON "全清", IDC_BUTTON_CAD, 124, 48, 36, 16
CTEXT "n=0", IDC_TEXT_NITEMS, 4, 68, 156, 12, SS_CENTERIMAGE | SS_SUNKEN
END
/* Menus */
IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "編輯"
BEGIN
MENUITEM "複製\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼上\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "查看"
BEGIN
MENUITEM "標準型", IDM_VIEW_STANDARD
MENUITEM "工程型", IDM_VIEW_SCIENTIFIC
MENUITEM "轉換", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "十六進制\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "十進制\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "八進制\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "二進制\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "角度\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "弧度\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "梯度\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "數字分組", IDM_VIEW_GROUP, CHECKED
END
POPUP "說明"
BEGIN
MENUITEM "說明主題", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "關於 ReactOS 計數機", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "編輯"
BEGIN
MENUITEM "複製\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼上\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "查看"
BEGIN
MENUITEM "標準型", IDM_VIEW_STANDARD
MENUITEM "工程型", IDM_VIEW_SCIENTIFIC
MENUITEM "轉換", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "十六進制\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "十進制\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "八進制\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "二進制\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "位元組\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "數字分組", IDM_VIEW_GROUP, CHECKED
END
POPUP "說明"
BEGIN
MENUITEM "說明主題", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "關於 ReactOS 計數機", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU
BEGIN
POPUP "編輯"
BEGIN
MENUITEM "複製\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼上\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "查看"
BEGIN
MENUITEM "標準型", IDM_VIEW_STANDARD
MENUITEM "工程型", IDM_VIEW_SCIENTIFIC
MENUITEM "轉換", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "數字分組", IDM_VIEW_GROUP, CHECKED
END
POPUP "說明"
BEGIN
MENUITEM "說明主題", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "關於 ReactOS 計數機", IDM_HELP_ABOUT
END
END
/* String Tables */
STRINGTABLE
BEGIN
IDS_MATH_ERROR "錯誤"
IDS_QUICKHELP "快速說明"
END
/* About */
STRINGTABLE
BEGIN
IDS_CALC_NAME "ReactOS 計數機"
IDS_AUTHOR "作者 Carlo Bramini"
END
/* Types of conversion */
STRINGTABLE
BEGIN
IDS_CONV_ANGLE "角度"
IDS_CONV_AREA "面積"
IDS_CONV_CONSUMPTION "油耗(引擎)"
IDS_CONV_CURRENCY "貨幣"
IDS_CONV_ENERGY "能量"
IDS_CONV_LENGTH "長度"
IDS_CONV_POWER "功率"
IDS_CONV_PRESSURE "壓力"
IDS_CONV_TEMPERATURE "溫度"
IDS_CONV_TIME "時間"
IDS_CONV_VELOCITY "速度"
IDS_CONV_VOLUME "體積"
IDS_CONV_WEIGHT "質量"
END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "角分"
IDS_ANGLE_ARCSECONDS "角秒"
IDS_ANGLE_DEGREES "角度"
IDS_ANGLE_GRADIANS "梯度"
IDS_ANGLE_RADIANS "弧度"
END
/* Areas */
STRINGTABLE
BEGIN
IDS_AREA_ACRES "英畝"
IDS_AREA_ACRES_BRAZIL "英畝(巴西)"
IDS_AREA_ACRES_FRANCE "英畝(法國)"
IDS_AREA_ACRES_SCOTS "英畝(蘇格蘭)"
IDS_AREA_ACRES_US "英畝(美國)"
IDS_AREA_ARES "公畝"
IDS_AREA_CHOU "疇"
IDS_AREA_DANBO "大畝"
IDS_AREA_HECTARES "公頃"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "摩根(匈牙利)"
IDS_AREA_MU "畝"
IDS_AREA_PING "坪"
IDS_AREA_PYEONG "坪(韓國)"
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
IDS_AREA_RAI "萊"
IDS_AREA_SE "畝(日本)"
IDS_AREA_SQUARE_CENTIMETERS "平方厘米"
IDS_AREA_SQUARE_CHR "Square chr"
IDS_AREA_SQUARE_FATHOMS "平方英尋"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "平方英尋(匈牙利)"
IDS_AREA_SQUARE_FEET "平方英尺"
IDS_AREA_SQUARE_INCHES "平方英寸"
IDS_AREA_SQUARE_KILOMETERS "平方公里"
IDS_AREA_SQUARE_LAR "平方拉爾"
IDS_AREA_SQUARE_METER "平方米"
IDS_AREA_SQUARE_MILES "平方英里"
IDS_AREA_SQUARE_MILLIMETERS "平方毫米"
IDS_AREA_SQUARE_SHAKU "平方尺"
IDS_AREA_SQUARE_TSUEN "平方寸"
IDS_AREA_SQUARE_VA "Square va"
IDS_AREA_SQUARE_YARD "平方碼"
IDS_AREA_TAN "段"
IDS_AREA_TSUBO "坪(日本)"
END
/* Consumptions */
STRINGTABLE
BEGIN
IDS_CONSUMPTION_KM_PER_L "公里/升"
IDS_CONSUMPTION_L_PER_100_KM "升100 公里"
IDS_CONSUMPTION_MILES_GALLON_UK "英里/加侖(英國)"
IDS_CONSUMPTION_MILES_GALLON_US "英里/加侖(美國)"
END
/* Currencies */
STRINGTABLE
BEGIN
IDS_CURRENCY_AUSTRIAN_SCHILLING "奥地利先令"
IDS_CURRENCY_BELGIAN_FRANC "比利時法郎"
IDS_CURRENCY_CYPRIOT_POUND "賽普勒斯鎊"
IDS_CURRENCY_CZECH_KORUNA "捷克克朗"
IDS_CURRENCY_DEUTSCHE_MARK "德國馬克"
IDS_CURRENCY_DUTCH_GUILDER "荷蘭盾"
IDS_CURRENCY_ESTONIAN_KROON "愛沙尼亞克朗"
IDS_CURRENCY_EURO "歐元"
IDS_CURRENCY_FINNISH_MARKKA "芬蘭馬克"
IDS_CURRENCY_FRENCH_FRANC "法郎"
IDS_CURRENCY_GREEK_DRACHMA "希臘德拉克馬"
IDS_CURRENCY_IRISH_POUND "愛爾蘭鎊"
IDS_CURRENCY_ITALIAN_LIRA "義大利里拉"
IDS_CURRENCY_LATVIAN_LATS "拉脫維亞拉特"
IDS_CURRENCY_LITHUANIAN_LITAS "拉脫維亞拉分"
IDS_CURRENCY_LUXEMBOURG_FRANC "盧森堡法郎"
IDS_CURRENCY_MALTESE_LIRA "馬爾他里拉"
IDS_CURRENCY_PORTOGUESE_ESCUDO "葡萄牙埃斯庫多"
IDS_CURRENCY_SLOVAK_KORUNA "斯洛伐克克朗"
IDS_CURRENCY_SLOVENIAN_TOLAR "斯洛維尼亞拖拉"
IDS_CURRENCY_SPANISH_PESETA "西班牙比塞塔"
END
/* Energies */
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C 卡路里"
IDS_ENERGY_BTUS "英制熱量單位"
IDS_ENERGY_ERGS "爾格"
IDS_ENERGY_EVS "電子伏特"
IDS_ENERGY_FOOT_POUNDS "英尺-磅"
IDS_ENERGY_IT_CALORIES "國際蒸汽表卡路里"
IDS_ENERGY_IT_KILOCALORIES "國際蒸汽表千卡路里"
IDS_ENERGY_JOULES "焦耳"
IDS_ENERGY_KILOJOULES "千焦耳"
IDS_ENERGY_KILOWATT_HOURS "千瓦時"
IDS_ENERGY_NUTRITION_CALORIES "營養卡路里"
IDS_ENERGY_TH_CALORIES "熱化學卡路里"
END
/* Lengths */
STRINGTABLE
BEGIN
IDS_LENGTH_ANGSTROMS "埃"
IDS_LENGTH_ASTRONOMICAL_UNITS "天文單位"
IDS_LENGTH_BARLEYCORNS "Barleycorns"
IDS_LENGTH_CENTIMETERS "釐米"
IDS_LENGTH_CHAINS_UK "鏈(英國)"
IDS_LENGTH_CHI "尺"
IDS_LENGTH_CHOU "疇"
IDS_LENGTH_CHR "Chr"
IDS_LENGTH_CUN "寸"
IDS_LENGTH_FATHOMS "英尋"
IDS_LENGTH_FATHOMS_HUNGARY "英尋(匈牙利)"
IDS_LENGTH_FEET "英尺"
IDS_LENGTH_FURLONGS "化朗"
IDS_LENGTH_GAN "杆"
IDS_LENGTH_HANDS "掌寬"
IDS_LENGTH_HUNH "Hunh"
IDS_LENGTH_INCHES "英尺"
IDS_LENGTH_JA "尺(韓國)"
IDS_LENGTH_JEONG "Jeong"
IDS_LENGTH_KABIET "Kabiet"
IDS_LENGTH_KEN "Ken"
IDS_LENGTH_KEUB "Keub"
IDS_LENGTH_KILOMETERS "公里"
IDS_LENGTH_LAR "拉爾"
IDS_LENGTH_LIGHT_YEARS "光年"
IDS_LENGTH_LINKS_UK "Links英國"
IDS_LENGTH_METERS "米"
IDS_LENGTH_MICRONS "微米"
IDS_LENGTH_MILES "英里"
IDS_LENGTH_MILLIMETERS "毫米"
IDS_LENGTH_NAUTICAL_MILES "海里"
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "秒差距"
IDS_LENGTH_PICAS "派卡"
IDS_LENGTH_RI_JAPAN "里(日本)"
IDS_LENGTH_RI_KOREA "里(韓國)"
IDS_LENGTH_RODS "杆"
IDS_LENGTH_SAWK "Sawk"
IDS_LENGTH_SEN "Sen"
IDS_LENGTH_SHAKU "尺(日本)"
IDS_LENGTH_SPAN "拃"
IDS_LENGTH_SUN "寸(日本)"
IDS_LENGTH_TSUEN "寸"
IDS_LENGTH_VA "Va"
IDS_LENGTH_YARDS "碼"
IDS_LENGTH_YOTE "約特"
IDS_LENGTH_ZHANG "丈"
END
/* Powers */
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "英制熱量單位每分鐘"
IDS_POWER_FPS_PER_MINUTE "英尺-磅每分鐘"
IDS_POWER_HORSEPOWER "馬力"
IDS_POWER_KILOWATTS "千瓦"
IDS_POWER_MEGAWATTS "兆瓦"
IDS_POWER_WATTS "瓦"
END
/* Pressures */
STRINGTABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "大氣壓"
IDS_PRESSURE_BARS "巴"
IDS_PRESSURE_HECTOPASCALS "百帕"
IDS_PRESSURE_KILOPASCALS "千帕"
IDS_PRESSURE_MM_OF_MERCURY "毫米汞柱"
IDS_PRESSURE_PASCALS "帕斯卡"
IDS_PRESSURE_PSI "英磅-力每平方英尺"
END
/* Temperatures */
STRINGTABLE
BEGIN
IDS_TEMPERATURE_CELSIUS "攝氏度"
IDS_TEMPERATURE_FAHRENHEIT "華氏度"
IDS_TEMPERATURE_KELVIN "開爾文"
IDS_TEMPERATURE_RANKINE "蘭金度"
END
/* Time */
STRINGTABLE
BEGIN
IDS_TIME_DAYS "日"
IDS_TIME_HOURS "小時"
IDS_TIME_NANOSECONDS "納秒"
IDS_TIME_MICROSECONDS "微秒"
IDS_TIME_MILLISECONDS "毫秒"
IDS_TIME_MINUTES "分"
IDS_TIME_SECONDS "秒"
IDS_TIME_WEEKS "周"
IDS_TIME_YEARS "年"
END
/* Velocities */
STRINGTABLE
BEGIN
IDS_VELOCITY_CMS_SECOND "厘米/小時"
IDS_VELOCITY_FEET_HOUR "英尺/小時"
IDS_VELOCITY_FEET_SECOND "英尺/秒"
IDS_VELOCITY_KILOMETERS_HOUR "公里/小時"
IDS_VELOCITY_KNOTS "節"
IDS_VELOCITY_MACH "馬赫"
IDS_VELOCITY_METERS_SECOND "米/秒"
IDS_VELOCITY_MILES_HOUR "英里/小時"
END
/* Volumes */
STRINGTABLE
BEGIN
IDS_VOLUME_BARRELS_UK "桶(英國)"
IDS_VOLUME_BARRELS_OIL "桶油"
IDS_VOLUME_BUN "Bun"
IDS_VOLUME_BUSHELS_UK "蒲式耳(英國)"
IDS_VOLUME_BUSHELS_US "蒲式耳(美國)"
IDS_VOLUME_CUBIC_CENTIMETERS "立方釐米"
IDS_VOLUME_CUBIC_FEET "立方英尺"
IDS_VOLUME_CUBIC_INCHES "立方英寸"
IDS_VOLUME_CUBIC_METERS "立方米"
IDS_VOLUME_CUBIC_YARDS "立方碼"
IDS_VOLUME_DOE "Doe"
IDS_VOLUME_FLUID_OUNCES_UK "液安士(英國)"
IDS_VOLUME_FLUID_OUNCES_US "液安士(美國)"
IDS_VOLUME_GALLONS_UK "加侖(英國)"
IDS_VOLUME_GALLONS_DRY_US "乾量加侖(美國)"
IDS_VOLUME_GALLONS_LIQUID_US "濕量加侖(美國)"
IDS_VOLUME_GOU "合"
IDS_VOLUME_HOP "Hop"
IDS_VOLUME_ICCE "Icce"
IDS_VOLUME_KWIAN "Kwian"
IDS_VOLUME_LITERS "升"
IDS_VOLUME_MAL "Mal"
IDS_VOLUME_MILLILITERS "毫升"
IDS_VOLUME_PINTS_UK "品脱(英國)"
IDS_VOLUME_PINTS_DRY_US "乾量品脱(美國)"
IDS_VOLUME_PINTS_LIQUID_US "濕量品脱(美國)"
IDS_VOLUME_QUARTS_UK "夸脫(英國)"
IDS_VOLUME_QUARTS_DRY_US "乾量夸脫(美國)"
IDS_VOLUME_QUARTS_LIQUID_US "濕量夸脫(美國)"
IDS_VOLUME_SEKI "Seki"
IDS_VOLUME_SYOU "Syou"
IDS_VOLUME_TANANLOUNG "Tananloung"
IDS_VOLUME_TANG "Tang"
IDS_VOLUME_TO "斗(日本)"
END
/* Weights */
STRINGTABLE
BEGIN
IDS_WEIGHT_BAHT "銖"
IDS_WEIGHT_CARATS "克拉"
IDS_WEIGHT_CHUNG "Chung"
IDS_WEIGHT_DON "Don"
IDS_WEIGHT_GEUN "Geun"
IDS_WEIGHT_GRAMS "克"
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "斤(中國)"
IDS_WEIGHT_JIN_TAIWAN "斤(台灣)"
IDS_WEIGHT_KAN "貫(日本)"
IDS_WEIGHT_KILOGRAMS "千克"
IDS_WEIGHT_KIN "斤(日本)"
IDS_WEIGHT_LIANG_CHINA "兩(中國)"
IDS_WEIGHT_LIANG_TAIWAN "兩(台灣)"
IDS_WEIGHT_MONME "兩(日本)"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "常衡安士"
IDS_WEIGHT_OUNCES_TROY "金衡安士"
IDS_WEIGHT_POUNDS "英磅"
IDS_WEIGHT_QUINTAL_METRIC "公擔"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "石"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "噸"
IDS_WEIGHT_TONS_UK "噸(英國)"
IDS_WEIGHT_TONS_US "噸(美國)"
END

View File

@@ -0,0 +1,711 @@
// Traditional Chinese translation by 2021 Chan Chilung <eason066@gmail.com>
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
/* Dialogs */
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計算機"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms", IDC_BUTTON_DMS, 38, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin", IDC_BUTTON_SIN, 38, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos", IDC_BUTTON_COS, 38, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan", IDC_BUTTON_TAN, 38, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(", IDC_BUTTON_LEFTPAR, 64, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp", IDC_BUTTON_EXP, 64, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y", IDC_BUTTON_XeY, 64, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2", IDC_BUTTON_Xe2, 64, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3", IDC_BUTTON_Xe3, 64, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")", IDC_BUTTON_RIGHTPAR, 90, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln", IDC_BUTTON_LN, 90, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log", IDC_BUTTON_LOG, 90, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!", IDC_BUTTON_NF, 90, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 90, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC", IDC_BUTTON_MC, 123, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 123, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 123, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 123, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7", IDC_BUTTON_7, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 156, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A", IDC_BUTTON_A, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 182, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 182, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 182, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 182, 120, 24, 18,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B", IDC_BUTTON_B, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 208, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C", IDC_BUTTON_C, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 234, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 234, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 234, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 234, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D", IDC_BUTTON_D, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor", IDC_BUTTON_XOR, 286, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not", IDC_BUTTON_NOT, 286, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "位元組", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "角度", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "弧度", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "梯度", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計算機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 36, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 62, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5", IDC_BUTTON_5, 62, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2", IDC_BUTTON_2, 62, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 62, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 88, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 114, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*", IDC_BUTTON_MULT, 114, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-", IDC_BUTTON_SUB, 114, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 114, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt", IDC_BUTTON_SQRT, 140, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%", IDC_BUTTON_PERCENT, 140, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x", IDC_BUTTON_RX, 140, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 140, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "", IDC_TEXT_MEMORY, 8, 24, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "MC", IDC_BUTTON_MC, 5, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR", IDC_BUTTON_MR, 5, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS", IDC_BUTTON_MS, 5, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+", IDC_BUTTON_MP, 5, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計算機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體"
BEGIN
PUSHBUTTON "轉換", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "類別:", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "從...轉換:", IDC_STATIC, 5, 49, 56, 8
COMBOBOX IDC_COMBO_TO, 5, 87, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "轉換為:", IDC_STATIC, 5, 76, 56, 8
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Back", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 67, 24, 18
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 86, 24, 18
CONTROL "0", IDC_BUTTON_0, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 105, 24, 18
CONTROL "8", IDC_BUTTON_8, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 48, 24, 18
CONTROL "5", IDC_BUTTON_5, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 67, 24, 18
CONTROL "2", IDC_BUTTON_2, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 86, 24, 18
CONTROL "+/-", IDC_BUTTON_SIGN, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 105, 24, 18
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 48, 24, 18
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 67, 24, 18
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 86, 24, 18
CONTROL ",", IDC_BUTTON_DOT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 105, 24, 18
CONTROL "/", IDC_BUTTON_DIV, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 48, 24, 18
CONTROL "*", IDC_BUTTON_MULT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 67, 24, 18
CONTROL "-", IDC_BUTTON_SUB, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 86, 24, 18
CONTROL "+", IDC_BUTTON_ADD, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 266, 105, 24, 18
CONTROL "Sqrt", IDC_BUTTON_SQRT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 48, 24, 18
CONTROL "%", IDC_BUTTON_PERCENT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 67, 24, 18
CONTROL "1/x", IDC_BUTTON_RX, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 86, 24, 18
CONTROL "=", IDC_BUTTON_EQU, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 292, 105, 24, 18
CTEXT "", IDC_TEXT_MEMORY, 152, 24, 24, 18, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "MC", IDC_BUTTON_MC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 48, 24, 18
CONTROL "MR", IDC_BUTTON_MR, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 67, 24, 18
CONTROL "MS", IDC_BUTTON_MS, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 86, 24, 18
CONTROL "M+", IDC_BUTTON_MP, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 152, 105, 24, 18
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "統計框"
FONT 9, "新細明體"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "返回", IDC_BUTTON_RET, 4, 48, 36, 16
PUSHBUTTON "載入", IDC_BUTTON_LOAD, 44, 48, 36, 16
PUSHBUTTON "清除", IDC_BUTTON_CD, 84, 48, 36, 16
PUSHBUTTON "全清", IDC_BUTTON_CAD, 124, 48, 36, 16
CTEXT "n=0", IDC_TEXT_NITEMS, 4, 68, 156, 12, SS_CENTERIMAGE | SS_SUNKEN
END
/* Menus */
IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "編輯"
BEGIN
MENUITEM "複製\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼上\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "查看"
BEGIN
MENUITEM "標準型", IDM_VIEW_STANDARD
MENUITEM "工程型", IDM_VIEW_SCIENTIFIC
MENUITEM "轉換", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "十六進制\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "十進制\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "八進制\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "二進制\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "角度\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "弧度\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "梯度\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "數字分組", IDM_VIEW_GROUP, CHECKED
END
POPUP "說明"
BEGIN
MENUITEM "說明主題", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "關於 ReactOS 計算機", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "編輯"
BEGIN
MENUITEM "複製\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼上\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "查看"
BEGIN
MENUITEM "標準型", IDM_VIEW_STANDARD
MENUITEM "工程型", IDM_VIEW_SCIENTIFIC
MENUITEM "轉換", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "十六進制\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "十進制\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "八進制\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "二進制\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "位元組\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "數字分組", IDM_VIEW_GROUP, CHECKED
END
POPUP "說明"
BEGIN
MENUITEM "說明主題", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "關於 ReactOS 計算機", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU
BEGIN
POPUP "編輯"
BEGIN
MENUITEM "複製\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼上\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "查看"
BEGIN
MENUITEM "標準型", IDM_VIEW_STANDARD
MENUITEM "工程型", IDM_VIEW_SCIENTIFIC
MENUITEM "轉換", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "數字分組", IDM_VIEW_GROUP, CHECKED
END
POPUP "說明"
BEGIN
MENUITEM "說明主題", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "關於 ReactOS 計算機", IDM_HELP_ABOUT
END
END
/* String Tables */
STRINGTABLE
BEGIN
IDS_MATH_ERROR "錯誤"
IDS_QUICKHELP "快速說明"
END
/* About */
STRINGTABLE
BEGIN
IDS_CALC_NAME "ReactOS 計算機"
IDS_AUTHOR "作者 Carlo Bramini"
END
/* Types of conversion */
STRINGTABLE
BEGIN
IDS_CONV_ANGLE "角度"
IDS_CONV_AREA "面積"
IDS_CONV_CONSUMPTION "油耗 (引擎)"
IDS_CONV_CURRENCY "貨幣"
IDS_CONV_ENERGY "能量"
IDS_CONV_LENGTH "長度"
IDS_CONV_POWER "功率"
IDS_CONV_PRESSURE "壓力"
IDS_CONV_TEMPERATURE "溫度"
IDS_CONV_TIME "時間"
IDS_CONV_VELOCITY "速度"
IDS_CONV_VOLUME "體積"
IDS_CONV_WEIGHT "質量"
END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "角分"
IDS_ANGLE_ARCSECONDS "角秒"
IDS_ANGLE_DEGREES "角度"
IDS_ANGLE_GRADIANS "梯度"
IDS_ANGLE_RADIANS "弧度"
END
/* Areas */
STRINGTABLE
BEGIN
IDS_AREA_ACRES "英畝"
IDS_AREA_ACRES_BRAZIL "英畝 (巴西)"
IDS_AREA_ACRES_FRANCE "英畝 (法國)"
IDS_AREA_ACRES_SCOTS "英畝 (蘇格蘭)"
IDS_AREA_ACRES_US "英畝 (美國)"
IDS_AREA_ARES "公畝"
IDS_AREA_CHOU "疇"
IDS_AREA_DANBO "大畝"
IDS_AREA_HECTARES "公頃"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "摩根 (匈牙利)"
IDS_AREA_MU "畝"
IDS_AREA_PING "坪"
IDS_AREA_PYEONG "坪 (韓國)"
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
IDS_AREA_RAI "萊"
IDS_AREA_SE "畝 (日本)"
IDS_AREA_SQUARE_CENTIMETERS "平方釐米"
IDS_AREA_SQUARE_CHR "Square chr"
IDS_AREA_SQUARE_FATHOMS "平方英尋"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "平方英尋 (匈牙利)"
IDS_AREA_SQUARE_FEET "平方英尺"
IDS_AREA_SQUARE_INCHES "平方英寸"
IDS_AREA_SQUARE_KILOMETERS "平方公里"
IDS_AREA_SQUARE_LAR "平方拉爾"
IDS_AREA_SQUARE_METER "平方米"
IDS_AREA_SQUARE_MILES "平方英里"
IDS_AREA_SQUARE_MILLIMETERS "平方毫米"
IDS_AREA_SQUARE_SHAKU "平方尺"
IDS_AREA_SQUARE_TSUEN "平方寸"
IDS_AREA_SQUARE_VA "Square va"
IDS_AREA_SQUARE_YARD "平方碼"
IDS_AREA_TAN "段"
IDS_AREA_TSUBO "坪 (日本)"
END
/* Consumptions */
STRINGTABLE
BEGIN
IDS_CONSUMPTION_KM_PER_L "公里/升"
IDS_CONSUMPTION_L_PER_100_KM "升/100 公里"
IDS_CONSUMPTION_MILES_GALLON_UK "英里/加侖 (英國)"
IDS_CONSUMPTION_MILES_GALLON_US "英里/加侖 (美國)"
END
/* Currencies */
STRINGTABLE
BEGIN
IDS_CURRENCY_AUSTRIAN_SCHILLING "奥地利先令"
IDS_CURRENCY_BELGIAN_FRANC "比利時法郎"
IDS_CURRENCY_CYPRIOT_POUND "賽普勒斯鎊"
IDS_CURRENCY_CZECH_KORUNA "捷克克朗"
IDS_CURRENCY_DEUTSCHE_MARK "德國馬克"
IDS_CURRENCY_DUTCH_GUILDER "荷蘭盾"
IDS_CURRENCY_ESTONIAN_KROON "愛沙尼亞克朗"
IDS_CURRENCY_EURO "歐元"
IDS_CURRENCY_FINNISH_MARKKA "芬蘭馬克"
IDS_CURRENCY_FRENCH_FRANC "法郎"
IDS_CURRENCY_GREEK_DRACHMA "希臘德拉克馬"
IDS_CURRENCY_IRISH_POUND "愛爾蘭鎊"
IDS_CURRENCY_ITALIAN_LIRA "義大利里拉"
IDS_CURRENCY_LATVIAN_LATS "拉脫維亞拉特"
IDS_CURRENCY_LITHUANIAN_LITAS "拉脫維亞拉分"
IDS_CURRENCY_LUXEMBOURG_FRANC "盧森堡法郎"
IDS_CURRENCY_MALTESE_LIRA "馬爾他里拉"
IDS_CURRENCY_PORTOGUESE_ESCUDO "葡萄牙埃斯庫多"
IDS_CURRENCY_SLOVAK_KORUNA "斯洛伐克克朗"
IDS_CURRENCY_SLOVENIAN_TOLAR "斯洛維尼亞拖拉"
IDS_CURRENCY_SPANISH_PESETA "西班牙比塞塔"
END
/* Energies */
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C 卡路里"
IDS_ENERGY_BTUS "英制熱量單位"
IDS_ENERGY_ERGS "爾格"
IDS_ENERGY_EVS "電子伏特"
IDS_ENERGY_FOOT_POUNDS "英尺-磅"
IDS_ENERGY_IT_CALORIES "國際蒸汽表卡路里"
IDS_ENERGY_IT_KILOCALORIES "國際蒸汽表千卡路里"
IDS_ENERGY_JOULES "焦耳"
IDS_ENERGY_KILOJOULES "千焦耳"
IDS_ENERGY_KILOWATT_HOURS "千瓦時"
IDS_ENERGY_NUTRITION_CALORIES "營養卡路里"
IDS_ENERGY_TH_CALORIES "熱化學卡路里"
END
/* Lengths */
STRINGTABLE
BEGIN
IDS_LENGTH_ANGSTROMS "埃"
IDS_LENGTH_ASTRONOMICAL_UNITS "天文單位"
IDS_LENGTH_BARLEYCORNS "Barleycorns"
IDS_LENGTH_CENTIMETERS "釐米"
IDS_LENGTH_CHAINS_UK "鏈 (英國)"
IDS_LENGTH_CHI "尺"
IDS_LENGTH_CHOU "疇"
IDS_LENGTH_CHR "Chr"
IDS_LENGTH_CUN "寸"
IDS_LENGTH_FATHOMS "英尋"
IDS_LENGTH_FATHOMS_HUNGARY "英尋 (匈牙利)"
IDS_LENGTH_FEET "英尺"
IDS_LENGTH_FURLONGS "化朗"
IDS_LENGTH_GAN "杆"
IDS_LENGTH_HANDS "掌寬"
IDS_LENGTH_HUNH "Hunh"
IDS_LENGTH_INCHES "英尺"
IDS_LENGTH_JA "尺 (韓國)"
IDS_LENGTH_JEONG "Jeong"
IDS_LENGTH_KABIET "Kabiet"
IDS_LENGTH_KEN "Ken"
IDS_LENGTH_KEUB "Keub"
IDS_LENGTH_KILOMETERS "公里"
IDS_LENGTH_LAR "拉爾"
IDS_LENGTH_LIGHT_YEARS "光年"
IDS_LENGTH_LINKS_UK "Links (英國)"
IDS_LENGTH_METERS "米"
IDS_LENGTH_MICRONS "微米"
IDS_LENGTH_MILES "英里"
IDS_LENGTH_MILLIMETERS "毫米"
IDS_LENGTH_NAUTICAL_MILES "海里"
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "秒差距"
IDS_LENGTH_PICAS "派卡"
IDS_LENGTH_RI_JAPAN "里 (日本)"
IDS_LENGTH_RI_KOREA "里 (韓國)"
IDS_LENGTH_RODS "杆"
IDS_LENGTH_SAWK "Sawk"
IDS_LENGTH_SEN "Sen"
IDS_LENGTH_SHAKU "尺 (日本)"
IDS_LENGTH_SPAN "拃"
IDS_LENGTH_SUN "寸 (日本)"
IDS_LENGTH_TSUEN "寸"
IDS_LENGTH_VA "Va"
IDS_LENGTH_YARDS "碼"
IDS_LENGTH_YOTE "約特"
IDS_LENGTH_ZHANG "丈"
END
/* Powers */
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "英制熱量單位每分鐘"
IDS_POWER_FPS_PER_MINUTE "英尺-磅每分鐘"
IDS_POWER_HORSEPOWER "馬力"
IDS_POWER_KILOWATTS "千瓦"
IDS_POWER_MEGAWATTS "兆瓦"
IDS_POWER_WATTS "瓦"
END
/* Pressures */
STRINGTABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "大氣壓"
IDS_PRESSURE_BARS "巴"
IDS_PRESSURE_HECTOPASCALS "百帕"
IDS_PRESSURE_KILOPASCALS "千帕"
IDS_PRESSURE_MM_OF_MERCURY "毫米汞柱"
IDS_PRESSURE_PASCALS "帕斯卡"
IDS_PRESSURE_PSI "英磅-力每平方英尺"
END
/* Temperatures */
STRINGTABLE
BEGIN
IDS_TEMPERATURE_CELSIUS "攝氏度"
IDS_TEMPERATURE_FAHRENHEIT "華氏度"
IDS_TEMPERATURE_KELVIN "開爾文"
IDS_TEMPERATURE_RANKINE "蘭金度"
END
/* Time */
STRINGTABLE
BEGIN
IDS_TIME_DAYS "日"
IDS_TIME_HOURS "小時"
IDS_TIME_NANOSECONDS "納秒"
IDS_TIME_MICROSECONDS "微秒"
IDS_TIME_MILLISECONDS "毫秒"
IDS_TIME_MINUTES "分"
IDS_TIME_SECONDS "秒"
IDS_TIME_WEEKS "周"
IDS_TIME_YEARS "年"
END
/* Velocities */
STRINGTABLE
BEGIN
IDS_VELOCITY_CMS_SECOND "釐米/小時"
IDS_VELOCITY_FEET_HOUR "英尺/小時"
IDS_VELOCITY_FEET_SECOND "英尺/秒"
IDS_VELOCITY_KILOMETERS_HOUR "公里/小時"
IDS_VELOCITY_KNOTS "節"
IDS_VELOCITY_MACH "馬赫"
IDS_VELOCITY_METERS_SECOND "米/秒"
IDS_VELOCITY_MILES_HOUR "英里/小時"
END
/* Volumes */
STRINGTABLE
BEGIN
IDS_VOLUME_BARRELS_UK "桶 (英國)"
IDS_VOLUME_BARRELS_OIL "桶油"
IDS_VOLUME_BUN "Bun"
IDS_VOLUME_BUSHELS_UK "蒲式耳 (英國)"
IDS_VOLUME_BUSHELS_US "蒲式耳 (美國)"
IDS_VOLUME_CUBIC_CENTIMETERS "立方釐米"
IDS_VOLUME_CUBIC_FEET "立方英尺"
IDS_VOLUME_CUBIC_INCHES "立方英寸"
IDS_VOLUME_CUBIC_METERS "立方米"
IDS_VOLUME_CUBIC_YARDS "立方碼"
IDS_VOLUME_DOE "Doe"
IDS_VOLUME_FLUID_OUNCES_UK "液盎司 (英國)"
IDS_VOLUME_FLUID_OUNCES_US "液盎司 (美國)"
IDS_VOLUME_GALLONS_UK "加侖 (英國)"
IDS_VOLUME_GALLONS_DRY_US "乾量加侖 (美國)"
IDS_VOLUME_GALLONS_LIQUID_US "濕量加侖 (美國)"
IDS_VOLUME_GOU "合"
IDS_VOLUME_HOP "Hop"
IDS_VOLUME_ICCE "Icce"
IDS_VOLUME_KWIAN "Kwian"
IDS_VOLUME_LITERS "升"
IDS_VOLUME_MAL "Mal"
IDS_VOLUME_MILLILITERS "毫升"
IDS_VOLUME_PINTS_UK "品脱 (英國)"
IDS_VOLUME_PINTS_DRY_US "乾量品脱 (美國)"
IDS_VOLUME_PINTS_LIQUID_US "濕量品脱 (美國)"
IDS_VOLUME_QUARTS_UK "夸脫 (英國)"
IDS_VOLUME_QUARTS_DRY_US "乾量夸脫 (美國)"
IDS_VOLUME_QUARTS_LIQUID_US "濕量夸脫 (美國)"
IDS_VOLUME_SEKI "Seki"
IDS_VOLUME_SYOU "Syou"
IDS_VOLUME_TANANLOUNG "Tananloung"
IDS_VOLUME_TANG "Tang"
IDS_VOLUME_TO "斗 (日本)"
END
/* Weights */
STRINGTABLE
BEGIN
IDS_WEIGHT_BAHT "銖"
IDS_WEIGHT_CARATS "克拉"
IDS_WEIGHT_CHUNG "Chung"
IDS_WEIGHT_DON "Don"
IDS_WEIGHT_GEUN "Geun"
IDS_WEIGHT_GRAMS "克"
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "斤 (中國)"
IDS_WEIGHT_JIN_TAIWAN "斤 (臺灣)"
IDS_WEIGHT_KAN "貫 (日本)"
IDS_WEIGHT_KILOGRAMS "千克"
IDS_WEIGHT_KIN "斤 (日本)"
IDS_WEIGHT_LIANG_CHINA "兩 (中國)"
IDS_WEIGHT_LIANG_TAIWAN "兩 (臺灣)"
IDS_WEIGHT_MONME "兩 (日本)"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "常衡盎司"
IDS_WEIGHT_OUNCES_TROY "金衡盎司"
IDS_WEIGHT_POUNDS "英磅"
IDS_WEIGHT_QUINTAL_METRIC "公擔"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "石"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "噸"
IDS_WEIGHT_TONS_UK "噸 (英國)"
IDS_WEIGHT_TONS_US "噸 (美國)"
END

View File

@@ -63,6 +63,9 @@ IDI_CALC ICON DISCARDABLE "res/calc.ico"
#ifdef LANGUAGE_HU_HU
#include "lang/hu-HU.rc"
#endif
#ifdef LANGUAGE_ID_ID
#include "lang/id-ID.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#endif
@@ -84,6 +87,9 @@ IDI_CALC ICON DISCARDABLE "res/calc.ico"
#ifdef LANGUAGE_PT_BR
#include "lang/pt-BR.rc"
#endif
#ifdef LANGUAGE_PT_PT
#include "lang/pt-PT.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#endif
@@ -111,3 +117,9 @@ IDI_CALC ICON DISCARDABLE "res/calc.ico"
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_HK
#include "lang/zh-HK.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

View File

@@ -133,7 +133,7 @@
* "DOT" function can be used for starting a number (integer part will be zero).
* Added repeat function.
* If the number is greater than maximum resolution, it will be displayed with exponential notation.
* Removed mouse and keyboard focuses from displayed buttons.
* Removed mouse and keyboard focuses from displayed buttons.
* Added normal and small icons.
1.00 (20070323)

View File

@@ -852,7 +852,7 @@ static void update_memory_flag(HWND hWnd, BOOL mem_flag)
static void update_n_stats_items(HWND hWnd, TCHAR *buffer)
{
unsigned int n = SendDlgItemMessage(hWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
unsigned int n = SendDlgItemMessage(hWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
_stprintf(buffer, _T("n=%u"), n);
SetDlgItemText(hWnd, IDC_TEXT_NITEMS, buffer);
@@ -1211,7 +1211,7 @@ static void handle_context_menu(HWND hWnd, WPARAM wp, LPARAM lp)
#else
(void)idm;
#endif
}
}
static void run_canc(calc_number_t *c)
{

View File

@@ -4,7 +4,6 @@
* FILE: base/applications/charmap/charmap.c
* PURPOSE: main dialog implementation
* COPYRIGHT: Copyright 2007 Ged Murphy <gedmurphy@reactos.org>
*
*/
#include "precomp.h"
@@ -13,7 +12,7 @@
#include <richedit.h>
#include <winnls.h>
#define REMOVE_ADVANCED
//#define REMOVE_ADVANCED
#define ID_ABOUT 0x1
@@ -25,6 +24,55 @@ HICON hSmIcon;
HICON hBgIcon;
SETTINGS Settings;
static
VOID
FillCharacterSetComboList(HWND hwndCombo)
{
WCHAR szCharSetText[256];
LPWSTR trimmedName;
CPINFOEXW cpInfo;
INT i;
if (LoadStringW(hInstance, IDS_UNICODE, szCharSetText, SIZEOF(szCharSetText)))
{
SendMessageW(hwndCombo,
CB_ADDSTRING,
0,
(LPARAM)szCharSetText);
}
for (i = 0; i < SIZEOF(codePages); i++)
{
if (GetCPInfoExW(codePages[i], 0, &cpInfo))
{
trimmedName = wcschr(cpInfo.CodePageName, L'(');
if (!trimmedName)
trimmedName = cpInfo.CodePageName;
SendMessageW(hwndCombo,
CB_ADDSTRING,
0,
(LPARAM)trimmedName);
}
}
SendMessageW(hwndCombo, CB_SETCURSEL, 0, 0);
}
static
VOID
FillGroupByComboList(HWND hwndCombo)
{
WCHAR szAllText[256];
if (LoadStringW(hInstance, IDS_ALL, szAllText, SIZEOF(szAllText)))
{
SendMessageW(hwndCombo, CB_ADDSTRING, 0, (LPARAM)szAllText);
}
SendMessageW(hwndCombo, CB_SETCURSEL, 0, 0);
}
/* Font-enumeration callback */
static
int
@@ -283,7 +331,7 @@ ChangeView(HWND hWnd)
RECT rcPanelInt;
RECT rcStatus;
UINT DeX, DeY;
UINT xPos, yPos;
LONG xPos, yPos;
UINT Width, Height;
UINT DeskTopWidth, DeskTopHeight;
#ifdef REMOVE_ADVANCED
@@ -325,11 +373,12 @@ ChangeView(HWND hWnd)
Shrink the window height a bit here to accomodate for that lost control. */
Height = rcCharmap.bottom + rcCopy.bottom + 10;
#endif
// FIXME: This fails on multi monitor setups
if ((xPos + Width) > DeskTopWidth)
xPos += DeskTopWidth - (xPos + Width);
xPos = DeskTopWidth - Width;
if ((yPos + Height) > DeskTopHeight)
yPos += DeskTopHeight - (yPos + Height);
yPos = DeskTopHeight - Height;
MoveWindow(hWnd,
xPos, yPos,
@@ -438,6 +487,26 @@ AdvancedDlgProc(HWND hDlg,
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case IDC_COMBO_CHARSET:
if (HIWORD(wParam) == CBN_SELCHANGE)
{
INT idx = (INT)SendMessageW((HWND)lParam,
CB_GETCURSEL,
0, 0);
SendMessageW(GetDlgItem(hCharmapDlg, IDC_FONTMAP),
FM_SETCHARMAP,
idx, 0);
EnableWindow(GetDlgItem(hAdvancedDlg, IDC_EDIT_UNICODE), idx == 0);
}
break;
}
}
default:
return FALSE;
}
@@ -456,11 +525,21 @@ PanelOnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
MAKEINTRESOURCE(IDD_CHARMAP),
hWnd,
CharMapDlgProc);
// For now, the Help push button is disabled because of lacking of HTML Help support
EnableWindow(GetDlgItem(hCharmapDlg, IDC_CMHELP), FALSE);
#ifndef REMOVE_ADVANCED
hAdvancedDlg = CreateDialog(hInstance,
MAKEINTRESOURCE(IDD_ADVANCED),
hWnd,
AdvancedDlgProc);
FillCharacterSetComboList(GetDlgItem(hAdvancedDlg, IDC_COMBO_CHARSET));
FillGroupByComboList(GetDlgItem(hAdvancedDlg, IDC_COMBO_GROUPBY));
EnableWindow(GetDlgItem(hAdvancedDlg, IDC_COMBO_GROUPBY), FALSE); // FIXME: Implement
EnableWindow(GetDlgItem(hAdvancedDlg, IDC_BUTTON_SEARCH), FALSE); // FIXME: Implement
#endif
hStatusWnd = CreateWindow(STATUSCLASSNAME,
NULL,
@@ -487,6 +566,8 @@ PanelOnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
}
}
SetFocus(hCharmapDlg);
return 0;
}
@@ -495,8 +576,6 @@ PanelWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg) {
case WM_CREATE:
// For now, the Help push button is disabled because of lacking of HTML Help support
EnableWindow(GetDlgItem(hWnd, IDC_CMHELP), FALSE);
return PanelOnCreate(hWnd, wParam, lParam);
case WM_CLOSE:
@@ -600,7 +679,7 @@ wWinMain(HINSTANCE hInst,
MSG Msg;
hInstance = hInst;
/* Mirroring code for the titlebar */
switch (GetUserDefaultUILanguage())
{
@@ -632,6 +711,14 @@ wWinMain(HINSTANCE hInst,
break;
}
/* NOTE: CreateDialog needs IsDialogMessage call in message loop */
if (hCharmapDlg && IsDialogMessage(hCharmapDlg, &Msg))
continue;
#ifndef REMOVE_ADVANCED
if (hAdvancedDlg && IsDialogMessage(hAdvancedDlg, &Msg))
continue;
#endif
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}

View File

@@ -99,6 +99,9 @@ IDI_ICON ICON "res/charmap.ico"
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_HK
#include "lang/zh-HK.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

View File

@@ -1,5 +1,5 @@
/* Превод на Български/ Bulgarian translation */
/* http://www.reactos.org/wiki/Bulgarian_translation */
/* https://reactos.org/wiki/Bulgarian_translation */
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
@@ -8,7 +8,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Шрифт :", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Помощ", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -54,4 +54,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&За..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Ajuda", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&En quant a..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -10,7 +10,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Písmo:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Nápověda", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -56,4 +56,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&O programu..."
IDS_TITLE "Mapa znaků"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Schrift:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Hilfe", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "Ü&ber..."
IDS_TITLE "Zeichentabelle"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Γραμματοσειρά :", IDC_STATIC, 6, 7, 60, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Βοήθεια", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&Πληροφορίες..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "&Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Help", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "A&bout..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -8,7 +8,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Fuente:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Ayuda", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -54,4 +54,6 @@ BEGIN
IDS_LICENSE "Este programa es software libre; puedes redistribuirlo y/o modificarlo bajo los términos de la GNU General Public License tal y como se publica por la Free Software Foundation; ya sea la versión 2 de la Licencia, o (bajo tu discreción) cualquier versión posterior.\r\n\r\nEste programa se distribuye con el fin de ser útil, pero viene SIN NINGUNA GARANTÍA; sin tan siquiera la garantía implícita de COMERCIALIZACIÓN o la de IDONEIDAD PARA UN PROPÓSITO CONCRETO. Para más información lee la GNU General Public License.\r\n\r\nDeberías de haber recibido una copia de la GNU General Public License con el programa; si no, puedes escribir a la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 EE.UU."
IDS_ABOUT "&Acerca de ..."
IDS_TITLE "Mapa de caracteres"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "&Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Spikker", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "T&eave..."
IDS_TITLE "Märgistik"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Police :", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Aide", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "Ce programme est un logiciel libre ; vous pouvez le redistribuer et/ou le modifier tout en respectant les termes de la ""GNU General Public License"" publiée par la Free Software Foundation; dans sa version 2 (ou selon votre préférence) toute version ultérieure.\r\n\r\nCe programme est distribué dans l'espoir qu'il sera utile, cependant SANS GARANTIE D'AUCUNE SORTE ; sans même une garantie implicite de COMMERCIABILITÉ ou DE CONFORMITÉ À UNE UTILISATION PARTICULIÈRE. \r\n\r\nVoir la Licence Publique Générale GNU pour plus de détails. Vous devriez avoir reçu un exemplaire de la Licence Publique Générale GNU avec ce programme ; si ce n'est pas le cas, écrivez à la Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "À propos..."
IDS_TITLE "Table des Caractères"
IDS_UNICODE "Unicode"
IDS_ALL "Tous"
END

View File

@@ -7,7 +7,7 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
EXSTYLE WS_EX_LAYOUTRTL
BEGIN
LTEXT "גופן", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "עזרה", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -55,4 +55,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&אודות..."
IDS_TITLE "מפת תווים"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Fon:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Bantuan", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "Program ini adalah software bebas; anda dapat mendistribusikan dan/atau mengubahnya di bawah term GNU General Public License seperti dipublikasikan oleh Free Software Foundation; baik Lisensi versi 2, atau (menurut opini anda) setiap versi berikutnya.\r\n\r\nProgram ini didistribusikan dengan harapan ia akan berguna, tetapi TANPA JAMINAN APAPUN; bahkan tanpa jaminan berarti dari MERCANTABILITAS atau KECUKUPAN UNTUK KEPERLUAN TERTENTU. Lihat GNU General Public License untuk lebih jelasnya.\r\n\r\nAnda seharusnya menerima duplikat GNU General Public License bersamaan dengan program ini; jika tidak, tulis ke Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "Te&ntang..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Aiuto", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "Questo programma è software libero; può redistribuirlo e/o modificarlo sotto\ni termini della licenza pubblica GNU come pubblicata dalla Free Software Foundation; sia la versione 2 sia una versione successiva (a sua scelta).\r\n\r\nQuesto programma è distribuito\nnella speranza che sia utile, ma SENZA ALCUNA GARANZIA; senza neanche la garanzia implicita\ndi NEGOZIABILITA' o APPLICABILITA' per un particolare scopo. Si veda la licenza generale pubblica GNU per maggiori dettagli.\r\n\r\nDovrebbe aver ricevuto una copia assieme a questo programma; se così non fosse, scriva alla Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&Informazioni su..."
IDS_TITLE "Mappa caratteri"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 9, "MS UI Gothic", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "フォント:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "ヘルプ", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -15,7 +15,7 @@ BEGIN
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "選択", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "コピー", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
CONTROL "Advanced view", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
CONTROL "詳細表示", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
WS_TABSTOP, 8, 208, 95, 10
END
@@ -23,13 +23,13 @@ IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 9, "MS UI Gothic"
BEGIN
LTEXT "Charset:", IDC_STATIC, 8, 8, 48, 8
LTEXT "文字セット:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Group by:", IDC_STATIC, 8, 28, 50, 8
LTEXT "分類:", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Search", IDC_BUTTON_SEARCH, 200, 44, 50, 14
PUSHBUTTON "検索", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "Search for:", IDC_STATIC, 8, 48, 42, 8
LTEXT "検索文字列:", IDC_STATIC, 8, 48, 42, 8
LTEXT "Unicode:", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
@@ -48,7 +48,9 @@ END
STRINGTABLE
BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "本プログラムはフリーソフトウェアです。フリーソフトウェア財団が発行した GNU 一般公衆利用許諾契約書のバージョン2、またはそれ以降のバージョン任意選択の条件の下で再配布、または改変することができます。\r\n\r\n本プログラムは、有用であることを期待して配布されていますが、商品性や特定目的への適合性についての暗黙の保証もなく、いかなる保証もありません。詳細は GNU 一般公衆利用許諾契約書をご覧ください。\r\n\r\nあなたはこのプログラムとともに GNU 一般公衆利用許諾書のコピーを受け取っているはずです。そうでない場合は、フリーソフトウェア財団(Free Software Foundation, Inc, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA)までご連絡ください。"
IDS_ABOUT "バージョン情報(&B)..."
IDS_TITLE "Character Map"
IDS_TITLE "文字コード表"
IDS_UNICODE "Unicode"
IDS_ALL "すべて"
END

View File

@@ -9,7 +9,7 @@ FONT 9, "굴림", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "글꼴:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "도움말", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -55,4 +55,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "정보(&A)"
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -14,7 +14,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Šriftas:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Pagalba", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -60,4 +60,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&Apie..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Lettertype:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Help", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "Over..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Skrift:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Hjelp", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "Dette programmet er gratis programvare; du kan distribuere det og/eller endre det under betingelsene av GNU General Public License som er utgitt av Free Software Foundation; version 2 av lisensen, eller (etter din mening) alle senere versjoner.\r\n\r\nDette programmet er utgitt i håp for at det skal kunne brukes, men DET ER INGEN GARANTIER; uten heller forutsatt garantier av SALGBARHET eller SIKKETHET FOR EN ENKELTHET FORMÅL. Se på GNU General Public Lisensen for mere detaljer.\r\n\r\nDu skal ha motatt en kopi av GNU General Public Lisensen sammen med denne programmet; hvis du ikke har motatt det, skriv til Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "O&m..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -14,7 +14,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Czci&onka:", IDC_STATIC, 7, 9, 32, 8
COMBOBOX IDC_FONTCOMBO, 49, 7, 183, 60, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 49, 7, 183, 60, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Pomo&c", IDC_CMHELP, 237, 7, 50, 14
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -60,4 +60,6 @@ BEGIN
IDS_LICENSE "Niniejszy program jest wolnym oprogramowaniem; możesz go rozprowadzać dalej i/lub modyfikować na warunkach Powszechnej Licencji Publicznej GNU, wydanej przez Fundację Wolnego Oprogramowania - według wersji 2 tej Licencji lub (według twojego wyboru) którejś z późniejszych wersji.\r\n\r\nNiniejszy program rozpowszechniany jest z nadzieją, iż będzie on użyteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domyślnej gwarancji PRZYDATNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKRESLONYCH ZASTOSOWAŃ. W celu uzyskania bliższych informacji sięgnij do Powszechnej Licencji Publicznej GNU.\r\n\r\nZ pewnością wraz z niniejszym programem otrzymałeś też egzemplarz Powszechnej Licencji Publicznej GNU (GNU General Public License); jeśli nie - napisz do Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&O programie..."
IDS_TITLE "Tablica znaków"
IDS_UNICODE "Unicode"
IDS_ALL "Wszystko"
END

View File

@@ -5,7 +5,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "&Fonte:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Aj&uda", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -51,4 +51,6 @@ BEGIN
IDS_LICENSE "Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da GNU General Public License conforme publicada pela Free Software Foundation; quer a versão 2 da licença, ou (conforme você escolha) qualquer versão posterior.\r\n\r\nEste programa é distribuído com a esperança de que seja útil, mas SEM QUALQUER GARANTIA; mesmo sem a garantia implícita de MERCANTIBILIDADE OU ADEQUAÇÃO A UM DETERMINADO PROPÓSITO. Para mais detalhes, veja a GNU General Public License.\r\n\r\nVocê deve ter recebido uma cópia da GNU General Public License juntamente com este programa; caso contrário, escreva para a Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA."
IDS_ABOUT "So&bre..."
IDS_TITLE "Mapa de Caracteres"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -1,7 +1,8 @@
/*
* FILE: base/applications/charmap/lang/ro-RO.rc
* ReactOS Project (http://www.reactos.org)
* TRANSLATOR: Ștefan Fulea (stefan dot fulea at mail dot com)
* ReactOS Project (https://reactos.org)
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -11,7 +12,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "F&ont:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Manual…", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -57,4 +58,6 @@ BEGIN
IDS_LICENSE "Această aplicație este publică; fiind permisă modificarea și/sau (re)distribuția sa în termenii Licenței Publice Generale GNU publicată de Free Software Foundation; sau versiunea 2 a Licenței, sau (la alegere) a oricărei versiuni ulterioare.\r\n\r\nAceastă aplicație este distribuită doar în speranța de a fi utilă, FĂRĂ însă NICI O GARANȚIE; nici măcar cu garanția implicită a VANDABILITĂȚII sau a UTILITĂȚII ÎNTR-UN SCOP ANUME. Pentru mai multe detalii consultați Licența Publică Generală GNU.\r\n\r\nPuteți vedea această licență aici:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nDe asemenea puteți consulta traduceri neoficiale ale acestei licențe aici:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_ABOUT "&Despre…"
IDS_TITLE "Hartă de caractere"
IDS_UNICODE "Unicode"
IDS_ALL "Toate"
END

View File

@@ -7,7 +7,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "&Шрифт:", IDC_STATIC, 6, 7, 27, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Справка", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -53,4 +53,6 @@ BEGIN
IDS_LICENSE "Эта программа является свободно распространяемой; Вы можете распространять ее повторно и (или) изменять, соблюдая условия Открытого лицензионного соглашения GNU, опубликованного Фондом свободно распространяемого программного обеспечения; либо редакции 2 Соглашения, либо (на ваше усмотрение) любой редакции, выпущенной позже.\r\n\r\nЭта программа распространяется в надежде на то, что она окажется полезной, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, включая подразумеваемую гарантию КАЧЕСТВА либо ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Подробности содержатся в Открытом лицензионном соглашении GNU.\r\n\r\nВместе с этой программой должен распространяться экземпляр Открытого лицензионного соглашения GNU, если он отсутствует, сообщите об этом в Фонд свободно распространяемого программного обеспечения (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&О программе..."
IDS_TITLE "Таблица символов"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -14,7 +14,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Pís&mo:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Pomocník", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -60,4 +60,6 @@ BEGIN
IDS_LICENSE "Tento program je voľný softvér; môžete ho šíriť a/alebo modifikovať podľa podmienok GNU Všeobecnej verejnej licencie (GNU General Public License) ako bola zverejnená nadáciou Free Software Foundation; buď verzie 2 tejto licencie, alebo (podľa Vášho uváženia) niektorej neskoršej verzie.\r\n\r\nTento program je distribuovaný v nádeji, že bude užitočný, avšak BEZ AKEJKOĽVEK ZÁRUKY; rovnako bez záruky PREDAJNOSTI alebo VHODNOSTI PRE URČITÝ ÚČEL. Pre viac detailov si pozrite GNU Všeobecnú verejnú licenciu (GNU General Public License).\r\n\r\nKópiu Všeobecnej verejnej licencie GNU ste mali dostať spolu s týmto programom; ak nie, napíšte si o ňu na Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "Č&o je Mapa znakov"
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -1,4 +1,4 @@
/* TRANSLATOR : Ardit Dani (Ard1t) (ardit.dani@gmail.com)
/* TRANSLATOR : Ardit Dani (Ard1t) (ardit.dani@gmail.com)
* DATE OF TR: 29-11-2013
*/
@@ -9,7 +9,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Ndihmë", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -55,4 +55,6 @@ BEGIN
IDS_LICENSE "Ky program eshte falas; ju mund ta shperndani ose modifikoni nen termat e liçenses publike te GNU nga Free Software Foundation; ose versionin 2 te Liçenses, ose (opsionet tend) versionet me te reja.\r\n\r\nKy program shperndahet me shpresen qe do te jete i nevojshem, POR PA ASNJE GARANCI; madje dhe pa nënkuptimin e garancisë së tregtimit apo përshtatshmerise për qëllim të veçantë. Shiko liçensen publike te GNU per me shume detaje.\r\n\r\nJu duhet te jeni paisur me nje kopje te liçenses GNU perkrah ketij programi; nese jo, shkruani Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "R&reth..."
IDS_TITLE "Karakter Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -12,7 +12,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Typsnitt:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Hjälp", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -58,4 +58,6 @@ BEGIN
IDS_LICENSE "Detta programmet är fri programvara; du kan distribuera det och/eller ändra det under villkoren enligt GNU General Public License som är utgivet av Free Software Foundation; version 2, eller (om du så önskar) alla senare versioner.\r\n\r\nDette programmet er utgivet i hopp om att det skall kunne användas, men DET FINNS INGA GARANTIER; även utan underförstådd garanti om SÄLJBARHET eller LÄMPLIGHET FÖR ETT VISST ÄNDAMÅL. Se på GNU General Public Licensen för mer detaljer.\r\n\r\nDu skall ha motagit en kopia av GNU General Public Licensen tillsammans med detta programmet; om du inte har fått det, skriv til Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "O&m..."
IDS_TITLE "Character Map"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -1,4 +1,7 @@
/* TRANSLATOR: 2013, 2014 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
/* TRANSLATOR:
2013, 2014 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net),
2021 Süleyman Poyraz (zaryob [dot] dev [at] gmail [dot] com)
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@@ -7,12 +10,12 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Yazı Tipi:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Yardım", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL, 20, 22, 266, 156
LTEXT "Çoğaltılacak Damgalar:", IDC_STATIC, 6, 188, 66, 9
LTEXT "Çoğaltılacak Karakterler:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Seç", IDC_SELECT, 194, 186, 44, 13
@@ -25,23 +28,23 @@ IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Damga Öbeği:", IDC_STATIC, 8, 8, 48, 8
LTEXT "Karakter Yığını:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Takımla:", IDC_STATIC, 8, 28, 50, 8
LTEXT "Gruplandır:", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Ara", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "Ada Göre Ara:", IDC_STATIC, 8, 48, 42, 8
LTEXT "Evrenlik Kod:", IDC_STATIC, 200, 8, 30, 8
LTEXT "&Unicode:", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "Damga Eşlemi Üzerine"
CAPTION "Karakter Seçici Hakkında"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "Damga Eşlemi - Sürüm: 0.1\nTelif Hakkı: 2007 - Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
LTEXT "Karakter Seçici - Sürüm: 0.1\nTelif Hakkı: 2007 - Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
PUSHBUTTON "Tamam", IDOK, 75, 162, 44, 15
ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 194, 107, WS_VISIBLE | WS_VSCROLL |
@@ -50,7 +53,9 @@ END
STRINGTABLE
BEGIN
IDS_LICENSE "ÖNEMLİ: Aşağıdaki metin, özgün metnin resmî olmayan çevirisidir. Çeviri metniyle özgün metin arasında ayrım olabilir. Özgün metin, çeviri metninin altındadır.\r\n\r\n***\r\n\r\nBu izlence özgür yazılımdır; bunu, Özgür Yazılım Vakfı'nın yayımladığı GNU Umûmî Kamu Ruhsatı'nın, 2. sürümünün ya da daha sonraki bir sürümünün (Orası size bağlı.) şartları altında yeniden dağıtabilir veyâ değiştirebilirsiniz.\r\n\r\nBu izlence, kullanışlı olabileceği beklentisiyle dağıtılmıştır ancak bu izlencenin HİÇBİR GÜVENCESİ YOKTUR, SATILABİLİRLİĞİN ve BELİRLİ BİR AMACA UYGUNLUĞUN demek istenilen güvencesi bile. Daha çok bilgi için GNU Umûmî Kamu Ruhsatı'na bakınız.\r\n\r\nBu izlenceyle birlikte GNU Umûmî Kamu Ruhsatı'nın bir kopyasını almış olmalısınız, eğer yoksa Özgür Yazılım Vakfı AŞ'ye (51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD) yazınız.\r\n\r\n***\r\n\r\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&Üzerine..."
IDS_TITLE "Damga Eşlemi"
IDS_LICENSE "ÖNEMLİ: Aşağıdaki metin, özgün metnin resmi olmayan çevirisidir. Çeviri metniyle özgün metin arasında farklar olabilir. Özgün metin, çeviri metninin altındadır.\r\n\r\n***\r\n\r\nBu program özgür yazılımdır; bunu, Özgür Yazılım Vakfı'nın yayımladığı GNU Genel Kamu Lisansı'nın, 2. sürümünün ya da daha sonraki bir sürümünün (seçiminize bağlı olarak.) şartları altında yeniden dağıtabilir veya değiştirebilirsiniz.\r\n\r\nBu program, kullanışlı olabileceği beklentisiyle dağıtılmıştır; ancak, bu program HİÇBİR GÜVENCE VEREMEZ, SATILABİLİRLİĞİN ve BELİRLİ BİR AMACA UYGUNLUĞUN güvencesi de verilemez. Daha çok bilgi için GNU Genel Kamu Lisansı'na bakınız.\r\n\r\nBu programla birlikte GNU Genel Kamu Lisansı'nın bir kopyasını almış olmalısınız, eğer yoksa Özgür Yazılım Vakfı AŞ'ye (51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ABD) yazınız.\r\n\r\n***\r\n\r\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&Hakkında..."
IDS_TITLE "Karakter Seçici"
IDS_UNICODE "Unicode"
IDS_ALL "Tümü"
END

View File

@@ -13,7 +13,7 @@ FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "Шрифт :", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "Довідка", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -59,4 +59,6 @@ BEGIN
IDS_LICENSE "Таблиця символів - вільне програмне забезпечення; Ви можете розповсюджувати її та змінювати, дотримуючись умови Відкритої ліцензійної угоди GNU, опублікованої Фондом вільного програмного забезпечення; або редакції 2 Угоди, або будь-якої редакції, випущеної пізніше.\r\n\r\nЦя програма розповсюджується в надії на те, що вона виявиться корисною, але БЕЗ БУДЬ-ЯКИХ ГАРАНТІЙ, включаючи УЯВНОЮ ГАРАНТІЄЮ ЯКОСТІ або ПРИДАТНОСТІ для певних цілей. Подробиці містяться у Відкритій ліцензійній угоді GNU.\r\n\r\nРазом з цією програмою повинен поширюватися примірник Відкритої ліцензійної угоди GNU. Якщо він відсутній, повідомте про це в Фонд вільного програмного забезпечення (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "&Про програму..."
IDS_TITLE "Таблиця Cимволів"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -12,13 +12,13 @@ IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 9, "宋体", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "字体:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
LTEXT "字体", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "说明", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL, 20, 22, 266, 156
LTEXT "待复制的字符:", IDC_STATIC, 6, 188, 66, 9
LTEXT "待复制的字符", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "选择", IDC_SELECT, 194, 186, 44, 13
@@ -31,14 +31,14 @@ IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 9, "宋体"
BEGIN
LTEXT "字符集:", IDC_STATIC, 8, 8, 48, 8
LTEXT "字符集", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "分组:", IDC_STATIC, 8, 28, 50, 8
LTEXT "分组", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "搜索", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "搜索目标:", IDC_STATIC, 8, 48, 42, 8
LTEXT "到 Unicode:", IDC_STATIC, 200, 8, 30, 8
LTEXT "搜索目标", IDC_STATIC, 8, 48, 42, 8
LTEXT "到 Unicode", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
@@ -59,4 +59,6 @@ BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA."
IDS_ABOUT "关于(&A)..."
IDS_TITLE "字符映射表"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -0,0 +1,64 @@
/*
* PROJECT: ReactOS Character Map
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Chinese (Hong Kong) resource file
* TRANSLATORS: Copyright 2021 Chan Chilung <eason066@gmail.com>
* REFERENCES: Chinese (Traditional) resource file
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 9, "新細明體", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "字型:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "説明", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL, 20, 22, 266, 156
LTEXT "待複製字元:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "選擇", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "複製", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
CONTROL "進階檢視", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
WS_TABSTOP, 8, 208, 95, 10
END
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 9, "新細明體"
BEGIN
LTEXT "字元集:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "分組:", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "搜尋", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "搜尋目標:", IDC_STATIC, 8, 48, 42, 8
LTEXT "到 Unicode", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "關於字元對應表"
FONT 9, "新細明體", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "字元對應表 v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
PUSHBUTTON "關閉", IDOK, 75, 162, 44, 15
ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 194, 107, WS_VISIBLE | WS_VSCROLL |
WS_TABSTOP | ES_READONLY | ES_MULTILINE
END
STRINGTABLE
BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "關於(&A)..."
IDS_TITLE "字元對應表"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -12,8 +12,8 @@ IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 9, "新細明體", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "字", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
LTEXT "字", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "說明", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
@@ -56,7 +56,9 @@ END
STRINGTABLE
BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_LICENSE "本程式為自由軟體,在自由軟體聯盟發佈的 GNU 通用公共授權合約的約束下,你可以對其進行再發佈及修改,協議版本為第二版或(隨你)更新的版本。\r\n\r\n我們希望發佈的這款程式有用但不保證甚至不保證它有經濟價值和適合特定用途。詳情參見GNU通用公共授權合約。\r\n\r\n你理當已收到一份GNU通用公共授權合約的副本如果沒有請填寫郵件到 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA"
IDS_ABOUT "關於(&A)..."
IDS_TITLE "字元對應表"
IDS_UNICODE "Unicode"
IDS_ALL "All"
END

View File

@@ -4,90 +4,65 @@
* FILE: base/applications/charmap/map.c
* PURPOSE: class implementation for painting glyph region
* COPYRIGHT: Copyright 2007 Ged Murphy <gedmurphy@reactos.org>
* Copyright 2022 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*
*/
#include "precomp.h"
#include <stdlib.h>
#include <winnls.h>
static const WCHAR szMapWndClass[] = L"FontMapWnd";
static const WCHAR szLrgCellWndClass[] = L"LrgCellWnd";
#define MAX_ROWS (0xFFFF / XCELLS) + 1 - YCELLS
static
VOID
SetGrid(PMAP infoPtr)
{
INT x, y;
for (y = 0; y < YCELLS; y++)
for (x = 0; x < XCELLS; x++)
{
infoPtr->Cells[y][x].CellExt.left = x * infoPtr->CellSize.cx + 1;
infoPtr->Cells[y][x].CellExt.top = y * infoPtr->CellSize.cy + 1;
infoPtr->Cells[y][x].CellExt.right = (x + 1) * infoPtr->CellSize.cx + 2;
infoPtr->Cells[y][x].CellExt.bottom = (y + 1) * infoPtr->CellSize.cy + 2;
CopyRect(&infoPtr->Cells[y][x].CellInt,
&infoPtr->Cells[y][x].CellExt);
InflateRect(&infoPtr->Cells[y][x].CellInt,
-1,
-1);
}
}
static
VOID
DrawActiveCell(PMAP infoPtr,
HDC hdc)
{
Rectangle(hdc,
infoPtr->pActiveCell->CellInt.left,
infoPtr->pActiveCell->CellInt.top,
infoPtr->pActiveCell->CellInt.right,
infoPtr->pActiveCell->CellInt.bottom);
}
static
VOID
DrawGrid(PMAP infoPtr,
PAINTSTRUCT *ps)
{
INT x, y;
RECT rc;
PCELL Cell;
for (y = 0; y < YCELLS; y++)
for (x = 0; x < XCELLS; x++)
{
Cell = &infoPtr->Cells[y][x];
Cell->CellExt.left = x * infoPtr->CellSize.cx + 1;
Cell->CellExt.top = y * infoPtr->CellSize.cy + 1;
Cell->CellExt.right = (x + 1) * infoPtr->CellSize.cx + 2;
Cell->CellExt.bottom = (y + 1) * infoPtr->CellSize.cy + 2;
if (!IntersectRect(&rc,
&ps->rcPaint,
&Cell->CellExt))
{
continue;
}
Cell->CellInt = Cell->CellExt;
Rectangle(ps->hdc,
Cell->CellExt.left,
Cell->CellExt.top,
Cell->CellExt.right,
Cell->CellExt.bottom);
if (infoPtr->pActiveCell == Cell)
{
DrawActiveCell(infoPtr, ps->hdc);
}
InflateRect(&Cell->CellInt, -1, -1);
}
}
static
VOID
UpdateCells(PMAP infoPtr)
{
INT x, y;
INT i = XCELLS * infoPtr->iYStart;
WCHAR ch;
PCELL Cell;
for (y = 0; y < YCELLS; ++y)
{
for (x = 0; x < XCELLS; ++x, ++i)
{
if (i < infoPtr->NumValidGlyphs)
ch = (WCHAR)infoPtr->ValidGlyphs[i];
else
ch = 0xFFFF;
Cell = &infoPtr->Cells[y][x];
Cell->ch = ch;
}
}
}
static
VOID
@@ -95,46 +70,66 @@ FillGrid(PMAP infoPtr,
PAINTSTRUCT *ps)
{
HFONT hOldFont;
WCHAR ch;
INT x, y;
RECT rc;
PCELL Cell;
INT i, added;
INT i;
HBRUSH hOldBrush, hbrGray = (HBRUSH)GetStockObject(LTGRAY_BRUSH);
HPEN hOldPen, hPenGray = CreatePen(PS_SOLID, 1, RGB(140, 140, 140));
hOldFont = SelectObject(ps->hdc,
infoPtr->hFont);
UpdateCells(infoPtr);
hOldFont = SelectObject(ps->hdc, infoPtr->hFont);
hOldPen = SelectObject(ps->hdc, GetStockObject(BLACK_PEN));
hOldBrush = SelectObject(ps->hdc, GetStockObject(WHITE_BRUSH));
i = XCELLS * infoPtr->iYStart;
added = 0;
for (y = 0; y < YCELLS; y++)
for (x = 0; x < XCELLS; x++)
{
ch = (WCHAR)infoPtr->ValidGlyphs[i];
Cell = &infoPtr->Cells[y][x];
if (IntersectRect(&rc,
&ps->rcPaint,
&Cell->CellExt))
for (x = 0; x < XCELLS; x++, i++)
{
Cell->ch = ch;
Cell = &infoPtr->Cells[y][x];
if (!IntersectRect(&rc, &ps->rcPaint, &Cell->CellExt))
continue;
DrawTextW(ps->hdc,
&ch,
1,
&Cell->CellInt,
DT_CENTER | DT_VCENTER | DT_SINGLELINE);
rc = Cell->CellExt;
Rectangle(ps->hdc, rc.left, rc.top, rc.right, rc.bottom);
added++;
if (i < infoPtr->NumValidGlyphs)
{
DrawTextW(ps->hdc, &Cell->ch, 1, &Cell->CellInt,
DT_CENTER | DT_VCENTER | DT_SINGLELINE);
if (Cell == infoPtr->pActiveCell)
{
rc = Cell->CellInt;
/* Draw gray box */
SelectObject(ps->hdc, GetStockObject(NULL_BRUSH));
SelectObject(ps->hdc, hPenGray);
Rectangle(ps->hdc, rc.left, rc.top, rc.right, rc.bottom);
SelectObject(ps->hdc, hOldPen);
SelectObject(ps->hdc, hOldBrush);
if (GetFocus() == infoPtr->hMapWnd)
{
/* Draw focus rectangle */
InflateRect(&rc, -1, -1);
DrawFocusRect(ps->hdc, &rc);
}
}
}
else
{
FillRect(ps->hdc, &Cell->CellInt, hbrGray);
}
}
i++;
ch = (WCHAR)i;
}
SelectObject(ps->hdc,
hOldFont);
SelectObject(ps->hdc, hOldFont);
SelectObject(ps->hdc, hOldPen);
SelectObject(ps->hdc, hOldBrush);
DeleteObject(hPenGray);
}
@@ -142,19 +137,11 @@ static
BOOL
CreateLargeCell(PMAP infoPtr)
{
RECT rLarge;
RECT rLarge = infoPtr->pActiveCell->CellExt;
CopyRect(&rLarge,
&infoPtr->pActiveCell->CellExt);
MapWindowPoints(infoPtr->hMapWnd, infoPtr->hParent, (LPPOINT)&rLarge, 2);
MapWindowPoints(infoPtr->hMapWnd,
infoPtr->hParent,
(VOID*)&rLarge,
2);
InflateRect(&rLarge,
XLARGE - XCELLS,
YLARGE - YCELLS);
InflateRect(&rLarge, XLARGE - XCELLS, YLARGE - YCELLS);
infoPtr->hLrgWnd = CreateWindowExW(0,
szLrgCellWndClass,
@@ -179,19 +166,11 @@ static
VOID
MoveLargeCell(PMAP infoPtr)
{
RECT rLarge;
RECT rLarge = infoPtr->pActiveCell->CellExt;
CopyRect(&rLarge,
&infoPtr->pActiveCell->CellExt);
MapWindowPoints(infoPtr->hMapWnd, infoPtr->hParent, (LPPOINT)&rLarge, 2);
MapWindowPoints(infoPtr->hMapWnd,
infoPtr->hParent,
(VOID*)&rLarge,
2);
InflateRect(&rLarge,
XLARGE - XCELLS,
YLARGE - YCELLS);
InflateRect(&rLarge, XLARGE - XCELLS, YLARGE - YCELLS);
MoveWindow(infoPtr->hLrgWnd,
rLarge.left,
@@ -200,9 +179,39 @@ MoveLargeCell(PMAP infoPtr)
rLarge.bottom - rLarge.top,
TRUE);
InvalidateRect(infoPtr->hLrgWnd,
NULL,
TRUE);
InvalidateRect(infoPtr->hLrgWnd, NULL, TRUE);
}
static
VOID
GetPossibleCharacters(WCHAR* ch, INT chLen, INT codePageIdx)
{
INT i, j;
ZeroMemory(ch, sizeof(ch[0]) * chLen);
if (codePageIdx <= 0 || codePageIdx > SIZEOF(codePages))
{
/* this is unicode, so just load up the first MAX_GLYPHS characters
start at 0x21 to bypass whitespace characters */
INT len = min(MAX_GLYPHS, chLen);
for (i = 0x21, j = 0; i < len; i++)
ch[j++] = (WCHAR)i;
}
else
{
/* This is a codepage, so use NLS to translate the first 256 characters */
CHAR multiByteString[256] = { 0 };
for (i = 0x21; i < SIZEOF(multiByteString); i++)
multiByteString[i] = (CHAR)i;
if (!MultiByteToWideChar(codePages[codePageIdx - 1], 0, multiByteString, sizeof(multiByteString), ch, chLen))
{
/* Failed for some reason, so clear the array */
memset(ch, 0, sizeof(ch[0]) * chLen);
}
}
}
@@ -230,9 +239,9 @@ SetFont(PMAP infoPtr,
infoPtr->CurrentFont.lfHeight = GetDeviceCaps(hdc, LOGPIXELSY) / 5;
infoPtr->CurrentFont.lfCharSet = DEFAULT_CHARSET;
wcsncpy(infoPtr->CurrentFont.lfFaceName,
lpFontName,
sizeof(infoPtr->CurrentFont.lfFaceName) / sizeof(infoPtr->CurrentFont.lfFaceName[0]));
lstrcpynW(infoPtr->CurrentFont.lfFaceName,
lpFontName,
SIZEOF(infoPtr->CurrentFont.lfFaceName));
infoPtr->hFont = CreateFontIndirectW(&infoPtr->CurrentFont);
@@ -240,14 +249,12 @@ SetFont(PMAP infoPtr,
NULL,
TRUE);
infoPtr->pActiveCell = &infoPtr->Cells[0][0];
// Get all the valid glyphs in this font
SelectObject(hdc, infoPtr->hFont);
for (i = 0; i < MAX_GLYPHS; i++)
ch[i] = (WCHAR)i;
// Get the code page associated with the selected 'character set'
GetPossibleCharacters(ch, MAX_GLYPHS, infoPtr->CharMap);
if (GetGlyphIndicesW(hdc,
ch,
@@ -256,9 +263,9 @@ SetFont(PMAP infoPtr,
GGI_MARK_NONEXISTING_GLYPHS) != GDI_ERROR)
{
j = 0;
for (i = ' ' + 1; i < MAX_GLYPHS; i++)
for (i = 0; i < MAX_GLYPHS; i++)
{
if (out[i] != 0xffff)
if (out[i] != 0xffff && out[i] != 0x0000 && ch[i] != 0x0000)
{
infoPtr->ValidGlyphs[j] = ch[i];
j++;
@@ -308,43 +315,97 @@ NotifyParentOfSelection(PMAP infoPtr,
static
VOID
OnClick(PMAP infoPtr,
WORD ptx,
WORD pty)
LimitCaretXY(PMAP infoPtr, INT *pX, INT *pY)
{
INT x, y;
INT i, X = *pX, Y = *pY, iYStart = infoPtr->iYStart;
x = ptx / max(1, infoPtr->CellSize.cx);
y = pty / max(1, infoPtr->CellSize.cy);
/* if the cell is not already active */
if (!infoPtr->Cells[y][x].bActive)
i = XCELLS * (iYStart + Y) + X;
while (i >= infoPtr->NumValidGlyphs)
{
/* set previous active cell to inactive */
if (infoPtr->pActiveCell)
if (X > 0)
{
/* invalidate normal cells, required when
* moving a small active cell via keyboard */
if (!infoPtr->pActiveCell->bLarge)
{
InvalidateRect(infoPtr->hMapWnd,
&infoPtr->pActiveCell->CellInt,
TRUE);
}
infoPtr->pActiveCell->bActive = FALSE;
infoPtr->pActiveCell->bLarge = FALSE;
--X;
}
else
{
X = XCELLS - 1;
--Y;
}
i = XCELLS * (iYStart + Y) + X;
}
/* set new cell to active */
infoPtr->pActiveCell = &infoPtr->Cells[y][x];
infoPtr->pActiveCell->bActive = TRUE;
infoPtr->pActiveCell->bLarge = TRUE;
*pX = X;
*pY = Y;
}
static
VOID
SetCaretXY(PMAP infoPtr, INT X, INT Y, BOOL bLarge, BOOL bInvalidateAll)
{
/* set previous active cell to inactive */
if (!bInvalidateAll)
{
InvalidateRect(infoPtr->hMapWnd,
&infoPtr->pActiveCell->CellInt,
FALSE);
}
LimitCaretXY(infoPtr, &X, &Y);
infoPtr->CaretX = X;
infoPtr->CaretY = Y;
UpdateCells(infoPtr);
/* set new cell to active */
infoPtr->pActiveCell = &infoPtr->Cells[Y][X];
if (!bInvalidateAll)
{
InvalidateRect(infoPtr->hMapWnd,
&infoPtr->pActiveCell->CellInt,
FALSE);
}
/* Create if needed */
if (bLarge)
{
if (infoPtr->hLrgWnd)
MoveLargeCell(infoPtr);
else
CreateLargeCell(infoPtr);
}
else
{
/* Destroy large window */
if (infoPtr->hLrgWnd)
{
DestroyWindow(infoPtr->hLrgWnd);
infoPtr->hLrgWnd = NULL;
}
}
if (bInvalidateAll)
InvalidateRect(infoPtr->hMapWnd, NULL, FALSE);
UpdateStatusBar(infoPtr->pActiveCell->ch);
}
static
VOID
OnClick(PMAP infoPtr,
WORD ptx,
WORD pty)
{
/*
* Find the cell the mouse pointer is over.
* Since each cell is the same size, this can be done quickly using CellSize.
* Clamp to XCELLS - 1 and YCELLS - 1 because the map can sometimes be slightly
* larger than infoPtr.CellSize * XCELLS , due to the map size being a non integer
* multiple of infoPtr.CellSize .
*/
INT x = min(XCELLS - 1, ptx / max(1, infoPtr->CellSize.cx));
INT y = min(YCELLS - 1, pty / max(1, infoPtr->CellSize.cy));
SetCaretXY(infoPtr, x, y, TRUE, FALSE);
}
@@ -355,45 +416,30 @@ MapOnCreate(PMAP infoPtr,
HWND hParent)
{
RECT rc;
BOOL Ret = FALSE;
infoPtr = HeapAlloc(GetProcessHeap(),
0,
sizeof(MAP));
if (infoPtr)
{
SetLastError(0);
SetWindowLongPtrW(hwnd,
0,
(DWORD_PTR)infoPtr);
if (GetLastError() == 0)
{
ZeroMemory(infoPtr,
sizeof(MAP));
infoPtr = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(MAP));
if (!infoPtr)
return FALSE;
infoPtr->hMapWnd = hwnd;
infoPtr->hParent = hParent;
SetWindowLongPtrW(hwnd, 0, (LONG_PTR)infoPtr);
GetClientRect(hwnd, &rc);
infoPtr->ClientSize.cx = rc.right;
infoPtr->ClientSize.cy = rc.bottom;
infoPtr->CellSize.cx = infoPtr->ClientSize.cx / XCELLS;
infoPtr->CellSize.cy = infoPtr->ClientSize.cy / YCELLS;
infoPtr->hMapWnd = hwnd;
infoPtr->hParent = hParent;
infoPtr->pActiveCell = NULL;
GetClientRect(hwnd, &rc);
infoPtr->ClientSize.cx = rc.right;
infoPtr->ClientSize.cy = rc.bottom;
infoPtr->CellSize.cx = infoPtr->ClientSize.cx / XCELLS;
infoPtr->CellSize.cy = infoPtr->ClientSize.cy / YCELLS;
SetGrid(infoPtr);
infoPtr->pActiveCell = &infoPtr->Cells[0][0];
SetScrollPos(infoPtr->hParent, SB_VERT, 0, TRUE);
SetGrid(infoPtr);
Ret = TRUE;
}
}
return Ret;
SetScrollPos(infoPtr->hParent, SB_VERT, 0, TRUE);
return TRUE;
}
static
VOID
OnVScroll(PMAP infoPtr,
@@ -401,6 +447,7 @@ OnVScroll(PMAP infoPtr,
INT Pos)
{
INT iYDiff, iOldYStart = infoPtr->iYStart;
INT X, Y;
switch (Value)
{
@@ -424,13 +471,30 @@ OnVScroll(PMAP infoPtr,
infoPtr->iYStart = Pos;
break;
default:
case SB_TOP:
infoPtr->iYStart = 0;
SetCaretXY(infoPtr, 0, 0, FALSE, TRUE);
return;
case SB_BOTTOM:
infoPtr->iYStart = infoPtr->NumRows;
SetCaretXY(infoPtr, XCELLS - 1, YCELLS - 1, FALSE, TRUE);
break;
}
default:
break;
}
infoPtr->iYStart = max(0, infoPtr->iYStart);
infoPtr->iYStart = min(infoPtr->iYStart, infoPtr->NumRows);
UpdateCells(infoPtr);
X = infoPtr->CaretX;
Y = infoPtr->CaretY;
LimitCaretXY(infoPtr, &X, &Y);
SetCaretXY(infoPtr, X, Y, IsWindow(infoPtr->hLrgWnd), FALSE);
iYDiff = iOldYStart - infoPtr->iYStart;
if (iYDiff)
{
@@ -447,6 +511,15 @@ OnVScroll(PMAP infoPtr,
if (abs(iYDiff) < YCELLS)
{
RECT rect;
/* Invalidate the rect around the active cell since a new cell will become active */
if (infoPtr->pActiveCell)
{
InvalidateRect(infoPtr->hMapWnd,
&infoPtr->pActiveCell->CellExt,
TRUE);
}
GetClientRect(infoPtr->hMapWnd, &rect);
rect.top += 2;
rect.bottom -= 2;
@@ -471,6 +544,8 @@ OnVScroll(PMAP infoPtr,
ShowWindow(infoPtr->hLrgWnd, SW_SHOW);
}
}
UpdateStatusBar(infoPtr->pActiveCell->ch);
}
@@ -482,38 +557,172 @@ OnPaint(PMAP infoPtr,
PAINTSTRUCT ps;
HDC hdc;
if (wParam != 0)
{
if (!GetUpdateRect(infoPtr->hMapWnd,
&ps.rcPaint,
TRUE))
{
if (!GetUpdateRect(infoPtr->hMapWnd, &ps.rcPaint, TRUE))
return;
}
ps.hdc = (HDC)wParam;
}
else
{
hdc = BeginPaint(infoPtr->hMapWnd,
&ps);
hdc = BeginPaint(infoPtr->hMapWnd, &ps);
if (hdc == NULL)
{
return;
}
}
DrawGrid(infoPtr, &ps);
FillGrid(infoPtr, &ps);
if (wParam == 0)
{
EndPaint(infoPtr->hMapWnd,
&ps);
EndPaint(infoPtr->hMapWnd, &ps);
}
}
static
VOID
MoveUpDown(PMAP infoPtr, INT DY)
{
INT Y = infoPtr->CaretY;
if (DY < 0) /* Move Up */
{
if (Y <= 0)
{
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_LINEUP, 0), 0);
return;
}
Y -= 1;
}
else if (DY > 0) /* Move Down */
{
if (Y + 1 >= YCELLS)
{
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_LINEDOWN, 0), 0);
return;
}
Y += 1;
}
SetCaretXY(infoPtr, infoPtr->CaretX, Y, IsWindow(infoPtr->hLrgWnd), FALSE);
}
static
VOID
MoveLeftRight(PMAP infoPtr, INT DX)
{
INT X = infoPtr->CaretX;
INT Y = infoPtr->CaretY;
if (DX < 0) /* Move Left */
{
if (X <= 0) /* at left edge */
{
if (Y <= 0) /* at top */
{
Y = 0;
if (infoPtr->iYStart > 0)
X = XCELLS - 1;
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_LINEUP, 0), 0);
}
else
{
X = XCELLS - 1;
Y -= 1;
}
}
else /* Not at left edge */
{
X -= 1;
}
}
else if (DX > 0) /* Move Right */
{
if (X + 1 >= XCELLS) /* at right edge */
{
if (Y + 1 >= YCELLS) /* at bottom */
{
Y = YCELLS - 1;
if (infoPtr->iYStart < infoPtr->NumRows)
X = 0;
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_LINEDOWN, 0), 0);
}
else
{
X = 0;
Y += 1;
}
}
else
{
X += 1;
}
}
SetCaretXY(infoPtr, X, Y, IsWindow(infoPtr->hLrgWnd), FALSE);
}
static
VOID
OnKeyDown(PMAP infoPtr, WPARAM wParam, LPARAM lParam)
{
BOOL bCtrlDown = (GetKeyState(VK_CONTROL) < 0);
switch (wParam)
{
case VK_UP:
if (bCtrlDown)
SetCaretXY(infoPtr, infoPtr->CaretX, 0, FALSE, FALSE);
else
MoveUpDown(infoPtr, -1);
break;
case VK_DOWN:
if (bCtrlDown)
SetCaretXY(infoPtr, infoPtr->CaretX, YCELLS - 1, FALSE, FALSE);
else
MoveUpDown(infoPtr, +1);
break;
case VK_LEFT:
if (bCtrlDown)
SetCaretXY(infoPtr, 0, infoPtr->CaretY, FALSE, FALSE);
else
MoveLeftRight(infoPtr, -1);
break;
case VK_RIGHT:
if (bCtrlDown)
SetCaretXY(infoPtr, XCELLS - 1, infoPtr->CaretY, FALSE, FALSE);
else
MoveLeftRight(infoPtr, +1);
break;
case VK_PRIOR: /* Page Up */
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_PAGEUP, 0), 0);
break;
case VK_NEXT: /* Page Down */
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_PAGEDOWN, 0), 0);
break;
case VK_HOME:
if (bCtrlDown)
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_TOP, 0), 0);
else
SetCaretXY(infoPtr, 0, infoPtr->CaretY, FALSE, FALSE);
break;
case VK_END:
if (bCtrlDown)
SendMessageW(infoPtr->hMapWnd, WM_VSCROLL, MAKEWPARAM(SB_BOTTOM, 0), 0);
else
SetCaretXY(infoPtr, XCELLS - 1, infoPtr->CaretY, FALSE, FALSE);
break;
}
}
LRESULT
CALLBACK
@@ -522,11 +731,9 @@ MapWndProc(HWND hwnd,
WPARAM wParam,
LPARAM lParam)
{
PMAP infoPtr;
PMAP infoPtr = (PMAP)GetWindowLongPtrW(hwnd, 0);
LRESULT Ret = 0;
infoPtr = (PMAP)GetWindowLongPtrW(hwnd,
0);
WCHAR lfFaceName[LF_FACESIZE];
switch (uMsg)
{
@@ -542,12 +749,16 @@ MapWndProc(HWND hwnd,
break;
}
case WM_KEYDOWN:
{
OnKeyDown(infoPtr, wParam, lParam);
break;
}
case WM_LBUTTONDOWN:
{
OnClick(infoPtr,
LOWORD(lParam),
HIWORD(lParam));
SetFocus(hwnd);
OnClick(infoPtr, LOWORD(lParam), HIWORD(lParam));
break;
}
@@ -555,40 +766,45 @@ MapWndProc(HWND hwnd,
{
if (wParam & MK_LBUTTON)
{
OnClick(infoPtr,
LOWORD(lParam),
HIWORD(lParam));
OnClick(infoPtr, LOWORD(lParam), HIWORD(lParam));
}
break;
}
case WM_LBUTTONDBLCLK:
{
if (!infoPtr->pActiveCell || GetFocus() != hwnd)
break;
NotifyParentOfSelection(infoPtr,
FM_SETCHAR,
infoPtr->pActiveCell->ch);
if (infoPtr->pActiveCell->bLarge)
if (infoPtr->hLrgWnd)
{
DestroyWindow(infoPtr->hLrgWnd);
infoPtr->hLrgWnd = NULL;
}
infoPtr->pActiveCell->bLarge = FALSE;
break;
}
case WM_VSCROLL:
{
OnVScroll(infoPtr,
LOWORD(wParam),
HIWORD(wParam));
OnVScroll(infoPtr, LOWORD(wParam), HIWORD(wParam));
break;
}
case FM_SETCHARMAP:
infoPtr->CaretX = infoPtr->CaretY = infoPtr->iYStart = 0;
infoPtr->CharMap = LOWORD(wParam);
wcsncpy(lfFaceName,
infoPtr->CurrentFont.lfFaceName,
SIZEOF(lfFaceName));
SetFont(infoPtr, lfFaceName);
break;
case FM_SETFONT:
infoPtr->CaretX = infoPtr->CaretY = infoPtr->iYStart = 0;
SetFont(infoPtr, (LPWSTR)lParam);
break;
@@ -602,32 +818,27 @@ MapWndProc(HWND hwnd,
return (LRESULT)infoPtr->hFont;
case WM_PAINT:
{
OnPaint(infoPtr,
wParam);
OnPaint(infoPtr, wParam);
break;
}
case WM_DESTROY:
{
DeleteObject(infoPtr->hFont);
HeapFree(GetProcessHeap(),
0,
infoPtr);
SetWindowLongPtrW(hwnd,
0,
(DWORD_PTR)NULL);
HeapFree(GetProcessHeap(), 0, infoPtr);
SetWindowLongPtrW(hwnd, 0, (LONG_PTR)NULL);
break;
case WM_GETDLGCODE:
return DLGC_WANTARROWS;
case WM_SETFOCUS:
case WM_KILLFOCUS:
if (!infoPtr->hLrgWnd)
InvalidateRect(hwnd, &(infoPtr->pActiveCell->CellInt), FALSE);
break;
}
default:
{
Ret = DefWindowProcW(hwnd,
uMsg,
wParam,
lParam);
Ret = DefWindowProcW(hwnd, uMsg, wParam, lParam);
break;
}
}
return Ret;
@@ -663,9 +874,6 @@ RegisterMapClasses(HINSTANCE hInstance)
VOID
UnregisterMapClasses(HINSTANCE hInstance)
{
UnregisterClassW(szMapWndClass,
hInstance);
UnregisterClassW(szLrgCellWndClass,
hInstance);
UnregisterClassW(szMapWndClass, hInstance);
UnregisterClassW(szLrgCellWndClass, hInstance);
}

View File

@@ -19,10 +19,17 @@
#define XLARGE 45
#define YLARGE 25
#define FM_SETFONT (WM_USER + 1)
#define FM_GETCHAR (WM_USER + 2)
#define FM_SETCHAR (WM_USER + 3)
#define FM_GETHFONT (WM_USER + 4)
#define FM_SETFONT (WM_USER + 1)
#define FM_GETCHAR (WM_USER + 2)
#define FM_SETCHAR (WM_USER + 3)
#define FM_GETHFONT (WM_USER + 4)
#define FM_SETCHARMAP (WM_USER + 5)
// the code pages to display in the advanced 'character set' combobox
static const UINT codePages[] = {
864, 775, 863, 855, 737, 856, 862, 861, 852, 869, 850, 858, 865, 860, 866, 857, 437, // OEM code pages
1256, 1257, 1250, 1251, 1253, 1255, 932, 949, 1252, 936, 874, 950, 1254, 1258 // ANSI code pages
};
extern HINSTANCE hInstance;
@@ -30,8 +37,6 @@ typedef struct _CELL
{
RECT CellExt;
RECT CellInt;
BOOL bActive;
BOOL bLarge;
WCHAR ch;
} CELL, *PCELL;
@@ -46,12 +51,13 @@ typedef struct _MAP
PCELL pActiveCell;
HFONT hFont;
LOGFONTW CurrentFont;
INT CaretX, CaretY;
INT iYStart;
INT NumRows;
INT CharMap;
USHORT ValidGlyphs[MAX_GLYPHS];
USHORT NumValidGlyphs;
} MAP, *PMAP;
typedef struct {

View File

@@ -28,3 +28,5 @@
#define IDS_LICENSE 1010
#define IDS_ABOUT 1011
#define IDS_TITLE 1012
#define IDS_UNICODE 1013
#define IDS_ALL 1014

View File

@@ -1,14 +1,6 @@
PROJECT(CHARMAP)
set_cpp(WITH_RTTI WITH_RUNTIME WITH_EXCEPTIONS)
if(NOT MSVC)
# HACK: this should be enabled globally!
add_compile_flags_language("-std=c++11" "CXX")
endif()
include_directories(
${REACTOS_SOURCE_DIR}/sdk/lib/atl
includes)
list(APPEND SOURCE
@@ -21,7 +13,8 @@ add_library(charmap MODULE
charmap.rc)
set_module_type(charmap win32gui UNICODE)
target_link_libraries(charmap uuid wine)
target_link_libraries(charmap uuid wine cpprt atl_classes)
set_target_cpp_properties(charmap WITH_EXCEPTIONS WITH_RTTI)
add_importlibs(charmap advapi32 user32 gdi32 comctl32 version msvcrt kernel32 ole32 uxtheme ntdll)
add_pch(charmap precomp.h SOURCE)
add_cd_file(TARGET charmap DESTINATION reactos/system32 FOR all)

View File

@@ -155,7 +155,7 @@ CGridView::UpdateCellCoordinates(
)
{
// Go through all the cells and calculate
// their coordinates within the grid
// their coordinates within the grid
for (int y = 0; y < m_yNumCells; y++)
for (int x = 0; x < m_xNumCells; x++)
{
@@ -262,7 +262,6 @@ VOID
CGridView::OnVScroll(_In_ INT Value,
_In_ INT Pos)
{
INT PrevScrollPosition = m_ScrollPosition;
switch (Value)

View File

@@ -99,7 +99,7 @@ CCharMapWindow::Run(void)
{
MSG Msg;
// Pump the message queue
// Pump the message queue
while (GetMessageW(&Msg, NULL, 0, 0) != 0)
{
TranslateMessage(&Msg);
@@ -195,7 +195,7 @@ CCharMapWindow::OnCreate(_In_ HWND hDlg)
}
}
// Add all the fonts to the
// Add all the fonts to the list
if (!CreateFontComboBox())
return FALSE;
@@ -373,9 +373,8 @@ CCharMapWindow::DialogProc(
switch (wParam)
{
case ID_ABOUT:
// Apportion blame
MessageBoxW(This->m_hMainWnd,
L"ReactOS Character Map\r\nCopyright Ged Murphy 2015",
L"ReactOS Character Map\nCopyright Ged Murphy 2015",
L"About",
MB_OK | MB_APPLMODAL);
break;

View File

@@ -18,87 +18,39 @@ IDI_ICON ICON "res/charmap.ico"
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/bg-BG.rc"
#endif
#ifdef LANGUAGE_CA_ES
#include "lang/ca-ES.rc"
#endif
#ifdef LANGUAGE_CS_CZ
#include "lang/cs-CZ.rc"
#endif
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif
#ifdef LANGUAGE_EN_US
#include "lang/en-US.rc"
#endif
#ifdef LANGUAGE_EL_GR
#include "lang/el-GR.rc"
#endif
#ifdef LANGUAGE_ES_ES
#include "lang/es-ES.rc"
#endif
#ifdef LANGUAGE_ET-EE
#include "lang/et-EE.rc"
#endif
#ifdef LANGUAGE_FR_FR
#include "lang/fr-FR.rc"
#endif
#ifdef LANGUAGE_HE_IL
#include "lang/he-IL.rc"
#endif
#ifdef LANGUAGE_ID_ID
#include "lang/id-ID.rc"
#ifdef LANGUAGE_EU_ES
#include "lang/eu-ES.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#endif
#ifdef LANGUAGE_JA_JP
#include "lang/ja-JP.rc"
#endif
#ifdef LANGUAGE_KO_KR
#include "lang/ko-KR.rc"
#endif
#ifdef LANGUAGE_LT_LT
#include "lang/lt-LT.rc"
#endif
#ifdef LANGUAGE_NL_NL
#include "lang/nl-NL.rc"
#endif
#ifdef LANGUAGE_NB_NO
#include "lang/no-NO.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.rc"
#endif
#ifdef LANGUAGE_PT_BR
#include "lang/pt-BR.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#endif
#ifdef LANGUAGE_RU_RU
#include "lang/ru-RU.rc"
#endif
#ifdef LANGUAGE_SK_SK
#include "lang/sk-SK.rc"
#endif
#ifdef LANGUAGE_SQ_AL
#include "lang/sq-AL.rc"
#endif
#ifdef LANGUAGE_SV_SE
#include "lang/sv-SE.rc"
#endif
#ifdef LANGUAGE_TR_TR
#include "lang/tr-TR.rc"
#endif
#ifdef LANGUAGE_UK_UA
#include "lang/uk-UA.rc"
#endif
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_HK
#include "lang/zh-HK.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

View File

@@ -0,0 +1,22 @@
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "ReactOS Zeichentabelle"
BEGIN
LTEXT "Schriftart:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Zu kopierende Zeichen:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Auswählen", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Kopieren", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "Ü&ber..."
IDS_TITLE "Zeichentabelle"
END

View File

@@ -0,0 +1,22 @@
LANGUAGE LANG_SPANISH, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "Mapa de caracteres de ReactOS"
BEGIN
LTEXT "Fuente:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Caracteres para copiar:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Seleccionar", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Copiar", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "A&cerca de..."
IDS_TITLE "Mapa de Caracteres"
END

View File

@@ -0,0 +1,22 @@
LANGUAGE LANG_BASQUE, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "ReactOS karaktere mapa"
BEGIN
LTEXT "Iturri:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Karaktere kpoiatzeko:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Aukeratu", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Copiatu", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "Zer&i buruz..."
IDS_TITLE "Karaktere Mapa"
END

View File

@@ -2,7 +2,7 @@
* PROJECT: ReactOS Character Map
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Italian Translation for ReactOS Character Map
* COPYRIGHT: Bișoc George (fraizeraust99 at gmail dot com)
* COPYRIGHT: George Bișoc (george.bisoc@reactos.org)
*/
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL

View File

@@ -2,7 +2,7 @@
* PROJECT: ReactOS Character Map
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Romanian Translation for ReactOS Character Map
* COPYRIGHT: Bișoc George (fraizeraust99 at gmail dot com)
* COPYRIGHT: George Bișoc (george.bisoc@reactos.org)
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL

View File

@@ -1,23 +1,27 @@
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net), 2018 Ercan Ersoy (ercanersoy) (ercanersoy [at] ercanersoy [dot] net)*/
/* TRANSLATOR:
2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net),
2018 Ercan Ersoy (ercanersoy) (ercanersoy [at] ercanersoy [dot] net),
2021 Süleyman Poyraz (zaryob [dot] dev [at] gmail [dot] com)
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX
CAPTION "ReactOS Karakter Eşlem"
CAPTION "ReactOS Karakter Seçici"
BEGIN
LTEXT "Yazı Tipi:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Çoğaltılacak Karakterler:", IDC_STATIC, 6, 188, 66, 9
LTEXT "Kopyalanacak Karakterler:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Seç", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Çoğalt", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
PUSHBUTTON "Kopyala", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
//CONTROL "Gelişmiş Görünüm", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
// WS_TABSTOP, 8, 208, 95, 10
//LTEXT "Karakter Öbeği:", IDC_STATIC, 8, 8, 48, 8
//LTEXT "Karakter Dizisi:", IDC_STATIC, 8, 8, 48, 8
//COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
//LTEXT "Takımla:", IDC_STATIC, 8, 28, 50, 8
//COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
@@ -31,5 +35,5 @@ END
STRINGTABLE
BEGIN
IDS_ABOUT "&Hakkında"
IDS_TITLE "Karakter Eşlem"
IDS_TITLE "Karakter Seçici"
END

View File

@@ -0,0 +1,30 @@
/*
* PROJECT: ReactOS Character Map
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Chinese (Hong Kong) resource file
* TRANSLATORS: Copyright 2021 Chan Chilung <eason066@gmail.com>
* REFERENCES: Chinese (Traditional) resource file
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 9, "新細明體", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "ReactOS 字元對應表"
BEGIN
LTEXT "字體:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "待複製字元:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "選擇", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "複製", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "關於(&B)..."
IDS_TITLE "字元對應表"
END

View File

@@ -0,0 +1,22 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 9, "新細明體", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "ReactOS 字元對應表"
BEGIN
LTEXT "字體:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "待複製的字元:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "選擇", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "複製", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "關於(&B)..."
IDS_TITLE "字元對應表"
END

View File

@@ -32,7 +32,7 @@ static void SaveClipboardToFile(void)
sfn.lpstrFilter = szFilterMask;
sfn.lpstrFile = szFileName;
sfn.nMaxFile = ARRAYSIZE(szFileName);
sfn.Flags = OFN_PATHMUSTEXIST | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT;
sfn.Flags = OFN_EXPLORER | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT;
sfn.lpstrDefExt = L"clp";
if (!GetSaveFileNameW(&sfn))

View File

@@ -53,6 +53,9 @@ CLPFILE_ICON ICON "res/clpfile.ico"
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.rc"
#endif
#ifdef LANGUAGE_PT_PT
#include "lang/pt-PT.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#endif
@@ -65,6 +68,9 @@ CLPFILE_ICON ICON "res/clpfile.ico"
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_HK
#include "lang/zh-HK.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

View File

@@ -32,8 +32,8 @@ END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "Clipboard Viewer"
STRING_CLIPFILE "Clipboard Element"
STRING_CLIPBOARD "Zwischenablagenanzeige"
STRING_CLIPFILE "Zwischenablagen-Element"
STRING_DELETE_MSG "Soll der Inhalt der Zwischenablage gelöscht werden?"
STRING_DELETE_TITLE "Zwischenablage löschen"
STRING_FORMAT_NT "Zwischenablagedateien für ReactOS (*.clp)"

View File

@@ -2,7 +2,7 @@
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Implementation of Italian language for Clipboard Viewer
* COPYRIGHT: Copyright 2018 Bișoc George (fraizeraust99 at gmail dot com)
* COPYRIGHT: Copyright 2018 George Bișoc (george.bisoc@reactos.org)
*/
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL

View File

@@ -0,0 +1,67 @@
/* Translation and UTF-8 Conversion by Gabriel Aguiar(fgsoftware1) <fgygh5804@gmail.com,fgsoftwarestudio@gmail.com> (July, 2021) */
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
ID_ACCEL ACCELERATORS
BEGIN
VK_DELETE, CMD_DELETE, VIRTKEY
END
MAIN_MENU MENU
BEGIN
POPUP "&Ficheiro"
BEGIN
MENUITEM "&Abrir...", CMD_OPEN
MENUITEM "Guardar &como...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "S&air", CMD_EXIT
END
POPUP "&Editar"
BEGIN
MENUITEM "&Apagar\tDel", CMD_DELETE
END
POPUP "&Ecrã"
BEGIN
MENUITEM "&Automático", CMD_AUTOMATIC
END
POPUP "&Ajuda"
BEGIN
MENUITEM "&Ajuda", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "&Sobre", CMD_ABOUT
END
END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "Visualizador da área de transferência"
STRING_CLIPFILE "Elemento da área de transferência"
STRING_DELETE_MSG "Apagar conteúdos da área de transferência?"
STRING_DELETE_TITLE "Limpar área de transferência"
STRING_FORMAT_NT "Ficheiros da área de transferência para ReactOS (*.clp)"
STRING_FORMAT_GEN "Ficheiros da área de transferência (*.clp)"
END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "Formato desconhecido"
STRING_CF_TEXT "Texto"
STRING_CF_BITMAP "Bitmap"
STRING_CF_OEMTEXT "Texto OEM"
STRING_CF_UNICODETEXT "Texto unicode"
STRING_CF_DIB "DIB Bitmap"
STRING_CF_LOCALE "Dados locais"
STRING_CF_ENHMETAFILE "Ficheiro meta melhorado"
STRING_CF_METAFILEPICT "Ficheiro meta"
STRING_CF_PALETTE "Palete de cores"
STRING_CF_DIBV5 "DIB Bitmap (Version 5)"
STRING_CF_SYLK "Formato de ligação simbólica"
STRING_CF_DIF "Formato de intercâmbio de dados"
STRING_CF_HDROP "Apagar dados"
END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "A área de transferência contém dados num formato não suportado"
ERROR_INVALID_FILE_FORMAT "O ficheiro seleccionado nao é válido"
END

View File

@@ -1,4 +1,8 @@
/* TRANSLATOR: 2015, 2016 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net), 2018 Ercan Ersoy (ercanersoy) (ercanersoy [at] ercanersoy [dot] net) */
/* TRANSLATOR:
2015, 2016 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net),
2018 Ercan Ersoy (ercanersoy) (ercanersoy [at] ercanersoy [dot] net),
2021 Süleyman Poyraz (zaryob [dot] dev [at] gmail [dot] com)
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@@ -36,10 +40,10 @@ STRINGTABLE
BEGIN
STRING_CLIPBOARD "Pano Görüntüleyicisi"
STRING_CLIPFILE "Pano Ögesi"
STRING_DELETE_MSG "Pano içeriğini sil?"
STRING_DELETE_TITLE "Pano Sil"
STRING_FORMAT_NT "ReactOS İçin Pano Kütükleri (*.clp)"
STRING_FORMAT_GEN "Pano Kütükleri (*.clp)"
STRING_DELETE_MSG "Pano içeriği silinsin mi?"
STRING_DELETE_TITLE "Panoyu Temizle"
STRING_FORMAT_NT "ReactOS İçin Pano Dosyaları (*.clp)"
STRING_FORMAT_GEN "Pano Dosyaları (*.clp)"
END
STRINGTABLE
@@ -47,17 +51,17 @@ BEGIN
STRING_CF_UNKNOWN "Bilinmeyen Biçim"
STRING_CF_TEXT "Metin"
STRING_CF_BITMAP "Bit Eşlem"
STRING_CF_OEMTEXT "OEM Metin"
STRING_CF_UNICODETEXT "Evrenlik Kodlu Metin"
STRING_CF_OEMTEXT "OEM Metni"
STRING_CF_UNICODETEXT "Evrensel Kodlu Metin"
STRING_CF_DIB "DIB Bit Eşlem"
STRING_CF_LOCALE "Yerli Veri"
STRING_CF_ENHMETAFILE "Geliştirilmiş Metafile"
STRING_CF_LOCALE "Yerel Veri"
STRING_CF_ENHMETAFILE "Geliştirilmiş Meta Dosyasıs"
STRING_CF_METAFILEPICT "Meta dosyası"
STRING_CF_PALETTE "Renklik"
STRING_CF_DIBV5 "DIB Bit Eşlem (Sürüm 5)"
STRING_CF_SYLK "Simgelik Bağlantı Biçimi"
STRING_CF_SYLK "Sembolik Bağlantı Biçimi"
STRING_CF_DIF "Veri Değiş Tokuş Biçimi"
STRING_CF_HDROP "Bırakma Verisi"
STRING_CF_HDROP "Veriyi Kaldır"
END
STRINGTABLE

View File

@@ -36,7 +36,7 @@ STRINGTABLE
BEGIN
STRING_CLIPBOARD "剪贴板查看程序"
STRING_CLIPFILE "剪贴板元素"
STRING_DELETE_MSG "清空剪贴板的内容吗?"
STRING_DELETE_MSG "清空剪贴板的内容吗"
STRING_DELETE_TITLE "清空剪贴板"
STRING_FORMAT_NT "ReactOS 的剪贴板文件 (*.clp)"
STRING_FORMAT_GEN "剪贴板文件 (*.clp)"
@@ -54,7 +54,7 @@ BEGIN
STRING_CF_ENHMETAFILE "增强型元文件"
STRING_CF_METAFILEPICT "元文件"
STRING_CF_PALETTE "调色板"
STRING_CF_DIBV5 "DIB 位图 (第 5 版)"
STRING_CF_DIBV5 "DIB 位图第 5 版"
STRING_CF_SYLK "符号链接格式"
STRING_CF_DIF "数据交换格式"
STRING_CF_HDROP "删除数据"

View File

@@ -0,0 +1,73 @@
/*
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Chinese (Hong Kong) resource file
* TRANSLATORS: Copyright 2021 Chan Chilung <eason066@gmail.com>
* REFERENCES: Chinese (Traditional) resource file
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
ID_ACCEL ACCELERATORS
BEGIN
VK_DELETE, CMD_DELETE, VIRTKEY
END
MAIN_MENU MENU
BEGIN
POPUP "檔案(&F)"
BEGIN
MENUITEM "開啟(&O)...", CMD_OPEN
MENUITEM "另存新檔(&A)...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "結束(&X)", CMD_EXIT
END
POPUP "編輯(&E)"
BEGIN
MENUITEM "刪除(&D)\tDel", CMD_DELETE
END
POPUP "顯示(&D)"
BEGIN
MENUITEM "自動(&A)", CMD_AUTOMATIC
END
POPUP "説明(&H)"
BEGIN
MENUITEM "説明主題(&H)", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "關於(&A)", CMD_ABOUT
END
END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "剪貼簿檢視器"
STRING_CLIPFILE "剪貼簿項目"
STRING_DELETE_MSG "要清除剪貼簿的內容嗎?"
STRING_DELETE_TITLE "清除剪貼簿"
STRING_FORMAT_NT "ReactOS 剪貼簿檔案 (*.clp)"
STRING_FORMAT_GEN "剪貼簿檔案 (*.clp)"
END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "不明格式"
STRING_CF_TEXT "文字"
STRING_CF_BITMAP "點陣圖"
STRING_CF_OEMTEXT "OEM 文字"
STRING_CF_UNICODETEXT "Unicode 文字"
STRING_CF_DIB "DIB 點陣圖"
STRING_CF_LOCALE "本地日期"
STRING_CF_ENHMETAFILE "增強型圖元檔案"
STRING_CF_METAFILEPICT "圖元檔案"
STRING_CF_PALETTE "調色盤"
STRING_CF_DIBV5 "DIB 點陣圖(第 5 版)"
STRING_CF_SYLK "符號連結格式"
STRING_CF_DIF "資料交換格式"
STRING_CF_HDROP "刪除資料"
END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "剪貼簿內的資料含有不能顯示的格式。"
ERROR_INVALID_FILE_FORMAT "所選的檔案不是一個有效的剪貼簿檔案。"
END

View File

@@ -1,4 +1,10 @@
/* Traditional Chinese translation by Henry Tang Ih 2016 (henrytang2@hotmail.com) */
/*
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Chinese (Traditional) resource file
* TRANSLATORS: Copyright 2016 Henry Tang Ih <henrytang2@hotmail.com>
* Copyright 2021 Chan Chilung <eason066@gmail.com>
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
@@ -11,10 +17,10 @@ MAIN_MENU MENU
BEGIN
POPUP "檔案(&F)"
BEGIN
MENUITEM "開啟...(&O)", CMD_OPEN
MENUITEM "另存為...(&A)", CMD_SAVE_AS
MENUITEM "開啟(&O)...", CMD_OPEN
MENUITEM "另存新檔(&A)...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "退出(&X)", CMD_EXIT
MENUITEM "結束(&X)", CMD_EXIT
END
POPUP "編輯(&E)"
BEGIN
@@ -34,17 +40,17 @@ END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "剪貼簿查看程式"
STRING_CLIPFILE "剪貼簿上的元素"
STRING_DELETE_MSG "清除剪貼簿的內容嗎?"
STRING_CLIPBOARD "剪貼簿檢視器"
STRING_CLIPFILE "剪貼簿項目"
STRING_DELETE_MSG "清除剪貼簿的內容嗎"
STRING_DELETE_TITLE "清除剪貼簿"
STRING_FORMAT_NT "ReactOS 剪貼簿檔案 (*.clp)"
STRING_FORMAT_NT "ReactOS 剪貼簿檔案 (*.clp)"
STRING_FORMAT_GEN "剪貼簿檔案 (*.clp)"
END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "未知的格式"
STRING_CF_UNKNOWN "不明格式"
STRING_CF_TEXT "文字"
STRING_CF_BITMAP "點陣圖"
STRING_CF_OEMTEXT "OEM 文字"
@@ -54,7 +60,7 @@ BEGIN
STRING_CF_ENHMETAFILE "增強型圖元檔案"
STRING_CF_METAFILEPICT "圖元檔案"
STRING_CF_PALETTE "調色盤"
STRING_CF_DIBV5 "DIB 點陣圖 (第 5 版)"
STRING_CF_DIBV5 "DIB 點陣圖第 5 版"
STRING_CF_SYLK "符號連結格式"
STRING_CF_DIF "資料交換格式"
STRING_CF_HDROP "刪除資料"
@@ -62,6 +68,6 @@ END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "剪貼簿中包含格式,不能顯示的資料。"
ERROR_UNSUPPORTED_FORMAT "剪貼簿內的資料包含不能顯示的格式。"
ERROR_INVALID_FILE_FORMAT "所選的檔案不是一個有效的剪貼簿檔案。"
END

View File

@@ -1,5 +1,6 @@
add_subdirectory(at)
add_subdirectory(attrib)
add_subdirectory(certutil)
add_subdirectory(chcp)
add_subdirectory(clip)
add_subdirectory(comp)
@@ -7,6 +8,7 @@ add_subdirectory(cscript)
add_subdirectory(dbgprint)
add_subdirectory(doskey)
add_subdirectory(eventcreate)
add_subdirectory(fc)
add_subdirectory(find)
add_subdirectory(fsutil)
add_subdirectory(help)
@@ -20,8 +22,10 @@ add_subdirectory(reg)
add_subdirectory(schtasks)
add_subdirectory(sort)
add_subdirectory(taskkill)
add_subdirectory(tasklist)
add_subdirectory(timeout)
add_subdirectory(tree)
add_subdirectory(where)
add_subdirectory(whoami)
add_subdirectory(wmic)
add_subdirectory(wscript)

View File

@@ -398,7 +398,7 @@ GetTimeAsJobTime(VOID)
GetLocalTime(&Time);
JobTime = (DWORD_PTR)Time.wHour * 3600000 +
JobTime = (DWORD_PTR)Time.wHour * 3600000 +
(DWORD_PTR)Time.wMinute * 60000;
return JobTime;
@@ -698,7 +698,7 @@ AddJob(
ULONG ulJobId = 0;
NET_API_STATUS Status;
InfoBuffer.JobTime = (DWORD_PTR)ulJobHour * 3600000 +
InfoBuffer.JobTime = (DWORD_PTR)ulJobHour * 3600000 +
(DWORD_PTR)ulJobMinute * 60000;
InfoBuffer.DaysOfMonth = ulDaysOfMonth;
InfoBuffer.DaysOfWeek = ucDaysOfWeek;

View File

@@ -33,3 +33,6 @@
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

Some files were not shown because too many files have changed in this diff Show More