Commit graph

70252 commits

Author SHA1 Message Date
Joachim Henze aa40524430 [0.4.7][NOTEPAD] Fix a MSVC warning about Globals.encFile (#648) (#650) CORE-7538
Observable in MSVC2010SP1 x86 dbg-config
"...\dialog.c(365) : error C4133: 'function' : incompatible types - from 'ENCODING *' to 'int *'"
CORE-7538

the fix is a squashed port of:
0.4.10-dev-286-g 6830ecb118 (#650)
0.4.10-dev-283-g 97df61edfa
0.4.10-dev-282-g 534a309edc (#648) got superseded by 2nd commit
2022-03-13 00:20:56 +01:00
Joachim Henze ace50e91c1 [0.4.7][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:55:56 +01:00
Joachim Henze 6981ff0d1c [0.4.7][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:33:06 +01:00
Joachim Henze 530e559840 [0.4.7][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:42:18 +01:00
Joachim Henze 74201126b6 [0.4.7][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 back the newer test from 0.4.9-dev-555-g 3c1b7834e1
, 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
and fixed some whitespace indentation, like it was done during 0.4.9-dev'ing on master
2022-03-04 23:59:26 +01:00
Joachim Henze e061407748 [0.4.7][SYSSETUP] Fix a DPH report about dwPageCount CORE-18068
- "(sdk/lib/rtl/heappage.c:1329) corrupted suffix pattern"
  detected at
  "dll/win32/syssetup/wizard.c:2672 (InstallWizard)"
- Add an ASSERT(), as hinted by Mark Jansen.

It happened in 2nd stage setup after the Gecko setup was canceled or completed and the button "Fertig" (its german label) was pressed.
It had no user visible impact. I never saw a crash due to that, but we should still not corrupt memory.
It regressed the last time a page within that setup was added without increasing the array in
SVN r75495 == git fc1f0c2088

fix picked from commit 0.4.10-dev-224-g 1668527acf
2022-03-04 14:40:05 +01:00
Joachim Henze d23c219409 [0.4.7][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
---------------
and since I do touch this module anyway, I decided to pick also the small improvements from
0.4.8-dev-272-g 7ed4c1dd03 which had no JIRA-ticket.
2022-03-04 10:59:16 +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 eeb4f4c8a7 [0.4.7][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:46:42 +01:00
Joachim Henze 0ae3cb906e [0.4.7][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:59:30 +01:00
Joachim Henze 4e893b4b68 [0.4.7][TASKMGR] Backport 3 commits de-DE, id-ID and 'Remove Debug Channels' CORE-18057
by picking the following 3 commits:
0.4.9-dev-98-g f80d227ec2 [TASKMGR] improve de-DE.rc
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:54:28 +01:00
Joachim Henze 7f002b7ad7 [0.4.7][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:02:54 +01:00
Joachim Henze c95c738676 [0.4.7][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
------
and pick also the unrelated:
0.4.8-dev-53-g 9192d39f6e [SHELL32] Fix multiple selection of desktop icons
which had no JIRA-ticket.
2022-02-26 19:09:02 +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 6057f41b6b [0.4.7][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
0.4.8-dev-253-g 53edadb8c0 CORE-12882, CORE-13847 (#159) [BROWSEUI] SHExplorerParseCmdLine: Improve relative path handling
and a few whitespace-fixes in undocshell.h to bring the file 100% in sync to current 0.4.8
2022-02-20 21:29:07 +01:00
Joachim Henze 13133ecefa [0.4.7][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:07:55 +01:00
Joachim Henze 0a17dd8a99 [0.4.7][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:59:29 +01:00
Joachim Henze f81f89e9a6 [0.4.7][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:08:10 +01:00
Joachim Henze c0b4dd453d [0.4.7][BCRYPT][CRYPT32][PSDK] 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

To make this work, we need to sync CRYPT32 to WineStaging-3.3, picked that from:
0.4.9-dev-214-g a8b9a43ae8 [PSDK] Fix the build for msvc 2010. wincrypt.h
0.4.9-dev-208-g dedd08c38d [PSDK] Fix wide string literals in bcrypt.h. Should fix VC2010 build
0.4.9-dev-207-g a6265fc4b0 [BCRYPT] Improve stubs for functions needed by crypt32 aka fix build
0.4.9-dev-194-g a6e1034289 [CRYPT32] Sync with Wine Staging 3.3
0.4.9-dev-193-g e129995058 [PSDK] Update bcrypt.h and wincrypt.h
2022-02-02 22:20:49 +01:00
Joachim Henze 14079279f7 [0.4.7][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:21:49 +01:00
Joachim Henze 977f89dc13 [0.4.7][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:51:37 +01:00
Joachim Henze 8ce0417afb [0.4.7][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:27:40 +01:00
Joachim Henze 688875e411 [0.4.7][CDFS_NEW/NTOSKRNL/NDK] Switch from our old CDFS to MS-PL CDFS_NEW
The main motivation to switch to that newer driver is, that our old one
simply can not read all isos. Especially complex ones made trouble and were
only shown as empty in explorer.
It is still possible to build and use the old driver when needed, only thing
that needs to be done for that is to revert 0.4.8-dev-164-g ec6b3ecbe4

Porting back the state up to 0.4.8-release-100-g8f947b5 implies:

Fixing the following JIRA-IDs (or avoid introducing them):
CORE-18029 "Mute noisy DPRINT 'SectionObject has ImageSection'"
CORE-17405 "Fix a macro-copy-paste and shrink the binary size"
CORE-15659 "Unable to build the gcc Release version in Windows using RosBE 2.1.6 (module cdfs fails)"
CORE-14315 "CDFS_NEW assertion during first stage setup due to new CcPerformReadAhead"
CORE-14128 "Avast! Free Antivirus 7.0 hangs the system when trying to detect a newly created virus"
CORE-14067 "CDFS_NEW assertions and exceptions"
CORE-14003 "Shutting down LiveCD asserts since introduction of MS PL CDFS_NEW"
CORE-13184 "Restore ability to install from disk-image"

by picking the following commits:
0.4.8-release-100-g 8f947b5322 [NTOSKRNL] Mute noisy DPRINT 'SectionObject has ImageSection' CORE-18029
0.4.8-release-80-g eb1ea19588 [CDFS_NEW] == 0.4.15-dev-1456-g 889eab7 CORE-17405
0.4.8-release-62-g 8c07aad4a8 [CDFS_NEW/XDK] == 0.4.11-dev-39-g a2f9762 + 0.4.11-dev-40-g 6d7ec8c CORE-14067
0.4.8-release-3-g 5d976d04e8 [CDFS_NEW] == 0.4.12-dev-431-g bccad87f3c + 0.4.12-dev-432-g 3463b2db9f CORE-15659
0.4.8-RC-3-g 51f9494d48 [CDFS_NEW] superseded later by the proper fix 0.4.8-release-62-g 8c07aad4a8 CORE-14067
0.4.8-dev-1069-g a5e89014dc [CDFS_NEW] CORE-14315
0.4.8-dev-475-g a59d4674de [NTOSKRNL] io/iomgr/device.c (forgotten assert) CORE-14128
0.4.8-dev-221-g 9d67a24799 [CDFS_NEW]
0.4.8-dev-220-g 67a7e45e35 [CDFS_NEW/DOC]
0.4.8-dev-219-g 6a3bbf24e0 [CDFS_NEW]
0.4.8-dev-218-g ec26cde4a1 [CDFS_NEW]
0.4.8-dev-217-g bc2378a356 [CDFS_NEW]
0.4.8-dev-216-g 5429771b99 [CDFS_NEW]
0.4.8-dev-215-g fd34548263 [CDFS_NEW] Sync with MS-PL driver
0.4.8-dev-164-g ec6b3ecbe4 [FILESYSTEMS] switch from CDFS to CDFS_NEW in CMakeLists.txt
0.4.8-dev-160-g 2b217e4ecf [NTOSKRNL] Mute spam CcSetReadAheadGranularity()
0.4.8-dev-159-g 64cb138a67 [NTOSKRNL] Mute spam CcPurgeCacheSection()
0.4.8-dev-150-g f723d230a0 [CDFS_NEW]
0.4.8-dev-133-g faee3753ea [CDFS_NEW] CORE-14003
0.4.8-dev-132-g 1d777ffab5 [NTOSKRNL] iofunc.c CORE-14003
0.4.8-dev-131-g c3d5a3f2bd [NTOSKRNL] iofunc.c CORE-14003
0.4.8-dev-130-g 3b64f7f8fb [NTOSKRNL] ob/obref.c & co CORE-14003
0.4.8-dev-129-g 7eefe70294 [NTOSKRNL] io/iomgr.c & co CORE-14003
0.4.8-dev-127-g 5f255827d3 [CDFS_NEW]
0.4.8-dev-126-g 1bef48796e [NTOSKRNL] just a comment, superseded later
0.4.8-dev-125-g cbf0430b56 [CDFS_NEW]
0.4.8-dev-123-g f88fe43abd [NTOSKRNL] io/iomgr/device.c (forbidden DPRINT)
0.4.8-dev-122-g 6c73385625 [CDFS_NEW] CORE-13184
0.4.8-dev-97-g 94298313c0 [CDFS_NEW]
0.4.8-dev-95-g e88eeb21af [CDFS_NEW/NTOSKRNL] CcWaitForCurrentLazyWriterActivity() stub return Success
0.4.8-dev-94-g 03d5be6437 [CDFS_NEW]
0.4.8-dev-93-g fa1c60db50 [CDFS_NEW]
0.4.8-dev-92-g 8b2fd60829 [CDFS_NEW]
0.4.8-dev-91-g e4da7ecc50 [CDFS_NEW]
0.4.8-dev-90-g 7b19676e2b [CDFS_NEW]
0.4.8-dev-89-g 3d4b8783fd [CDFS_NEW]
0.4.8-dev-88-g 818025ecc8 [CDFS_NEW]
0.4.8-dev-87-g 2639dd6736 [CDFS_NEW]
0.4.8-dev-86-g 755bdb5d0b [CDFS_NEW]
0.4.8-dev-85-g 3cbcb1bade [CDFS_NEW]

and mute spam in opcode INSTEAD of picking:
0.4.8-dev-165-g 2284a457a3 [NTOSKRNL] oplock.c Fixup
0.4.8-dev-163-g d3d5853956 [NTOSKRNL] oplock.c Implement oplock-support
0.4.12-dev-232-g f488102c86 [CDFS] was also left out for now

I am aware, that the backport introduces white-space-glitches within CDFS_NEW.
I decided to live with them in favor of better sync to master and newer releases.
2022-01-27 21:11:23 +01:00
Joachim Henze 579198c07b [0.4.7][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:52:15 +01:00
Joachim Henze c11e06412a [0.4.7][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
2022-01-24 10:33:53 +01:00
Joachim Henze 0e86fe0bf8 [0.4.7][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 14:01:25 +01:00
Joachim Henze 0bdf4f5317 [0.4.7][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
and some hebrew RTL addition
because that subset is applicable and a win for all ros releases down to 0.4.7.
2022-01-17 22:45:48 +01:00
Joachim Henze 332a660a70 [0.4.7][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:03:15 +01:00
Joachim Henze 55062f0648 [0.4.7][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:55:46 +01:00
Joachim Henze c5b06a1b5d [0.4.7][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:31:32 +01:00
Joachim Henze 1480d801ee [0.4.7][RAPPS] Introduce 'SizeBytes' DB entry and use it for display
This will allow us to reduce the DB size a little by avoiding
duplication for each and every entry.
Original patch by JIRA user "swyter"

CORE-10310

fix picked from 0.4.9-dev-633-g 627739aed9
but slightly adopted to leave out some formatting glitches and
also leave out the "fall back to Size string" in available.cpp because
on 2021-10-03 Mark Jansen deleted all old size entries from the rapps database via
551e8cb95716f46e05c3be08996467bd93b1936f
2022-01-14 22:50:13 +01:00
Joachim Henze 7f018efb51 [0.4.7][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:02:30 +01:00
Joachim Henze 795c5cc31e [0.4.7][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
--------------
and while touching the file, do port back also some EOL-whitespace-stripping and
0.4.9-dev-642-g eff4c2138d Remove double 'return' statement CORE-14528
2022-01-10 13:52:37 +01:00
Joachim Henze 4dbb1d4fc0 [0.4.7][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:20:11 +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 a3455e9d65 [0.4.7][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:34:46 +01:00
Joachim Henze 01eb64743c [0.4.7][FLOPPY] Don't wait forever while trying to determine media type. CORE-12908
This should fix some virtual machines and real hardware machine with empty floppy drive
not being able to boot ReactOS (stuck while initializing floppy.sys).

This fixes a regression introduced in SVN r70746 == git 78eb31503a
It could be generalized to other interrupts, floppy controllers not being reliable.

For more information: http://wiki.osdev.org/Floppy_Disk_Controller

It fixes:
CORE-12908 'Virtual PC 2004 SP1 (and 2007), LiveCD (and BootCD): boot hangs on FLOPPY.SYS'
CORE-7935, CORE-13080, ... and a lot of other duplicates of that ticket.

Fix picked from 0.4.8-dev-187-g 4b34e44782
-------
This will sync floppy.sys to the stable state that we had all the way from
0.4.8-release-86-g472a0ec up to 0.4.12-release-53-g3890268
2021-11-16 03:06:56 +01:00
Joachim Henze 30beb6cf9a [0.4.7][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:10:02 +01:00
Joachim Henze a2e5d3e570 [0.4.7][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:17:07 +01:00
Joachim Henze 1c3ae3043a [0.4.7][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:23:05 +01:00
Joachim Henze 61f3a30fef [0.4.7][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:24:33 +02:00
Joachim Henze 85ebf53437 [0.4.7][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:52:18 +02:00
Joachim Henze 73b9fcfa88 [0.4.7][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:51:47 +02:00
Joachim Henze d339297585 [0.4.7][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:42:10 +02:00
Joachim Henze 54e7bcf564 [0.4.7][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
2021-05-16 03:18:01 +02:00
Joachim Henze 8e02756722 [0.4.7][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:42:44 +02: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 6ece2bbe9c [0.4.7][SYSDM] Make the GPL text ASCII. CORE-14278
symptom CORE-14278 "View License in the System Properties shows corrupted text for git-clones on Windows"

This is better than wasting space on null chars (and having Git mangle it).
Also ensure that it gets CRLF newlines since its contents go in the binary.

This fixes CORE-14278 regression introduced by 0.4.7-dev-515-g 9ebf43567d

It will also shrink the binary size of sysdm.cpl RosBE2.1.6 GCC4.7.2 dbg
from 807.936bytes to 788.992bytes

Fix picked from 0.4.8-dev-1031-g c0a227d9a5
2021-01-30 04:04:06 +01:00
Joachim Henze d68b4c4a10 [0.4.7][SHELL32] Fix regression CORE-12364 explorer-sorting
The sorting in explorer broke by
SVN r73128 == git 24fcf531e7

Thanks to Doug Lyons for providing this patch.
2021-01-19 18:23:25 +01:00