Commit graph

72188 commits

Author SHA1 Message Date
Joachim Henze c1dad7d29e [0.4.9][DBGHELP] Fix 3 MSVC warnings about MiniDumpWriteDump() (#643)
- Fixes MSVC errors: "...\dll\win32\dbghelp\minidump.c(857) : error C4028: formal parameter 5 different from declaration", for parameters 5, 6 and 7.
- Fix spec file too.
CORE-7538

I could reproduce those warnings on MSVC2010SP1 x86.
Ftr Wine 7.0 uses the same spec for that func atm, see
https://fossies.org/linux/wine/dlls/dbghelp/dbghelp.spec (18 Jan 2022, 8523 Bytes)

fix picked from 0.4.10-dev-275-g 3766d836c7
2022-03-12 21:53:40 +01:00
Joachim Henze a71314d4f1 [0.4.9][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.

Fix picked from:
0.4.15-dev-3882-g e6de6098fb
2022-03-11 04:31:24 +01:00
Joachim Henze a611c46662 [0.4.9][USETUP] de-DE Update 2022-03-05 CORE-18075
ports back the fixes of:
0.4.15-dev-3886-g c791d4ee4e CORE-18075
0.4.14-dev-1325-g 1fdf06c563 CORE-16792
0.4.14-dev-1324-g 75edf1071a CORE-16792
0.4.14-dev-1323-g d079342e0a CORE-16792
0.4.14-dev-1322-g 7ed0701983 CORE-16791

While respecting the individual requirements of ancient branches,
e.g. when stuff was put somewhere else like the recovery console.
Or when we did not use code7bit yet (we started that with 0.4.12).
2022-03-05 18:40:37 +01:00
Joachim Henze dbc5a32bf7 [0.4.9][SERVICES] RChangeServiceConfig2A(): Zero-Initialize InfoW variable CORE-14521
This lets forward NULL Info.psd/Info.psd->lpDescription/Info.psfa,
instead of an uninitialized value.

Currently this branch does not show the bug CORE-14521, but that is just because
it doesn't use the more mean "advapi32 : service" test of 0.4.10.

If we would port again the newer test back from 0.4.9-dev-555-g 3c1b7834e1
(which has been reverted via 0.4.9-dev-576-g a67df65c4f as a temporary workaround for releases/0.4.9)
, then we would see it hanging as well.

fix picked from 0.4.10-dev-627-g e3a1c2c81b

I also muted a forgotten DPRINT1, like it was done during 0.4.10-dev'ing on master.
2022-03-04 23:56:04 +01:00
Joachim Henze 642d3753b1 [0.4.9][ADVAPI32] Fix crash when running advapi32:security with DPH CORE-14719
Import the following Wine commits:
* 79636bebbfa Michael Müller: advapi32: Set last error to ERROR_SUCCESS in GetSidIdentifierAuthority.
* 1d03ba76116 Hans Leidekker: advapi32: Fix parsing empty DACL/SACL security descriptor strings.
* 5bc2e83c7ab Hans Leidekker: advapi32: Fix size returned from ConvertStringSecurityDescriptorToSecurityDescriptor on 64-bit.

It crashed randomly only without DPH, but was crashing reliably with system-wide-DPH.

The bug in advapi32.dll was unhidden by the upgraded test in 0.4.9-dev-555-g 3c1b7834e1
but the bug did also affect older versions of advapi32.dll. Was just not triggered then.
So that rev is not really "guilty". And that is also the reason why I do port it back further than
releases/0.4.9, because *when using the upgraded test* I could make it crash also on
0.4.8-release-113-g5daae85 and 0.4.7-release-128-ga203b7a with system-wide-DPH-enabled.
And the fix is effective in solving the issue also there.

The fix was picked from
0.4.10-dev-219-g 95c3e17a80
2022-03-04 10:55:16 +01:00
Joachim Henze 972df100c2 [0.4.9][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.

fix picked from:
0.4.15-dev-3878-g d9f156e9a8
2022-03-01 12:43:41 +01:00
Joachim Henze 4e889c6e2a [0.4.9][TASKMGR] Tweak the status bar a bit (reusing CORE-15615)
by picking those two commits:
0.4.12-dev-363-g 473e0bfc83
0.4.12-dev-779-g 3b96148641

Although the regression that was introduced by 0.4.12-dev-363-g 473e0bfc83
and then fixed by 0.4.12-dev-779-g 3b96148641
did never affect any release, the older releases do still benefit from those 2 commits applied together:

The status bar consists of 3 sections:
"processes count"
"CPU load"
"Commit charge"

"Commit charge" is extremely dynamic in length, therefore we can improve the usability a bit by maximizing available space for it.
"processes count" also deserves a bit more space, otherwise even 3-digits-count would be cropped in english already.
"CPU load" is most defined in length, as the only dynamic part in there is 0% to 100%, just 2 digits.
Therefore we do sacrifice a bit space from "CPU load" section in favor of the other sections.

See https://jira.reactos.org/secure/attachment/61659/ros_taskmgr_BEFORE_mostCompact.png for a pic before this backmerge.
2022-02-28 17:57:51 +01:00
Joachim Henze 9a1074ee70 [0.4.9][TASKMGR] Backport commits id-ID and 'Remove Debug Channels' CORE-18057
by picking the following commits:
0.4.15-dev-413-g ed7196d964 [TASKMGR] Remove 'Debug Channels' feature, which is Wine-specific
0.4.15-dev-2488-g fd4d8f550c [TASKMGR] id-ID.rc, just the single line in this module
2022-02-27 22:51:06 +01:00
Joachim Henze 73391c7694 [0.4.9][SYSDM] uk-UA.rc Fix compiler warning RC4206 CORE-17827
Fix a resource compiler 'warning RC4206 : title string too long; truncated at 256'
when building with MSVC2010SP1.

by porting back a single line from:
0.4.12-dev-920-g 8fb10879fc The string shortening
and a single line from the whitespace-addendum:
0.4.15-dev-3152-g bbabe2489e
2022-02-27 14:00:03 +01:00
Joachim Henze 6329d93151 [0.4.9][SHELL32][SHLWAPI][COMDLG32][SDK] Unable to select a Zip file for sending with Common Open Dialog CORE-16908
It "regressed" by 0.4.9-dev-632-g da6a46c6ac when zipfldr.dll got registered.
Ftr: Even without this complex fix it was possible to workaround this bug by 'regsvr32 /u zipfldr.dll'.

by porting back:
0.4.15-dev-279-g 83a9f71690 CORE-16908 [SHELL32] Allow creation of an empty CFileSysEnum
0.4.15-dev-254-g 332889b8d7 CORE-16908 [COMDLG32] Differentiate between real and virtual folders
0.4.15-dev-252-g f379a29606 CORE-16908 [SHELL32][SDK] Properly enumerate virtual shell folders (on files) as fake folders
0.4.15-dev-251-g b1003ae909 CORE-16908 [SHELL32] Update CFileSysEnum to be maintaineable
0.4.15-dev-250-g ac215455bb CORE-16908 [SHLWAPI] Fix SHRegGetCLSIDKeyW
and we also need:
0.4.14-dev-73-g 5d54b65ceb CORE-16271 [SHELL32] Add support for custom View objects defined with UICLSID
2022-02-26 23:56:16 +01:00
Joachim Henze b7aae3cdfd [0.4.9][SHELL32] Add 'Properties' menu item in My Computer (#647) CORE-12509
- Add a Shell_DefaultContextMenuCallBack() helper function.
- Implement the IContextMenuCB interface in CDrivesFolder.

It regressed by some unknown commit in between SVN r70702 to r73408

fix picked from 0.4.10-dev-329-g 55469633cf
2022-02-26 19:05:52 +01:00
Joachim Henze 28f0841970 [0.4.9][SHELL32] Squashed port of several RunDlg and ShellExecuteW() fixes
This is a big backport, that brings us closer to releases/0.4.14/0.4.14-release-10-g1b0b852

The main motivation is to fix the regression:
CORE-6412 'FoxitReader4 starts directly instead of launching setup wizard'
which regressed by SVN r56438 == git e5491506f1

By porting back the following commits:

0.4.15-dev-2883-g 33c7c91b36 CORE-17351 CORE-16898 (#3797) Improve performance of Start-Run Dialog Box Options
0.4.14-dev-1016-g 4e721f780e CORE-12266 (#1854) [SHELL32] This fixes the ERROR_DDE_FAIL in the 'www.google.de' testcase
0.4.13-dev-790-g 0f16d44b66 CORE-6412 + CORE-12927
but in return we have to fix all the callers of ShellExecuteW() that relied on this ancient hack-code, and we do this by picking
0.4.13-dev-930-g cb77f1701f CORE-16299 [SHELL32][STOBJECT] ShellExecuteW() params part2
0.4.13-dev-860-g 944aba1fcc CORE-16299 [SHELL32] ShellExecuteW() params part1 (#1833)

0.4.12-dev-94-g 932a812c66 CORE-15434 [SHELL32] shlexec.cpp UNICODE_NULL Add backslash if path was like C: (#1152)
0.4.12-dev-49-g fad9f6677a CORE-15434 [SHELL32] dialogs.cpp (#1117) Addendum
0.4.12-dev-48-g c64d31e9b8 CORE-15434 [BROWSEUI] Add backslash for directory (#1121) C: C:\
0.4.12-dev-36-g 472787ffea CORE-15431 (#1117) Crash on %SYSTEMROOT%
0.4.12-dev-19-g 06d717e3bc CORE-15431 (#1111) Enable Environment Variables
0.4.10-dev-446-g db13b422b3 (#737) shlexec.cpp to avoid regression CORE-14886 "regsvr32 can no longer register dlls"
0.4.10-dev-419-g bfcbda227f (#665) Multiple parameters dialogs.cpp, shlexec.cpp, sdk/include/reactis/undocshell.h
0.4.10-dev-335-g e018ccea4b CORE-14469 (#681) [SHELL32] lpDirectory must have priority in ShellExecuteEx
0.4.10-dev-238-g c84f398306 CORE-14583 (#593) base/shell/explorer/traywnd.cpp
0.4.10-dev-106-g 222534a5a2 IDS_FILE_NOT_FOUND from that unrelated commit was reused to display errors of the RunDlg
2022-02-20 21:21:29 +01:00
Joachim Henze 1711b13f21 [0.4.9][USER32][NTUSER][3DTEXT] Squashed backport
[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:
'All user32:TrackMouseEvent tests'
CORE-15686: Gimp 2.8.22 from rapps hangs after startup with 90%-100% CPU usage
and many dupes of that ticket like:
CORE-17551: Ardour hangs at the first start (GTK2 issue)
CORE-15151: newer "Inkscape 0.92.3" is unusable due to WIN32SS message queue lockup
CORE-14086: RawTherapee 5.0-r1-gtk2 fails to start (using 100% CPU)
CORE-11850: Geany 1.28 hangs with endless MsqSendMessage timed out
CORE-8475: Wireshark hangs after launch

It will also slightly appease, but not entirely fix:
CORE-8217: 3D Text ScreenSaver freezes system

Fix picked from 0.4.15-dev-3407-g 9c4397afdf
---------------------
[NTUSER] Do not remove message from the Msg Queue if it is not for us. (#4129)

CORE-8217 This part of the fix keeps the buttons working (Cancel/Ok/top-Right-X) even under high CPU-load
Patch from 'I_Kill_Bugs' contributor.

Fix picked from 0.4.15-dev-3499-g 7d1b50394b
---------------------
[3DTEXT] Fix 3dtext.scr using near 100% CPU (#4125) CORE-17866, CORE-8217

Fix picked from 0.4.15-dev-3443-g 5c9fdcb1de
2022-02-08 13:05:35 +01:00
Joachim Henze 21d7f30efc [0.4.9][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.

The assert was once added by SVN r63880 == git 9ad857369a

Fix picked from:
0.4.14-dev-1519-g 87f6c82d85 commenting 2020-04-21
0.4.15-dev-3780-g bf16435303 removal 2022-02-05
2022-02-05 01:58:16 +01:00
Joachim Henze 878f12f2e9 [0.4.9][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

fix picked from:
0.4.15-dev-3739-g ff9301e9db
0.4.15-dev-3748-g 6a496c3991
2022-02-03 13:06:42 +01:00
Joachim Henze ba0a25382b [0.4.9][BCRYPT] Add ECDSA P256 to known algorithms CORE-16741
Add missing structs and handler in BCryptOpenAlgorithmProvider().
Fixes CORE-16741 and similar problems.

The modern internet is not waiting for ReactOS, needed to keep the RAPPS URLs working.
fix picked from:
0.4.15-dev-3603-g e0a47b7b5f [BCRYPT] Add BCRYPT_ECDSA_P256_ALGORITHM
2022-02-02 22:10:03 +01:00
Joachim Henze bfecf51daf [0.4.9][CMD] *.RC Shorten the string for the version header CORE-17420
We did strip that superfluous "Operating system"
during 0.4.15-dev'ing to prevent line-overflow when
we added the target platform to the version string.
picked from 0.4.15-dev-1605-g ab45955a5a
Recently I found out that the git hashes will also become
longer when there is hash collision. So the shortening adds to
safety also for the old branches.

While touching those RCs do also pick:

0.4.15-dev-2336-g d3fc345730 [CMD] de-DE: Fix 'Paramater' typo
0.4.14-dev-1446-g cd5364ae8e [CMD] pl-PL.rc the line Wersja
and some EOL-whitespace stripping and the parts targetting [CMD]-only! from
0.4.14-dev-1037-g 554c41e4d7 [CMD] "  \n"->"\n"
0.4.14-dev-1142-g 92aabb07fb [CMD]  " \n"->"\n"
2022-01-31 19:17:35 +01:00
Joachim Henze c48df9a9f5 [0.4.9][WIN32SS] Fix Mask for Draw Frame States CORE-8808
Fixes drawing of caption bar buttons (min/max/close in Mozilla Firefox titlebar when its menubar is disabled).
See CORE-8808.

The fix is a partial port of 0.4.14-dev-1314-g acf135d16d
I left out all changes to the logging and took only the essence of this patch.
2022-01-30 22:50:18 +01:00
Joachim Henze 4ab44d7a80 [0.4.9][MKHIVE] Fix leaks and Implement RegDeleteKeyW() to mute a compile-time-warning CORE-18031
The motivation to upgrade this host-tool is to fix a compile-time warning:
  [4890/10620] Generating boot/bootdata/...oot/bootdata/system, boot/bootdata/BCD
  Binary hive maker
->RegDeleteKeyW(0x0xcab210, '') is UNIMPLEMENTED!
  [145/10684] Generating boot/bootdata/BCD
  Binary hive maker
  Creating binary hive: /home/jhenze/Release_WorkDir/Repo/output-MinGW-i386/reactos/boot/bootdata/BCD

Thw warning was most likely introduced when we started using mkhive in the hosttools, and is triggered
by livecd.inf having a [DelReg] section.

Warning fixed by implementing RegDeleteKeyW().
It can not delete full trees yet, but we also don't need that for our mkhive-usage yet.

While touching it, do also fix some other minor glitches and leaks.

This is a PARTIAL backport of the 15 commits from 0.4.11-dev, all to mkhive from 2018-10-09 to 2018-10-20 by hbelusca.
2022-01-30 03:25:02 +01:00
Joachim Henze e9fe2a29e4 [0.4.9][NTOSKRNL] Mute noisy DPRINT 'SectionObject has ImageSection' during shutdown CORE-18029
All releases/0.4.8 until and including releases/0.4.14 were affected by the following logspam
during shutdown:
(../ntoskrnl/mm/section.c:4839) SectionObject has ImageSection
triggered 2 times for bootcd, but triggered 83 times for livecd.

Today I found out by chance, that we started to trigger it with the switch from CDFS to CDFS_NEW with
0.4.8-dev-164-g ec6b3ecbe4

We 'suffered' from that logspam for many years now and it did never help us in any way.
And during 0.4.15-dev'ing with the MM rewrite, the logging was entirely removed in the NTOSKRNL.
2022-01-27 20:19:24 +01:00
Joachim Henze a5dc10022a [0.4.9][SHELL32] Control panel context menu semantic bugfix (#4078) CORE-17855
Fix ported back from 0.4.15-dev-3396-g 83335d3a81
2022-01-26 12:50:29 +01:00
Joachim Henze 71f7795520 [0.4.9][RAPPS] Pick some simplifications from master up to 0.4.15-dev-3726-gc262020 (e.g. CORE-18018 and (#2751))
As the dialog simply displays the copyright names and nothing particular it makes sense to use ShellAboutW() instead.

Several fixes ported back:
0.4.15-dev-3726-g c262020016 README CORE-18018
0.4.15-dev-3724-g 3a7c0d82d2 size fallback part 1 CORE-18018
0.4.15-dev-3569-g b5a6357d93 available.h/.cpp Strip 3 useless functions
0.4.15-dev-384-g 393a2c42fe CDPath in README
0.4.15-dev-227-g a6084d7440 ShellAbout() (#2751)
and some whitespace corrections, especially in cabinet.cpp
2022-01-24 10:28:54 +01:00
Joachim Henze 0cf7f1acef [0.4.9][COMCTL32] Workaround regression with toolbar in 7zip CORE-16169
The regression was introduced by SVN r68553 == git 3b13364f05

Many thanks to the author Doug Lyons for excellent
cooperation once more. Always a pleasure.

Fix cherry picked from commits:
0.4.15-dev-663-g cd7db5df89 and
0.4.15-dev-664-g 7c909cbc7c
2022-01-23 13:59:53 +01:00
Joachim Henze 61fa5ea598 [0.4.9][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

fix picked from 0.4.15-dev-3082-g 2268b33e18
2022-01-21 23:11:43 +01:00
Joachim Henze 8900a74e2c [0.4.9][SNDREC32] Fast-Forward to 0.4.15-dev-3294-ge98684e state (CORE-17815 and several PRs)
My main motivation was a fix for the bug
CORE-17815 'Fix incorrect opaque text rendering' (#2760)
which was unhidden by 0.4.12-dev-824-g d57f7becc3 .
That specific and most important fix
was picked from 0.4.15-dev-190-g d839e3d9b4
We left out the additional WIN32SS-hardening in this context in the backport to older
releases for now.

Then I looked further in sndrec32 and compared each file of that module on master
head with both: current 0.4.14RC and also current 0.4.7rls and found the rare
situation that I liked each and every change within since 2017.
Specifically this will also backport (#2754), and various translation PRs, whitespace-cleanup,
and (for older releases than 0.4.14RC) it will also bring some x64-improvements.

So I decided to take everything from current master head except the changes in CMakeLists.txt
because that subset is applicable and a win for all ros releases down to 0.4.7.
2022-01-17 22:41:21 +01:00
Joachim Henze 4afd163aee [0.4.9][SYSDM] MSVC warnings RC4206 : title string too long; truncated at 256 CORE-17827
Fix picked from:
0.4.15-dev-3699-g b1264c13f7 for el-GR.rc
0.4.15-dev-3700-g 98999eebe4 for sk-SK.rc
0.4.15-dev-3701-g bacc0479ce for sq-AL.rc
The pt-PT.rc file (also affected on master) did not exist in this ancient branch yet.
2022-01-16 18:02:12 +01:00
Joachim Henze 4532e1cd5e [0.4.9][PROGMAN][USER32][SHELL32] Do not use LoadLibraryEx() NT6+ flags (#3152) CORE-12004
LOAD_LIBRARY_AS_IMAGE_RESOURCE and LOAD_LIBRARY_SEARCH_SYSTEM32 are Vista+

This fixes some blurry icons in systray when 2k3sp2 kernel32.dll is used in ros CORE-12004
That part in user32 was a regression of SVN r71609 == git a44dfe6c76
While we are at it we do fix some other modules as well, that used those NT6+flags.

The fix was picked from 0.4.15-dev-788-g a04831677e
--------
That second part in SHELL32 regressed even earlier by
SVN r51768 == git 6ced137ce2
and was fixed on master by chance when the PickIconDlg() was overhauled entirely via
git 0.4.10-dev-106-g 222534a5a2 . But that is not the solution I ported back today.
2022-01-15 12:50:02 +01:00
Joachim Henze af3e03aeef [0.4.9][WIN32K] Revert NtGdiStretchDIBitsInternal to Previous Logic (#3774)
Fixes gdi32:dib / gdi32:bitmap tests and

CORE-16236 "SIMS graphics", which regressed by
SVN 51005 == git 2bbd8711a7

Thanks to the patches author Doug Lyons.

It also fixed
CORE-16621 Kompozer 0.7.10 from rapps, exe does not show an icon, but does on 2k3sp2

fix picked from 0.4.15-dev-2850-g 847b037fe9
--------------
By taking the above, we also have to pick its addendum
[WIN32K] Fix 'use after free' in NtGdiStretchDIBitsInternal #4122 CORE-17861

0.4.15-dev-3420-g b538b9abb8
to avoid introducing another bug:
CORE-17861 MS Visual Studio 2010 Pro Fatal System Error 0x00000050
--------------
[WIN32K] Don't trust the BITMAPINFOHEADER size

This is not entirely correct yet, but less wrong than before and fixes
CORE-16031 Moo0 Audio Recorder - ReactOS icons are not displayed in the system tray
fix picked from 0.4.14-dev-848-g 53c9a6deaa
2022-01-15 01:30:38 +01:00
Joachim Henze e2de354688 [0.4.9][WIN32K] Revert incorrect part of R50928 for RealizePalette. (#3678)
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 idea was picked from 0.4.15-dev-2735-g c7954134d0
but I was too shy to port the recurrently spamming and slowing DPRINT1 back that far.
Spamming on master should be enough to improve here later.
2022-01-12 06:01:01 +01:00
Joachim Henze f4e30a974e [0.4.9][EXPLORER] Fix for Start Button Wrong size when Using Themes (#4121) CORE-16742
CORE-16742 'Start button background in themes is scaled incorrectly' (especially MS Luna)

The problem once was unhidden by
0.4.7-dev-705-g 85ae842105

Fix picked from 0.4.15-dev-3441-g 67ad4e7f60
2022-01-10 13:50:45 +01:00
Joachim Henze 175fa27755 [0.4.9][NTUSER][USER32] Tracking menu CORE-17338 (#4048), [EXPLORER] Send WM_POPUPSYSTEMMENU asynchronously (#4047) CORE-16353
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.

2 Fixes picked:
0.4.15-dev-3313-g 6417b2323d [NTUSER][USER32] Workaround tracking menu on CORE-17338 CORE-15760 (#4048)
to prevent the menu from auto-closing

and
0.4.15-dev-3297-g 037c744eb1 [EXPLORER] Send WM_POPUPSYSTEMMENU asynchronously CORE-16353 (#4047)
to make the taskbar button turn into pressed state when the menu opens
2022-01-10 07:18:41 +01:00
Joachim Henze b6f78a26cf [0.4.9][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

Fix picked from 0.4.15-dev-3363-g 252a7530d0
2022-01-09 09:30:15 +01:00
Joachim Henze 614334a8a1 [0.4.9][AUTOCHK] Don't check any volume on boot CORE-14638
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)
2022-01-09 06:40:26 +01:00
Joachim Henze c716c57fd6 [0.4.9][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
2022-01-08 13:34:50 +01:00
Joachim Henze 192194eaa5 [0.4.9][UNIATA] Workaround random crashes on Virtual PC (#3377) CORE-12441 CORE-17371
I am not sure why this line in id_queue.cpp was added.
I don't know how I could improve that case.
Then, disable it, for the time being.

It regressed by 4b9cf2e339 (r71252). CORE-12441 CORE-17371

fix picked from 0.4.15-dev-2740-g ba77a09c04

While touching uniata do also PARTIALLY port back some bm_devs.h changes:
0.4.15-dev-1522-g 88d36c93a2 (Properly mark ReactOS diff from upstream)
2021-11-16 22:32:23 +01:00
Joachim Henze 33ebdeff91 [0.4.9][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.

The problem was unhidden by the innocent and unrelated 0.4.12-dev-266-g 8ab3652c01
I was not able to trigger the bug in releases older than 0.4.12,
but it is rather obvious that the mentioned revision is not really 'guilty', which
is why I will port the fix back further into releases even older than 0.4.12 as well.

Thanks to the patches author Doug Lyons.

a squashed port of:
0.4.15-dev-2734-g 514147776a (fixes the BSOD)
0.4.15-dev-2775-g c596fd3ef6 (improvement #3758)
0.4.15-dev-2776-g 4130f0b1c5 (compilation fix)
and some white-space tweaking that was committed after those.
2021-11-15 12:08:14 +01:00
Joachim Henze 4e0a41bcb8 [0.4.9][NTOS/MM] Properly handle page faults in regions marked with PAGE_NOACCESS or PAGE_GUARD CORE-14694
This was part of the commits for ROSTESTS-110, but much more important:
It fixes CORE-14694 "reproducible BSOD 0x1A MEMORY_MANAGEMENT in OllyDbg v2.01"

Fix picked from 0.4.11-dev-650-g 47ac7a2b28

which also requires me to "Move up MmAlterViewAttributes() for later use in MmNotPresentFaultSectionView()"
like it was done in: 0.4.11-dev-649-g 47ac7a2b28
Ofc I moved the function up individually in each branch I do port this back to, without modifying the func.
2021-11-15 01:15:55 +01:00
Joachim Henze 94db51a700 [0.4.9][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

It began to crash with the introduction of the UDFS driver in SVN r74901 == git 3a104c8f20

Fix picked from 0.4.15-dev-3326-g a91f5e8e4d
2021-11-14 21:21:59 +01:00
Joachim Henze 29a0a0448c [0.4.9][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.

Fix picked from 0.4.15-dev-2885-g 7962db4cc1
2021-07-07 02:22:56 +02:00
Joachim Henze aaf1943349 [0.4.9][DESK] Fix GetDC/ReleaseDC error management
Fix missing ReleaseDC related to the spectrum (color depth)

We leaked one device context for each bpp change within the
desk.cpl-session, which gave the following logging when closing desk.cpl:
(win32ss/user/ntuser/windc.c:749) err: [00060138] GetDC() without ReleaseDC()!
1 time for each leak.

Partial backport of (#2707)
Fix picked from 0.4.15-dev-2867-g d635ce0cc0
2021-07-06 00:51:17 +02:00
Joachim Henze 06e09f0f95 [0.4.9][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

Thanks to the patches author Doug Lyons.

Fix picked from 0.4.15-dev-2862-g e068c68452
2021-07-04 14:50:31 +02:00
Joachim Henze dec08c83a5 [0.4.9][CDFS_NEW] Fix a macro-copy-paste and shrink the binary size CORE-17405
picked from 0.4.15-dev-1456-g 889eab7
2021-07-03 20:47:57 +02:00
Joachim Henze de9a7b0dc7 [0.4.9][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

fix picked from 0.4.15-dev-2792-g cb408102cc
2021-07-02 13:45:36 +02:00
Joachim Henze 0fc75d6692 [0.4.9][LSASRV] LsapLogonUser(): Fix 'AuthenticatingAuthority' copypasta (#2839)
Reported by contributor 'qarmin', found by static code analysis.
CORE-17074

The glitch once was introduced 7 years ago by SVN r58933 == git 7934e35cdf
There is no real-world-issue known to date caused by this bug.

fix cherry picked from commit 0.4.15-dev-303-g 99d0a348aa
2021-06-20 15:41:06 +02:00
Joachim Henze af690c1224 [0.4.9][COMCTL32] Fix regression on showing current mouse pointer in main.cpl (#2829)
GetIconInfo() fill info.hbmColor with NULL HBITMAP handle on black/white bitmaps.

CORE-17062

It broke by 0.4.9-dev-719-g b3fb8555bf

fix is squashed port of 2 commits:
0.4.15-dev-534-g 887764e607 (fix)
0.4.15-dev-2705-g a3cadf630a (nitpick)
2021-06-16 14:09:21 +02:00
Joachim Henze ae666420d0 [0.4.9][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.

cherry picked from commit 0.4.15-dev-1085-g c947eb4d17
2021-06-16 09:41:22 +02:00
Joachim Henze 5b8e1230d1 [0.4.9][SHELL32] Update all languages RCs to fix possible text truncation CORE-15765
IDD_BROWSE_FOR_FOLDER displays text controlled by the calling applications in
IDC_BROWSE_FOR_FOLDER_TITLE. Its old height could lead to text truncation
for existing 3rd party apps.
The new height value for IDC_BROWSE_FOR_FOLDER_TITLE
was inspired by IDC with the same from dialog IDD_BROWSE_FOR_FOLDER_NEW.
I could change all languages to the same height,
as dimensions of the dialog and surrounding controls were same.

picked from 0.4.12-dev-781-g 1d7287288d

also port back some strings in de-DE that were translated during 0.4.10-dev and that
were still untranslated in releases/0.4.9.
2021-05-16 03:12:24 +02:00
Joachim Henze f807f226c9 [0.4.9][SHELL32] Fix version string in Shell About dlg CORE-16571, & some de-DE
It "regressed" and was displayed cut-off since the switch to git
(our string got longer back then).

Fixed by porting back 2 commits:

0.4.14-dev-976-g 6ce72ba172
0.4.14-dev-884-g a57f7b50c0

and also port back some german translation updates and
trivial whitespace fixes at the same time in *.rc.
2021-05-15 04:37:13 +02:00
Joachim Henze a2988cdac3 [0.4.9][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 21:59:03 +01:00
Joachim Henze f2b03367be [0.4.9][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:04:43 +01:00