Within the current ShowTcpTable function logic, tcpTable would be freed twice.
The bug was introduced in 0.4.13-dev-579-g b695971c7f
Remove the second tcpTable free and fix coverity #1477187.
fix picked from 0.4.15-dev-3338-g 0e75fc9240
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
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.
Fix picked from 0.4.15-dev-3313-g 6417b2323d
- Delete useless SendMessageTimeout:WM_NULL call.
- Add useful SendMessageCallbackW:WM_POPUPSYSTEMMENU call.
- In the callback function of SendMessageCallbackW, do PostMessageW:WM_NULL
to properly handle the popup menu.
Fix picked from 0.4.15-dev-3297-g 037c744eb1
RosBE2.2.1 Win GCC8.4.0 RELEASE bootcd build was failing.
This was the last build error for the configuration:
-DENABLE_ROSTESTS=1 -DCMAKE_BUILD_TYPE=Release
fix picked from 0.4.15-dev-285-g 5349f49cfe
Sidenote of current compiler support on releases/0.4.14 (tested on 0.4.14-RC-110-g8600a00):
RosBE2.1.2 Lin GCC4.7.2 Debug build worked before and after this commit (bootcd+livecd) <- primary toolchain for releases/0.4.14
RosBE2.1.6 Win GCC4.7.2 Debug build worked before and after this commit (bootcd+livecd)
RosBE2.1.6 Win GCC4.7.2 Release build worked before and after this commit (bootcd+livecd)
RosBE2.2.1 Win GCC8.4.0 Debug build worked before and after this commit (bootcd+livecd)
RosBE2.1.6 Win MSVC2010SP1 Debug build worked before and after this commit (bootcd+livecd)
RosBE2.1.6 Win MSVC2010SP1 Release build worked before and after this commit (bootcd+livecd)
VSSolution msbuild 2010SP1 Debug build should also work, last time tested 0.4.14-RC-68-g366c46b
Newer MSVC (<= MSVC19.28.29115) might/should work as well, but I did not explicitly test those myself.
CORE-17819 This allows VPC2004/2007 to boot LiveCD SAFEMODE to desktop,
the regular mode booted also without that addition already.
Fix picked from 0.4.15-dev-1537-g b1c460d34e
Logspam started during 0.4.9-dev'ing when zipfldr got committed,
logspam became much worse by 0.4.10-dev-599-g 932df37
But the actual bug of 'calling those functions when not needed' is much older than that.
Fix picked from 0.4.15-dev-3275-g cee171f5d2
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.
observed with MSVC2010SP1 16.0.40219.1 in 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
current master head 0.4.15-dev-3264-g570cedf.
Renaming .LNK files had a bug that the selection won't include the extension-like filename part.
That regressed by
0.4.14-dev-1116-g 4df9355d0c
fix picked from 0.4.15-dev-3261-g 9078e34f3c
In 0.4.14-dev-1321-g d6e0fe78e7
we introduced the following compiler warning for MSVC2010 release build:
reactos/base/applications/notepad/lang/es-ES.rc(12) : warning RC4204 : ASCII character not equivalent to virtual key code
That warning was muted without investing too much love by
0.4.15-dev-2469-g d0bb775774
Proper fix picked from 0.4.15-dev-3253-g fbf50492fd90d54e9c8e53a5615a5db8711c8feb
In particular, add the missed diff in ITextHostImpl_TxGetCharFormat.
It regressed when we did improperly sync to Wine Staging 4.18 via
0.4.14-dev-419-g 76cf09cfea
Fix is squashed back-port of:
0.4.15-dev-3252-g e30b0a356d and
0.4.15-dev-3251-g 5a9535e694
Selection on renaming folders shouldn't select
the extension-like part of filename.
It regressed by 0.4.14-dev-1116-g 4df9355d0c
Fix picked from 0.4.15-dev-3242-g 5da934e34d
This fixes log spam about NM_CUSTOMDRAW not being handled,
e.g. when interacting with the start-menu or filebrowsers menubar.
Less logging implies faster painting here with dbg-builds.
fix picked from commit 0.4.15-dev-3229-g 22e58e68aa
This is an addendum to
0.4.15-dev-3174-g dda9c3979e CORE-17769 and
0.4.15-dev-3147-g 3bf7e3ac13 CORE-17754 CORE-17755
We have not seen this happening in real-life yet, but some code-fragments within co_IntSetScrollInfo()
e.g. line 628 if (nBar == SB_CTL) do clearly indicate that nBar can be 2 (SB_CTL).
Some lines below we definitely must not access those 4 static arrays out of bounds then via nBar as access index!
Ftr with a bit of grepping I also found some calls like NtUserSetScrollInfo(Wnd, SB_CTL, &Info, FALSE);
e.g: in win32ss/user/user32/controls/scrollbar.c so I am pretty sure nBar == 2 can happen in practice within co_IntSetScrollInfo().
I question whether any of those reads/writes to those static arrays (or the comparisons) would make any sense on index 2,
so we should aim to eliminate them altogether in the future.
fix picked from 0.4.15-dev-3175-g 222acf5a3e
squashed backport of:
0.4.15-dev-2375-g ffea5152e6 integer underflow and
0.4.15-dev-3174-g dda9c3979e CORE-17769
Fixes CORE-17769 'Rapps Listview manual resize may erroneously not draw the triangles sometimes'
This could happen for both: themed and unthemed.
CORE-17769 was a regression introduced by 0.4.14-dev-1134-g 00adb1a3f9
We don't really like the added state in form of the static variables,
but the patch works good from a pure testing-perspective.
Many Thanks to the patches author: Doug Lyons
Squashed backport of:
0.4.15-dev-3086-g 236649c626 (#3868) and
0.4.15-dev-3147-g 3bf7e3ac13 (#3953)
to fix some regressions for themed scrollbars that were introduced by
0.4.14-dev-1134-g 00adb1a3f9
fixes all or most parts of CORE-16735 without introducing CORE-17754 and CORE-17755
By taking alternative code-paths in WdmAud and bypassing Sysaudio.
This is my 2nd attempt to commit that.
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.
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.
- 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. I will resolve that as WontFix now.
I do recommend to change in function SymSetSearchPath: the line
WCHAR* sp;
to
WCHAR* sp = NULL;
to avoid the following compiler warning, that I got only on carrier-releaser interestingly,
../dll/win32/dbghelp/dbghelp.c: In function 'SymSetSearchPath':
../dll/win32/dbghelp/dbghelp.c:244:9: error: 'sp' may be used uninitialized in this function [-Werror=uninitialized]
cc1: all warnings being treated as errors
but I did not get that error on compilation when building this locally on "GCC4.7.2 RosBE2.1.6"
or "GCC8.4.0 RosBE2.21", or "VS2010", or with the buildbits/testbots. Weird!
I have no clue, why carrier releaser does behave different here at all upon compilation!
This is a minimized version of the not yet merged patch of (#3257).
I will commit only into the RC but not into master, because
author Thomas Faber is most likely interested in upstream integration.
It fixes Heap Corruption when starting KernRate, which I could confirm
with system-wide DPH beforehand.
Avoids the wizard for unrecognized devices to pop
up after each and every reboot when BTRFS is used.
Also slightly 'improves' the displaying in device manager.
Both regressed by 0.4.14-dev-1535-g 194ea909fd
This is no proper solution, but more or less the same
that we did for 0.4.13 release already.
The proper fix will come in 0.4.15-dev'ing with
the storage-stack-rewrite and does not require those
4 lines to be added in the btrfs.inf anymore.
That new dialog was added during 0.4.14-dev'ing.
Porting back its german translation makes sense therefore.
Especially since it is the last dialog of the bootcd setup
that would be untranslated otherwise for 0.4.14RC.
fix picked from 0.4.15-dev-2040-g b493a2f8ab
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
Improve performance of Start-Run Dialog Box Options
This will fix:
CORE-17351 'RunDlg fails calling URL without http'
and
CORE-16898 'RunCommand "iexplore" fails to open Wine IE'
Both regressed by 0.4.10-dev-419-g bfcbda227f
Fix picked from 0.4.15-dev-2883-g 33c7c91b36
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
* 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
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.
fix picked from 0.4.15-dev-2850-g 847b037fe9
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
Fix automatic toggling of date display on second stage setup
Update comctrl from Wine with fix.
Sync datetime.c to Wine-6.0
Thanks to the patches author Doug Lyons.
fix is aquashed port of
0.4.15-dev-2796-g e382b7bc35 +
0.4.15-dev-2797-g adee5ca255
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.
Thanks to the patches author Doug Lyons.
a squashed port of
0.4.15-dev-2776-g 4130f0b1c5 (compilation fix)
0.4.15-dev-2775-g c596fd3ef6 (improvement #3758)
0.4.15-dev-2734-g 514147776a (fixes the BSOD)
Revert incorrect code for Realize Palette
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 patch also fixes 2 crashes on each bot, although
it was not targeted for that explicitly:
KVM: https://reactos.org/testman/compare.php?ids=77304,77308 LGTM
VBox: https://reactos.org/testman/compare.php?ids=77305,77309 LGTM
Thanks to the patches author Doug Lyons.
picked from 0.4.15-dev-2735-g c7954134d0
Addendum to CORE-16792
The fix is part (but not all) of CORE-17545 Fixing several Clang warnings.
Fix Clang warning:
base/setup/usetup/lang/de-DE.h:1099:24: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
"die Partition <E4>ndern, die derzeit als aktiv markiert ist.",
^~~~
It regressed by 0.4.14-dev-1323-g d079342e0a
picked from 0.4.15-dev-2489-g 33c210da37
With that backport we have no affected releases left.
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 4b9cf2e (r71252). CORE-12441 CORE-17371
picked from 0.4.15-dev-2740-g ba77a09c04
While touching UNIATA port back also some bm_devs.h changes:
0.4.15-dev-2739-g d65d4137d3 (8086:7111 is really PIIX4, not PIIX3)
and
0.4.15-dev-1522-g 88d36c93a2 (Properly mark ReactOS diff from upstream)
no functional change.
Make that look beautiful before porting it back further.
Addendum to 0.4.15-dev-534-g 887764e607
(CORE-17062)
picked from 0.4.15-dev-2705-g a3cadf630a
fixes BSOD 0xc0000139 STATUS_ENTRYPOINT_NOT_FOUND upon boot when
replacing just the file advapi32.dll with 2k3SP2 version 5.2.3790.3959
After adding the stub we can reach the login-screen requesting
for Ctrl+Alt+Delete.
We can properly ACPI-shutdown at this point.
picked from 0.4.15-dev-71-g 0b530fe496
MSI on 2k3sp2 hides empty CD-ROM, and hides CD-ROM with iso mounted.
MSI on 2k3sp2 hides VBox shares, both: writable and read-only-ones.
MSI on 2k3sp2 hides floppy drives with a floppy img mounted.
MSI on XPSP3 hides a mounted writable USB stick.
Thanks to the patches author Doug Lyons.
This patch supersedes
0.4.14-RC-71-g cfc24316a5 (CORE-14432)
and we are also better than Wines
0dd0d879a1
picked from 0.4.15-dev-2704-g d5265b07bb
addendum to 0.4.15-dev-1123-g 0089291751
Fix a compiler error on RosBE2.1.6 GCC4.7.2
that I got when I merged this test back to
0.4.14-RC-67-g ef623b1616
C:/0414rls/reactos/modules/rostests/apitests/shell32/ShellHook.cpp: In function
'LRESULT WindowProc(HWND, UINT, WPARAM, LPARAM)':
C:/0414rls/reactos/modules/rostests/apitests/shell32/ShellHook.cpp:339:26: error
: comparison between signed and unsigned integer expressions [-Werror=sign-compa
re]
cc1plus.exe: all warnings being treated as errors
ninja: build stopped: subcommand failed.
Fix picked from 0.4.15-dev-2662-g d30a1673d4
We decided to check a bit different than Wine currently does.
Wine checks for
if (GetVolumeInformationW(ptr, NULL, 0, NULL, 0, &flags, NULL, 0) && flags & FILE_READ_ONLY_VOLUME)
to exclude read-only-media while we (for now) check for
if (GetDriveTypeW(ptr) == DRIVE_CDROM)
For now this gives us the benefit of covering also CDROM drives, that do not have
a CD put into it.
That does not work properly for us with the Wine patch yet, but it does for Wine!
So this maybe points to some other bug in ros, maybe in our CDROM(FS)-drivers?
In the future we should also test this on other read-only-media in Windows e.g.
a read-only USB stick to decide whether we want to stick with our current solution
or whether we want to switch to Wines solution or whether we want to logically OR
both conditions!
Thanks to Doug Lyons for providing what *currently* does work best for us!
VBox https://reactos.org/testman/compare.php?ids=77537,77546 (no change)
KVM https://reactos.org/testman/compare.php?ids=77531,77541 (no change)
picked from 0.4.15-dev-2651-g 864e20b881