Commit graph

82969 commits

Author SHA1 Message Date
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