Ports back:
0.4.15-dev-5910-g 99e5f51d5b
in a slightly adapted form, which respects that we were still
a "Team" in 0.4.7 - 0.4.14 and no "Project" yet.
The idea with the "Project" was born during 0.4.15-dev'ing.
That existing difference does also manifest in media/inf/*.inf and I don't intend to
ever change that for the older branches.
That means also that in the older branches we do not need to scroll at all to
see all the text.
Also adopt ReactOS birth year from 1998 to 1996 which we do also use in the msgina startup-dlgs-pics
all the way from releases/0.4.7 at least to todays master head.
by porting back:
0.4.15-dev-6231-g a5360f542f [IPHLPAPI] Formatting only, no functional change
partially 0.4.15-dev-4492-g 03422451b3 [IPHLPAPI] Add a missing \n in an ERR() logging within ipstats_reactos.c getNumRoutes(). And strip a good-path TRACE in return in the same func.
partially 0.4.14-dev-1425-g f540b2b20c [IPHLPAPI] GetAdaptersAddresses(): Add 1 free() in ERROR_NO_DATA case (#2526) (but leave out adding the comments in .h)
only whitespace fixes within [TCPIP][IP][LWIP]
This is a temporary workaround to suppress the last remaining 4 compile-time-warnings for GCC4.7.2 dbg-cfg:
WARNING: /reactos/dll/win32/rsaenh/rsaenh.spec line 26: Exported symbol 'DllRegisterServer' should be PRIVATE
WARNING: /reactos/dll/win32/rsaenh/rsaenh.spec line 27: Exported symbol 'DllUnregisterServer' should be PRIVATE
WARNING: /reactos/dll/win32/msxml3/msxml3.spec line 10: Exported symbol 'DllGetClassObject' should be PRIVATE
WARNING: /reactos/dll/win32/ole32/ole32.spec line 137: Exported symbol 'DllGetClassObject' should be PRIVATE
The new checks were explicitly and intentionally enabled (actually by good intentions!) by:
0.4.13-dev-720-g 2becb000c8
So the muting is no proper fix. But since CORE-16380 is now unfixed for 3.5years (although there were various attempts),
I lost the hope that we will see a proper fix anytime soon.
It is more important to me to reach the "0 warnings at compile time" for the primary toolchain GCC4.7.2 dbg
for releases/0.4.13 and releases/0.4.14 than seeing these currently unaddressable warnings.
And with this commit I will reach that.
Afterwards all releases/0.4.7 to releases/0.4.14 do have 0 compile-time-warnings for their primary toolchain
GCC4.7.2 dbg-cfg RosBEWin2.1.6 and
GCC4.7.2 dbg-cfg RosBELin2.1.2 on Carrier-Releaser.
I intend to defend that state with *claws and teeth*! It took me long to get there!
When needed the checks can still be performed on all releases/0.4.7 till releases/0.4.14 on demand
by building with MSVC2010, which does these checks out-of-the-box without any additional code on our side
and it generates the same warnings for those very same modules then.
Once we will have a proper fix on master, I will reenable the check and port back the final thing.
Master-branch will not receive this workaround and will continue to warn even for GCC.
I verified my workaround to compile successfully with:
RosBEWin 2.1.6 GCC4.7.2 dbg-cfg (tested upfront)
RosBEWin 2.1.6 GCC4.7.2 rls-cfg (tested upfront)
RosBEWin 2.1.6 MSVC2010SP1 (16.0.40219.1) dbg-cfg (tested upfront)
RosBEWin 2.1.6 MSVC2010SP1 (16.0.40219.1) rls-cfg (tested upfront)
(RosBELin 2.1.2 GCC4.7.2 dbg-cfg carrier-releaser) (I will test that after the push in a few minutes)
I did not test Clang at all.
by porting back:
0.4.15-dev-5784-g 2aea4ab945 [NTUSER] Scrollbar.c pure whitespace fixes
0.4.15-dev-5680-g 5ad5737370 CORE-18050 [NTUSER] Delete temporary workarounds in co_IntSetScrollInfo() (#4985)
0.4.15-dev-5355-g 0484beb04b CORE-18593 [NTUSER] Don't redraw scrollbar if it is hidden command prompt (#4849)
0.4.15-dev-4492-g 03422451b3 Add '\n' to debug logs (partially, only the scrollbar.c part)
0.4.15-dev-3875-g 977c129f33 CORE-18048 [USER32] SetScrollPos should not bypass UserApiHook (#4372)
0.4.15-dev-3849-g fd28a69de6 CORE-17780 [WIN32SS] Store the scrollbar theming enabled flag in the scrollbar (#4367)
0.4.15-dev-3175-g 222acf5a3e CORE-17777 [NTUSER] Scrollbar.c, Avoid potential out-of-bounds-accesses in co_IntSetScrollInfo()
0.4.15-dev-3174-g dda9c3979e CORE-17769 'Rapps Listview manual resize may erroneously not draw the triangles sometimes'
0.4.15-dev-3147-g 3bf7e3ac13 CORE-17754 and CORE-17755 [NTUSER] Improve Themed Scrollbars by Minimizing Updates (#3953)
0.4.15-dev-3086-g 236649c626 CORE-16375 [UXTHEME][NTUSER] Fix flashing of scrollbar when scrolling (#3868)
0.4.15-dev-2375-g ffea5152e6 [WIN32SS][NTUSER] Fix an integer underflow within scrollbar info setting
0.4.14-dev-1134-g 00adb1a3f9 [WIN32SS] Improve Drawing Scrollbars
- CORE-14755 fixed, flashing scrollbar triangles (we know 131 affected apps just from rapps!)
- CORE-13931 fixed, FamiTracker invisible about-dlg
- CORE-14685 improves a bit, but is not entirely fixed
- CORE-11561 'Notepad scrollbars problem' fixed
This will also speed up NSIS installers that display their file-copy-progress by
a self-scrolling listview.
by hand!
Motivation is to fix the following warnings at configure-time for *MSVC x86 dbg* :
-- dcomlaunch has no base address
-- netlogon has no base address
-- w32time has no base address
-- dpnhpast has no base address
-- cryptext has no base address
-- netplwiz has no base address
-- fusion has no base address
-- fusion_1_1 has no base address
-- fusion_2_0 has no base address
-- msxml3r has no base address
-- xolehlp has no base address
-- localspl_apitest.dll has no base address
This fixes CORE-14831 for *MSVC dbg* for this release-branch at least.
Meaning: It hides the effect, without fixing the cause.
It is not a sustainable solution for master yet.
We'd need to improve the python script for that.
I tested afterwards the bootup of a build configured via:
-DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1
and built with:
MSVC 2010SP1 (16.0.40219.1) x86 target in dbg configuration
and verified that we had no relocation happening until 3rd stage desktop VBox4.3.12.
MSVC 2010SP1 (16.0.40219.1) x86 target in *rls* configuration was not
tested yet, as that up to now did never reach the desktop yet for unrelated reasons.
I will not upload an iso to sourceforge after this commit,
because it will not have any impact for our primary GCC 4.7.2 toolchain.
By taking alternative code-paths in WdmAud and bypassing Sysaudio.
This is a squashed backport of:
0.4.15-dev-791-g 6d7ebc2048 the USE_MMIXER_LIB which gives the best results when paired with those 2 previous patches:
0.4.15-dev-765-g b8e936a57b CORE-17214 (#3148) wdmaud-racecondition-fix and
0.4.15-dev-796-g a27f0debca CORE-17276 winmm:mixer-testbot-crash-fix
Defining USE_MMIXER_LIB will fix/improve:
- the test execution times of "GCCLin_x86 on Test VBox" will be dramatically improve (iirc by ~10-15min)
- CORE-8726/CORE-9986/CORE-16564 AC97 driver from rapps will work in the same session that the driver is installed, not a single reboot is needed anymore
- CORE-13202 Unhandled exception from wdmaud.drv when recording sound in Scratch 1.4 leads to app-crash (gets fixed even for older builds that did not receive 0.4.15-dev-2794-g 81f8bce yet)
- CORE-13488 A deadlock in "DiabloII" character selection screen and "The Lion King II"
- CORE-9981 "DosBox + Commander Keen6" almost 100% fixed, DosBox + Commander Keen6 properly plays music instead of garbled output,
same improvement for "ScummVM 2.0 with Monkey Island 2"
The playback is not yet *entirely* perfect, still a few hiccups now and then, but by orders of magnitude better than before.
Most of the above mentioned issues were a regression of SVN r44721 == 4b9731d0db
Defining USE_MMIXER_LIB will also have some negative aspects:
- CORE-17277 crash of dsound:duplex on "GCCLin_x86 on Test VBox" gets unhidden on the bot, but was proven to be broken even beforehand already. The driver beforehand was just not found and the tests were skipped therefore.
- CORE-17278 crash of dsound:capture on "GCCLin_x86 on Test VBox" gets unhidden on the bot, but was proven to be broken even beforehand already. The driver beforehand was just not found and the tests were skipped therefore.
- CORE-17744 Fox Audio Player 0.10.2 can not longer play an mp3 file with 22kHz, WMM audio output
- It may also have a negative impact for CORE-17285 "Realtek HD Audio" but Oleg Dubinsky accepted to tolerate that and aims to approach it differently. We resolved that as WontFix therefore.
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
by hand!
Motivation is to fix the following warnings at configure-time for *GCC dbg* :
-- netlogon has no base address
-- w32time has no base address
-- rshell has no base address
-- fusion has no base address
-- fusion_1_1 has no base address
-- fusion_2_0 has no base address
-- msxml3r has no base address
-- notifyhook has no base address
-- vfd has no base address
-- msvcrt_crt_dll_startup has no base address
-- redirtest1 has no base address
-- redirtest2 has no base address
-- localspl_apitest.dll has no base address
-- load_notifications has no base address
-- custom has no base address
-- testvdd has no base address
This fixes CORE-14831 for *GCC dbg* at least for this branch.
Meaning: It hides the effect, without fixing the cause.
It is neither a sufficient fix for other toolchains/configs,
nor a sustainable solution for master yet.
We'd need to improve the python script for that.
observed with MSVC2010SP1 16.0.40219.1 x86-target in dbg+rls-config several times:
sdk\lib\crt\string\wtoi64.c(28) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
sdk\lib\crt\string\wtoi64.c(194) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
the fix is a PARTIAL port of 0.4.15-dev-2951-g 5d8e834897
and while touching the file
fix another white-space-glitch.
in sum that brings us 100% in sync in this file to master 0.4.15-dev-3264-g570cedf.
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
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.
Thanks to Jim Tabor, Mark Jansen & Thomas Faber
By squashed backmerge of the following commits:
--------------
[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 and CORE-16769. KsStudio still needs retested.
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. See CORE-13019 and CORE-13907.
cherry picked from commit 0.4.14-dev-1241-g
915a5764a9
--------------
[USER32] Fix null return.
See CORE-16769.
cherry picked from commit 0.4.14-dev-1240-g
d8add40e89
Missed a file. See CORE-14439.
cherry picked from commit 0.4.14-dev-1210-g
78098f99e0
[0.4.13][EXPLORER|SHELL3232] Fix CORE-14439 part 1 of 2
Prevent ros from halting when Miranda IM 0.10.21 snap-to-border-feature is used.
Fix SHAppBarMessage (not perfect) by adapting wine code. See CORE-14439.
More work is required. Kept the original code for reference.
Example : SetWindowPos should be called via Post Message.
Code commit is to wake up other developers.
cherry picked from commit 0.4.14-dev-1209-g
10d1afea18
This version (after .rsrc) works different than the
proper version I used for 0.4.12 (after .reloc).
Inserting after .rsrc as actually not correct, but Thomas believes it can
be used as a temporary trick to avoid random memory corruption upon
relocations of the kernel, caused by ROSBE-154.
I follow his advice, although when judging from practical tests only:
as long as we limit this script to NTOSKRNL like I do for releases
there have no negative consequences been observed in real life yet
even with the proper version of 0.4.12.
Up to now those problems have only been observed when used for drivers
MODULE TYPE sdk/cmake/gcc.cmake as well, like
it was tried for a moment in master 0.4.13-dev-609-g
c4d8e2a6e9
Using for drivers immediately did lead to BSODs like CORE-16183 and therefore was
mitigated in master by total disabling of the scripts for both,
kernel and drivers in
0.4.13-dev-621-g
36e9a6f8dd
To allow installing DVDWritenow without BSOD,
we need the script at least for ntoskrnl!
Master remains affected by the BSOD until Thomas allows to commit there as well.
Pierre recommended this hack-fix for 0.4.8rls before.
Avoids "GetVolumeInformation now fails on NFS volume"
I will not retest any RDBSS functionality myself in my tests,
maybe some other tester would be kind enough to retest this?
Please note that I replaced #if 0 with #if 1
as discussed with Pierre. That's different to the patch in ticket.
like in last release
(cherry picked from commit 26080d0c64)
This brings us back to before guilty commit 0.4.10-dev-55-g
7af3969e9f
and therefore downgrades
dll/directx/wine/
D3D8,D3D9,DDRAW,D3DCOMPILER_43
to WineStaging 3.3 for this rls.
Also downgrades related header sdk/include/reactos/wine/wined3d.h
and for the first time also media/doc/README.WINE
Same versions of these dlls we had in every ros rls since 0.4.10rls.
Purpose of this revert is to fix crashes when Ddraw apps switch
into fullscreen with VBEMP and inbuilt Mesa.
I tested, before:
DxDiag crashed when switching to fullscreen (CORE-14955),
Diablo II crashed immediately (CORE-15652),
Monster-Truck-Madness 2 demo crashed after main menu
Afterwards all of these apps do run.
DXTN does still work after that, even with VBEMP and inbuilt Mesa.
This will be the interim fix, which I will keep for rls at least
until someone manages to fix CORE-14955 properly in master with current Wine.
analog to 0.4.10-RC-17-g
bb4c55d650
- Use tempnam() and fopen() instead.
- Prevent the use of file names with a leading slash or backslash.
- Also prevent the use of file names with a trailing dot.
- Remove temporary files after use.