0.4.15-dev-5102-g 18d40ebe81 [BOOTDATA] hivesys.inf: Remove redundant fastfat "Start" entry. The one in the [AddReg] section has the very same value.
-------
0.4.15-dev-5012-g e3f8f52f3d [BOOTDATA] Delete "Layout Id" from Japanese/Korean Keyboard Layout
Katayama explained: These registry values are for pre-installed IMEs we don't have. It is safe to remove them also in the older branches.
-------
0.4.15-dev-4352-g cfe387a9b0 [BOOTDATA] Add two missing separating commas in the ServiceGroupOrder List multi-string.
-------
PARTIALLY PICK: 0.4.15-dev-4412-g 94d144f8a5 [BOOTDATA] Fix some services groups
- AudioSrv belongs to "AudioGroup" (and not "Audio" that doesn't exist).
- lanmanworkstation belongs to "NetworkProvider" (without a space).
I dared only to pick the "NetworkProvider" and "AudioGroup" part for now. The MUP part I might do later when actually being able to retest CORE12107 "VMWare tools" myself.
-------
0.4.15-dev-1097-g 0689455bb3 [BOOTDATA] Comment out biosinfo.inf (#3266)
This allows ros to boot with its LiveCD files using MS NTLDR!
I stripped the line here, instead of commenting it as the master commit did. The file does not exist.
-------
Additionally to those backports I cleaned up some of the stuff that was previously commented out and/or broken:
- instead of following 0.4.15-dev-3322-g c6e002bfb3 to fix the Latvian kbdlv1.dll QUERTY->QWERTY typo, I just stripped those lines, as
they are commented out anyway. And were added in the broken and already commented way by 0.4.9-dev-825-g c2089d5319
We never had them active. No such file even.
- Also strip some 'translated' service strings that were just copy-pasted from the english strings section
without actually getting translated at all. The english ones will be used anyway.
It is enough to have that redundant stuff in master to allow translators to see it.
- Also strip the disabled kbdfo.dll Faeroese keyboard layout. Enough to have those commented lines in master as a TODO reminder. Was never active ever. No such file even.
- Also strip the disabled BENGALI_INSCRIPT kbdinben.dll. Where the existing lines even had bugs in the older branches as proven by 0.4.15-dev-3322-g c6e002bfb3
It was always disabled and was neither localizable, nor did it have the correct layout code even. No such file even.
None of those changes will introduce any additional diff or break any existing features.
They just slightly move the already existing diffs position in time towards newer release-branches.
Switches from "FreeMono" and "Dejavu Sans Mono" to "Courier New" and "Lucida Console"
and therefore brings us closer to 2k3sp2 stock fonts. Saves some RAM also.
Deletes some "Ubuntu" font left-overs in some Themes.
CORE-18605 (and partially CORE-16264)
By porting back the following commits:
0.4.15-dev-5362-g c47758b102 [SETUP][INF][MEDIA] Get rid of the last Ubuntu references CORE-18607 (#4871)
0.4.15-dev-5336-g bd40c13f6f [SETUP][BOOTDATA][FONTS][INF] Delete DejaVu Sans Mono and re-map (#4856)
0.4.15-dev-5335-g a4193ade03 [SETUP][FONTS][INF][GDI32_APITEST] Delete FreeMono and re-map (#4852)
0.4.15-dev-5324-g d035452148 [SETUP][INF][ROSTESTS] Delete font substitutions and tests for "DejaVu Sans" (#4829)
0.4.13-dev-768-g dc1aa8010a [FONTS][SETUP][BOOTDATA] Add Lucida Console font (#1793) CORE-16264
0.4.13-dev-750-g faa3237d46 [FONTS][BOOTDATA][SETUP] Add Courier New fonts (#1783)
See https://reactos.org/wiki/ReactOS_Foundation for more information.
the first part of CORE-18191
picked from 0.4.15-dev-4866-g 6881d8c624
Respect:
-Colins wish to leave out for now all the matches in kbdtool for legal uncertainty
-boot_images.cmake on master vs. boot/CMakeLists.txt in older branches
-treating cpu.inf special in this first commit for the sake of keeping sync to all other infs
-unlike master I decided to groom also cdmake, because I don't see any reason yet to dump that
in the older branches
-all releases down to releases/0.4.7 were released for the first time after the "ReactOS foundation"
dissolved already in 2015. So all are definitely fine to receive this commit.
-port back some EOL whitespace fixes as well in common.ver to sync the file to 100% to master head
The main motivation to port all that back is to get rid of Win32K-BSODs 0x50 like CORE-13907
that could be triggered by user-mode-applications.
Technical reason was CORE-14857 "RtlImageNtHeaderEx needs SEH" and issues with hooks+callbacks.
All other tickets mentioned in here were regressions that we experienced on the long
journey towards perfecting the fixes on master head, and those were not happening yet in the older builds,
so they are mentioned in here only to allow tracking where that code went into.
Thanks to Jim Tabor, Mark Jansen & Thomas Faber
By squashed backmerge of the following commits:
0.4.15-dev-3440-g a89844f740
0.4.15-dev-3430-g 9cff384c22
0.4.14-dev-1287-g 568b6d0558
0.4.14-dev-1255-g 177ae91bf6
0.4.14-dev-1241-g 915a5764a9
0.4.14-dev-1240-g d8add40e89
0.4.14-dev-1002-g feb7df42b4
JIRA-tickets: CORE-13907, CORE-16769, CORE-14857, CORE-17856, CORE-17857, partially CORE-13019.
We also had some more dupes of CORE-13907 in JIRA, but I linked all of them (transitively)
towards the initial report, and resolved them without setting a fixVer for them.
In more detail:
--------------
[USER32] Fix BSOD 0x50 in 'WineVDM + Castle Of Winds' CORE-17856 CORE-17857
CORE-17856 BSOD 0x50 when starting Castle of the Winds second time, with WineVDM
CORE-17857 BSOD 0x50 on shutdown after closing Castle of the Winds with WineVDM
0.4.15-dev-3430-g 9cff384c22
0.4.15-dev-3440-g a89844f740
--------------
[NTUSER] Fix Strings and Format to Hooks
Allocate heap instead of data segment to be used for callbacks on user side.
Move and correct initial hook call out setup. Use it in more than one hook call.
This fixes issues with strings out of alignment and use of kernel pointers.
See CORE-13907 (HXD-portable BSOD) and CORE-16769 (HXD-portable exception)
Small wow update.
cherry picked from commit 0.4.14-dev-1287-g 568b6d0558
--------------
[RTL] Introduce RtlpImageNtHeader,
which implements the required functionality.
ntdll and ntoskrnl now have a wrapper for this, with SEH.
This protects the function against malformed / bad images,
whilst still being able to use the code in freeldr et al.
Idea from Thomas.
CORE-14857
cherry picked from commit 0.4.14-dev-1255-g 177ae91bf6
--------------
[WIN32SS] Form Sanity to Hook Callbacks
Fix WH_CALLWNDPROC/RET data to user hook calls.
Helps with CORE-13907 "(HXD-portable BSOD)"
Fixes the logging of "(win32ss/user/ntuser/callback.c:748) err: Failure to make Callback! Status 0xc00000fd" within CORE-13019, but not the whole ticket.
cherry picked from commit 0.4.14-dev-1241-g 915a5764a9
--------------
[USER32] Fix null return.
See CORE-16769 "HxD 1.7.7.0 portable unhandled exception"
cherry picked from commit 0.4.14-dev-1240-g d8add40e89
--------------
[WIN32SS] Fix a typo in dbg print
cherry picked from commit 0.4.14-dev-1002-g feb7df42b4
This will avoid triggering a FAT repair on
unclean FAT volumes.
If dosfstools.fsck works fine in Linux, its
usage on ReactOS triggers worse corruption
than unclean shutdown.
'autochk during OS startup' has been added during 0.4.9-dev-xxxx.
Given I've no time for debugging this, I
kill it off. This is just a workaround of course.
For now the best chances to repair a FAT FS corruption after non-clean-shutdown
is to mount that FS within 2k3sp2 and give the MS chkdsk an attempt to repair it.
Success is not guaranteed, but it works surprisingly often.
The earlier you do that after non-clean-shutdown,
the better your chances for success will be.
The workaround was picked from
0.4.13-dev-169-g ab69736a1d
0.4.10-dev-379-g 3b6faba11a (partially, just enough to support the early-bailout)
Although the new layout that I committed in the previous commit
was favored by community ratings votes 8:0,
some devs still preferred the old layout with the bigger logo
because they liked the easteregg. So this commit restores
that.
But it syncs to that features latest&greatest implementation
we have in 0.4.15-dev-1685-gd0c237a instead of reverting the
previous commit to not unnecessarily have many bugs with it
that were still affecting the older releases beforehand.
Aside from the general tabs dialogs layout this commit does
also fix some minor issues in the translations for the oldest
branches in pl-PL, jp-JA, zh-CN and zh-TW.
And it fixes an x64 issue in general.c for 0.4.7 and 0.4.8.
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)
and 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.
sysdm.cpl binary size I18N=all
master before 925.696bytes after 705.024bytes gcc 8.4.0 dbg RosBE2.2.1
0.4.14 before 923.136bytes after 702.464bytes gcc 8.4.0 dbg RosBE2.2.1
0.4.13 before 904.192bytes after 684.544bytes gcc 4.7.2 dbg RosBE2.1.6
0.4.12 before 881.664bytes after 665.600bytes gcc 4.7.2 dbg RosBE2.1.6
0.4.11 before 836.096bytes after 618.496bytes gcc 4.7.2 dbg RosBE2.1.6
0.4.10 before 806.912bytes after 588.800bytes gcc 4.7.2 dbg RosBE2.1.6
0.4. 9 before 788.480bytes after 585.728bytes gcc 4.7.2 dbg RosBE2.1.6
0.4. 8 before 788.480bytes after 585.728bytes gcc 4.7.2 dbg RosBE2.1.6
0.4. 7 before 788.992bytes after 585.728bytes gcc 4.7.2 dbg RosBE2.1.6
readme.txt still fits into a single NTFS cluster afterwards with 3702bytes
Also a very! soft update of some translations ported back.
Instead of loading systemcompatible.manifest as the implicit activation context, load forwardcompatible.manifest
Add a new assembly containing all apisets called ReactOS.Apisets and make it a dependency to forwardcompatible.manifest
- In HKLM\SYSTEM\CurrentControlSet\Control\Windows, add "Directory"
and "SystemDirectory" values, giving the ReactOS installation
directories (purely informative).
- Also add the "ErrorMode" value that specifies how the hard-error
popups are displayed. This value will be used later.
- Fix event log sources ordering.
[ROSLOAD]: Stubplement OslpCheckForcedFailure, OslpGetSetBootStatusData, OslSetBootStatusData, OslGetBootStatusData.
[ROSLOAD]: Stub OslpInitializeBootStatusDataLog, OslpReadWriteBootStatusData.
[BOOTLIB]: Fix BlAppendBootOptionString to accept an actual BCD ID instead of hardcoding LibraryPath.
[BOOTLIB]: Fix BlAppendBootOptionBoolean to accept an actual BOOLEAN value instead of hardcoding TRUE.
[BOOTLIB]: Implement BlDeviceIsVirtualPartitionDevice.
[BOOTLIB]: Add missing BcdOSLoaderInteger_ForceFailure BCD value. Add BCDE_OSLOADER_TYPE_BOOT_STATUS_POLICY based on BcdEdit.exe and Geoff Chappel site.
[ROSLOAD]: Stubs for OslFatalErrorEx, OslAbortBoot.
OslpSanitizeLoadOptionsString, OslpSanitizeStringOptions
[ROSLOAD]: Implement OslBlStatusErrorHandler,
OslpRemoveInternalApplicationOptions
[ROSLOAD]: Begin work on OslPrepareTarget. Small misc. fixes.
[BOOTLIB]: Extend BlStatusError to handle a custom status error handler.
[ROSLOAD]: Implement OslExecuteTransition, OslArchKernelSetup,
ArchRestoreProcessorFeatures, OslArchTransferToKernel.
[ROSLOAD]: Factor out the logo code. Clean ups.
[ROSLOAD]: The IA32_MISC_ENABLE MSR bit actually _disables_ NX, so
diabling the bit _enables_ NX.
[ROSLOAD]: The MSR_XD_ENABLE_MASK is for the _high_ DWORD of the MSR
(bit 34), not the low.
[ROSLOAD]: Fix printf.
[ENVIRON/ROSLOAD]: Switch to CPU_INFO structure instead of blindly using
INT[4]. Revealed a bug in the PAE detection which was reading out of
bounds.