Commit graph

23 commits

Author SHA1 Message Date
Joachim Henze
da266a418c [0.4.7][WIN32SS][RTL] Fix regression CORE-16769 + BSOD 0x50 CORE-13907
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
2022-03-17 14:04:28 +01:00
Joachim Henze
a203b7a653 [0.4.7][CAROOTS] Update certificates to Mozilla Certdata 28.01.18 (#338)
My main motivation to update them on 0.4.7 is not because the old ones
were to old yet, but because the newer ones are shorter in size.
This is the only way for me to complete the 1st stage setup with DPH
with 1500MB RAM. I cannot afford to spend more than that on my host.

The amount of memory needed for importing the caroots.inf with DPH is insane!

Ftr: The caroots.inf that I decided to import here, are to date 2022-03-03
used within releases/0.4.8 to releases/0.4.13.

The caroots.inf on current master head is a bit smaller even, but I dislike
the idea to use 100% the same one in all ros branches at a specific point
in time. So porting that one back will have to wait a bit still.
2022-03-03 23:48:06 +01:00
Joachim Henze
b4f5df6f4e [0.4.7][FS][SETUP] During 1st stage, disable any FS we don't support install to
... in order to let RawFS these volumes.
This avoids bloated setup and avoids potential bugs in 3rd party drivers.
For now, this commit doesn't change anything, but once IopParseDevice hack
gets removed, this will make a difference!

These commits were part of CORE-6305 but that is not the reason why I picked them,
but because moving those drivers into the cabs reduces the iso file-size a bit
and they reduce a bit of log-spam in bootcds 1st stage setup.

by picking the 2 commits:
0.4.8-dev-442-g 5a650f6ba5
0.4.8-dev-438-g 806cd16328
2022-02-26 18:45:34 +01:00
Joachim Henze
e46f3541d9 [0.4.7][BOOTDATA] Fix formatting glitches in hivesys.inf, e.g. PORTUGESE_BRAZILIAN CORE-17828
PORTUGESE_BRAZILIAN regressed in 2017 with SVN r74654 (commit hash 8e52193 ).

Fix picked from
0.4.15-dev-3317-g 6ce259e694 PORTUGESE_BRAZILIAN
0.4.15-dev-3321-g 4b88a8709c ICELANDIC
0.4.9-dev-XXXX fixes other formatting glitches in LATVIAN, AZERI_CYRILLIC and "MS Transactions"
2022-01-08 13:47:01 +01:00
Joachim Henze
560cb2d378 [0.4.7][SYSDM] Restore the general tabs layout and soft localization update
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.
2021-02-01 22:02:32 +01:00
Joachim Henze
f4a20411d9 [0.4.7][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)

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.
2021-01-30 21:07:54 +01:00
Joachim Henze
655057b2a8 [0.4.7][FREELDR] i386vid.c: Downgrade 3 ERR() to WARN(). CORE-13496
which effectively mutes them.
Silence harmless errors, which can be reported at every boot.
And do get logged even before the "-------------" reboot-delimiter.

inspired by 0.4.8-dev-875-g b5a7765068
I decided to just switch to WARN for the backport,
but to not enlarge the strings contents/lengths.
2020-12-21 03:50:59 +01:00
Eric Kohl
dc16ad20a9 [BOOTDATA] This was not meant to be committed. 2017-10-21 18:00:10 +02:00
Eric Kohl
45cc5c0e37 [STORPORT] Implement StorPortGetUncachedExtension().
CORE-13866
2017-10-21 17:56:06 +02:00
Stas'M
1624c1d8c9 [BOOTDATA] Change readme encoding to UTF-8 2017-10-16 19:58:01 +03:00
Eric Kohl
804092f41b [BOOTDATA]: Add the storport and storahci to the boot configuration.
Enable 'PCI\CC_0106 = storahci' and disable 'PCI\CC_0106 = uniata' in order to enable the storahci driver for AHCI controllers.
2017-10-14 00:22:36 +02:00
Serge Gautherie
9b1e056e8f [FREELDR] Discard empty entries in PcMemGetBiosMemoryMap. CORE-13332
Improve a TRACE() from f588de2e79.
2017-10-11 13:20:15 +02:00
Adam Słaboń
9c790dfc3b Polish translation update (#29)
* Polish translation update
2017-10-10 12:14:38 +02:00
Hermès Bélusca-Maïto
0436a4c73b Add a small descriptive comment for the reason why the chosen files are specified in a .gitattributes file. 2017-10-08 15:48:07 +02:00
Hermès Bélusca-Maïto
66c2299bfe Fix encoding of some INF files (-> UTF-8 without BOM). 2017-10-07 22:21:22 +02:00
Colin Finck
950c86fb4c Fix remaining text file line endings in the tree. (#18)
Based on https://stackoverflow.com/a/1511273

Also enforce CRLF for all *.xml files in our tree, because they are distributed with ReactOS.
2017-10-06 15:00:36 +02:00
Serge Gautherie
55ae20931f [FREELDR] Properly check for end-of-memory-map entries when skipping ranges smaller than page size.
CORE-12881

Signed-off-by: Timo Kreuzer <timo.kreuzer@reactos.org>
2017-10-05 19:19:42 +02:00
Serge Gautherie
274ace05b2 [FREELDR] Add 64 bit alignment macros (ULONGLONG_ALIGN_UP/DOWN_BY) for aligning physical addresses that can be larger than 4GB and the default macros truncate to ULONG_PTR.
CORE-12881

Signed-off-by: Timo Kreuzer <timo.kreuzer@reactos.org>
2017-10-05 19:19:42 +02:00
Serge Gautherie
f588de2e79 [FREELDR] Improve trace prints in pcmem.c, no logical changes
CORE-12881

Signed-off-by: Timo Kreuzer <timo.kreuzer@reactos.org>
2017-10-05 19:19:42 +02:00
Colin Finck
9ebf43567d Add .gitattributes and .gitignore files and normalize line endings in the repository (#10) 2017-10-04 20:37:32 +02:00
Hermès Bélusca-Maïto
acdf04bad2 Add .keep guard files in order to restore lost but empty directories we had with SVN.
Note that when you start populating these directories, you can remove the associated .keep guard file(s)!
2017-10-04 10:28:36 +02:00
Hermès Bélusca-Maïto
221ed4cefe Remove unwanted .gitignore files. 2017-10-04 10:28:36 +02:00
Colin Finck
c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00