Don't call ClientToScreen in handling NM_RCLICK message because NMMOUSE.pt is already in screen coordinates.
CORE-18966
A backport of:
0.4.15-dev-6298-g b4e946f5b0
and strip EOL whitespace
For some reason I accidentally forgot to add the CMakeLists.txt to the previous commit and left it in my workspace.
Sorry, this happened only in releases/0.4.11 but in no other branch.
So this actually brings all that I wanted to have from:
0.4.12-dev-237-g 446e13745c [ADVAPI32] Stop pretending our advapi32 is NT6+, inconsistent TEB definitions CORE-15526
Actually I was working on a much bigger commit in the same context for releases/0.4.7
when I realized that related glitches do also affect master head
and also other release-branches in some areas.
this ports back (also) the following commit:
0.4.15-dev-6308-g 2d9877470d
While touching those files, port back some minor translation improvements also.
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)
partially 0.4.13-dev-14-g f9a967b2ae [IPHLPAPI] Fix misc 64 bit issues (only the parts in iphlpapi_main.c with the format strings)
0.4.12-dev-686-g 22f60faf43 [IPHLPAPI] Remove dead code to fix CID 513306, 1442673, 1442697
only whitespace fixes within [TCPIP][IP][LWIP]
port back:
0.4.15-dev-5901-g c37addcbf5 [CONSOLE] Harmonize IDC_LBOX_FONTTYPE height to 40 for *.rc (#5211), tweak some headers
and partially 0.4.15-dev-5503-g 5123edd731 [CONSOLE] Improve font preview and Update de-DE.rc (#4933)
and also pick a few other rc improvements here and there, mainly dupe-accelerator-fixes, and whitespace+logmuting in some .c
0.4.15-dev-5890-g 56bf3969cd [SYSSETUP] Tweak IDD_COMPUTERPAGE positioning (#5158)
0.4.15-dev-5875-g 7c755d9b84 [SYSSETUP] Delete obsolete lt-LT.rc
0.4.15-dev-5874-g c762234546 [SYSSETUP] Fix font glitch in ja-JP.rc (#5192)
0.4.15-dev-5871-g 3963d7d5f2 [SYSSETUP] Delete obsolete fi-FI.rc
0.4.15-dev-5772-g 784946db8c [SYSSETUP] Tweak resources CORE-18870
0.4.15-dev-5732-g 909b165c4a [SYSSETUP] Removed qemu credit entirely (#4971)
0.4.15-dev-5678-g cc54ecd779 [SYSSETUP] Fix a space-typo in IDS_WZD_PASSWORDEMPTY for *.rc (#5049)
0.4.15-dev-1102-g ad4c174eb6 [SYSSETUP] fr-FR: Change keyboard accelerator for Owner Organization field (#3282)
0.4.14-dev-1445-g 173a2af48c CORE-16874 [SYSSETUP] Update authors page in second stage setup
(that part got unhidden by 0.4.10-dev-466-g 35f62fc5ba . Picked as one of the needed preparations in case I would ever port back the guilty rev later)
and a few other gems from other partially picked master-commits that are not explicitly mentioned here.
--------
Also strip the IDC_LOCALETEXT and IDC_LAYOUTTEXT from the resources as that was only implemented in releases/0.4.15,
is even today still not properly localized there, they changed their dimensions again with that
and I don't intend to port that back anytime soon. And if I ever will, then all the resources would need to be touched again anyway.
--------
0.4.11 zh-CN.rc lacked the GPL button, although it was present in releases/0.4.10 and releases/0.4.12. Fixed that as well.
port back:
0.4.15-dev-5785-g c766ee9ebb CORE-18874 [NETSHELL] Shrink radio buttons vertically (#5157)
0.4.14-dev-1481-g fff2fc9327 CORE-16903 [NETSHELL] RC Overhaul all languages IDD_LAN_NETSTATUS & IDD_LAN_NETSTATUSADVANCED
0.4.14-dev-293-g 2b39b42a0a CORE-15248 [NETSHELL] Fix checkboxes in the network adapter properties
partially 0.4.12-dev-315-g 01e5cb0c04 [NETSHELL] Fix incorrect resource IDs.
and port back also a few other small RC-improvements from master here and there
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.
It regressed in this branch by 0.4.11-release-160-g 0e8bf0cbed
( in master it was by 0.4.15-dev-5613-g 7a17c7d9ad )
It was the only place within the ros sources where message WM_SHOWSTATUSDLG
was sent also from code. And therefore the only one that needed to be updated as well.
Fix picked from:
0.4.15-dev-5712-g a5cd42c1ea
by porting back:
[SHELL32] Ignore unused flag SEE_MASK_UNICODE (#5033)
0.4.15-dev-5676-g 5c22ce3742
to mute logspam of the kind
fixme:(dll/win32/shell32/shlexec.cpp:1934) flags ignored: 0x00004000
e.g. when starting Rapps.
-------------------------------------------------------------
[SHELL32] brsfolder.c Delete unused #ifndef __REACTOS__ block
It is a partial pick of:
0.4.15-dev-3642-g 83be315abf
and strip all EOL-whitespace in that file.
This part is done as the file is part of a backport into even older branches.
brsfolder.c will be 100% in sync between releases/0.4.7 - releases/0.4.14 afterwards.
-------------------------------------------------------------
[SHELL32] de-DE.rc Update regarding IDC_BROWSE_FOR_FOLDER_NEW_FOLDER
0.4.15-dev-2957-g c30b1fe893
and pick other small tweaks in that file from master
-------------------------------------------------------------
[COMDLG32] Support shortcut keys on Open/Save Dialog (#3238)
Enable key accelerators on File Open/Save Dialog. CORE-14332
0.4.15-dev-1050-g c8e1460ac5
--------------------------------------------------------------
[SHELL32] Implement VK_DELETE on SHBrowseForFolder (#2661)
Enable Del/Delete key to delete the selected folder in "Browse for Folder" dialog.
You can use https://jira.reactos.org/secure/attachment/40118/getfolder.zip as a test program.
0.4.15-dev-39-g 771457f37f
--------------------------------------------------------------
[SHELL32] Sync brsfolder.c with keyboard shortcut code from wine (#2290)
0.4.14-dev-1187-g fc4c4d4911
by porting back:
0.4.15-dev-5542-g f9dfc45375 CORE-18587
0.4.14-dev-980-g b1c7ca3024 Attention comment
0.4.14-dev-979-g ba17d87636 Attention comment
and pick a few places where translators decided to shorten their strings
by porting back:
0.4.15-dev-5588-g e89675768b [SHELL32] Add 3 accelerators for IDM_DRAGFILE MENU de-DE.rc (#5001)
pick a single line only of 0.4.15-dev-984-g a5a30fc249 [SHELL32] CFSDropTarget.cpp ERR->TRACE to mute logspam
and strip some EOL-whitespaces in 3 related source-files thats contents I will port back into even older branches, like it was done in master.
- This fixes problems with "F17" or "F14" shortcut key in the menu items of some programs,
e.g. SQLiteAdmin 0.8.3.2
CORE-17906 CORE-3903
fix picked from 0.4.15-dev-5145-g cdf907074d
--------------
[KEYBOARD] Switch to QWERTZ for Croatian keyboard layout (#4177)
fix picked from 0.4.15-dev-3503-g 2196a06fc1
--------------
[KBDHU] Fix Hungarian keyboard layout. (#1765) CORE-15567
partial pick from 0.4.13-dev-732-g 48200015f7
(I left out the header comment to keep the file pure ASCI)
--------------
Also ported back some EOL whitespace trimming
picked from 0.4.15-dev-5519-g e8e38b8301
picked from 0.4.15-dev-2937-g 1078340f5c
and ported back some trivial changes in some other languages as well.
- Fix leaking two handles to avoid creating zombie processes when closing the
screensaver preview
fix is *partial* pick of 0.4.15-dev-5495-g 71123b72fa which *partially* fixes CORE-18680 (#4921)
The other part of that fix is not safe, neither on master, nor when porting back due to yet unfixed Win32K bugs.
-------------------------
*partial* pick of 0.4.15-dev-3154-g 158a479a4e "\r\n"->"\n" in desk.cpl
-------------------------
furthermore port back some EOL-whitespace cleanup and some minor translation improvements
-------------------------
also *partial* pick of 0.4.15-dev-5521-g 5ecb9e8cb5 (#4943)
only the parts that are relevant for older releases
-------------------------
0.4.14-dev-111-g 72e5c2e77c hShell32 is always non-NULL in epilogue
Item hint for "Resources by connection" was incorrectly set to the hint for "Resources by type".
fix picked from 0.4.15-dev-5334-g 075ec50298
and also port back stripping of some EOL-whitespace
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.
Mutes the logging:
fixme:(dll/directx/wine/ddraw/utils.c:584) Unhandled flags 0x20.
gets logged many times per second.
It does affect several applications, e.g. the game 'Anno 1602' from 1998, and the 'Diablo 2 demo' from rapps,
For both games it can be observed with both: our VBEMP driver and the VBox4.3.12 3D-accelerated-driver.
Muting may improve performance a bit in such apps.
It gets logged although no missing features can be perceived visually in the rendering.
The regression was introduced to master by 0.4.9-dev-155-g 9987f02917
Fix it by importing Wine-commit
b943c7910b
ddraw: Handle DDLOCK_WRITEONLY in wined3dmapflags_from_ddrawmapflags().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
fix picked from 0.4.15-dev-5070-g 305aae75f5
Today 2022-10-25 was the day, when I spotted the first URL in rapps that is not longer happy with just having
ECDSA_P256 but now needs even ECDSA_P384 to make the rapps download succeed. *eye-rolling*
It was https://bitbucket.org/Swyter/tld-downloads/downloads/diabloiidemo.exe
that failed the rapps download with
fixme:(dll/win32/bcrypt/bcrypt_main.c:359) algorithm L"ECDSA_P384" not supported
err:(win32ss/user/user32/windows/messagebox.c:1048) MessageBox: L"Paket konnte nicht geladen werden! Pr\00fcfen Sie Ihre Internetverbindung!"
So I have no choice but to follow the totally stupid crypto-rat-race and
add the missing structs and handlers in BCryptOpenAlgorithmProvider().
When will the world ever learn that the new cryptos do outdate faster than the new shit even can be implemented in time everywhere?
Each additional crypto algorithm effectively enlarges the attack surface of the end-points instead of making stuff more secure.
The world is rushing towards totally breaking backward compatibility to older systems. This is built-in obsolescence. For which gain?
This race can never be won. Each crypto-iteration just intensifies the existing chaos. Enough ranting...
fix picked from 0.4.15-dev-3662-g c3e0df0611
It is a cherry-pick a part of Michael Müller's commit from Wine
76b6c360fa
The commit doesn't fix CORE-14198 at all, same like on master, but since the original commit was linked
to that JIRA ticket as well, I decided to do the same with the backport.
This is a squashed backport of the following commits:
0.4.13-RC-53-g 4f628f6b16 (partial pick of shell32-changes for Miranda CORE-14439 & Winamp CORE-13584, explorer left out)
0.4.14-dev-369-g 141cf04239 (#2046) NTUSER
0.4.15-dev-1126-g 58b0558f94 (#3294) NTUSER
0.4.15-dev-2618-g 32b0cf6fc6 (#3697) NTUSER
0.4.15-dev-2621-g 59d4c11203 (#3700) NTUSER
0.4.15-dev-5242-g e6fb0e0c25 (#4800) Cleanup
brings us closer to releases/0.4.14
In the older branches it will fix the following bugs (or prevents introducing them):
CORE-13584 'Winamp 5.666 erroneously has a secret tab shown in taskbar'
CORE-14380 'Effective File Search 6.8.1 when you open up the app via desktop link there is no pane in taskbar'
CORE-14439 'Miranda IM 0.10.21 snap-to-monitor-border-feature brings ros to halt'
CORE-15655 'Click-N-Type Virtual Keyboard 3.03.0412 has no taskbar pane'
CORE-15669 'DVD Write Now 1.5.12 SP2 setup has no taskbar pane'
CORE-15716 'Photofiltr 7.2.1 has no taskbar pane'
CORE-15731 'Java JRE 6u45 setup, last page of setup has no taskbar pane'
CORE-16030 'Moo0 Audio Recorder - the taskbar icon does not appear'
(CORE-17330 Regression, many installers that should have only 1 taskbar pane, now have 2 of them erroneously)
fixes BSOD 0xc0000139 STATUS_ENTRYPOINT_NOT_FOUND upon boot when
replacing just the file advapi32.dll with 2k3SP2 version 5.2.3790.3959
We can not reach the desktop yet, but at least the GUI,
and we do no longer BSOD and can instead properly ACPI-shutdown at this point.
picked from 0.4.15-dev-71-g 0b530fe496
----------
also pick unrelated 0.4.14-dev-1260-g 6e79e60883 [RPCRT4] Fix 'Routeines' typos (#2481)
which contrary to its commits comment in master is very little only 'related' to CORE15682
but it imports c73352047d
and is a very safe fix, so I picked that as well.
It fixes Heap Corruption when starting KernRate, which I could confirm also in
all the older ros branches by using:
gflags /p /enable Kernrate_i386_XP.exe /full
Kernrate_i386_XP.exe
The older builds did not expose the user-visible symptom of "the app crashing" yet
(due to different memory layout),
but the heap corruption was already happening in all of them.
This is a squashed backport of:
0.4.14-RC-92-g d3e301e28b (the actual fix)
0.4.14-RC-93-g 651a011548 (fix for compiling on GCC RosBE *Lin* 2.1.2 carrier-releaser)
0.4.14-release-24-g 57efac32b1 (just a whitespace addendum)
Logspam started during 0.4.9-dev'ing when zipfldr got committed,
logspam became much worse by 0.4.10-dev-599-g 932df378bf
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
That problem in the shell was unhidden when we switched from our own to the MS-PL CDFS-driver
in 0.4.8-dev-164-g ec6b3ecbe4
because our own old CDFS driver erroneously never reported any CD file being read-only.
Fix picked from 0.4.15-dev-4348-g 513d0a6d2d
While backporting the fix, I decided to port back also some EOL-whitespace-stripping in that file.
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
The bug was a regression of 0.4.9-dev-151-g 0aed0fd167 very likely,
The symptom with the logging can neither be observed in unpatched releases/0.4.8 nor in releases/0.4.7
which I could observe all the way from releases/0.4.7 up to releases/0.4.14
with MSVC 2010SP1 (16.0.40219.1) x86 target in dbg configuration
Creating library dll\win32\winhttp\winhttp.lib and object dll\win32\winhttp\winhttp.exp
LINK : warning LNK4199: /DELAYLOAD:ole32.dll ignored; no imports found from ole32.dll
Fix picked from 0.4.15-dev-4326-g 2f7dc168f2
And just for the record: Wine did the same with their:
f400f25c25
the warning could be observed with MSVC 2010SP1 (16.0.40219.1) x86 target in dbg configuration:
[10847/12816] Building C object dll\win32\netcfgx\CMakeFiles\netcfgx.dir\propertypage.c.obj
C:\0411rls\reactos\dll\win32\netcfgx\propertypage.c(319) : warning C4553: '==' : operator has no effect; did you intend '='?
Fix picked from 0.4.12-dev-656-g c0d97cec88
The bug was introduced by 0.4.11-dev-308-g 91ba4e7350
can be observed with MSVC 2010SP1 (16.0.40219.1)
This fixes 30 warnings of multiple kind, e.g.:
27 of the kind:
C:\047rls\reactos\dll\3rdparty\libtirpc\src\auth_sspi.c(107) : warning C4996: '_strdup': Deprecated POSIX name, Try _strdup instead!
and also:
C:\047rls\reactos\dll\3rdparty\libtirpc\src\svc_vc.c(315) : warning C4101: 'cleanfds' : unreferenced local variable
C:\047rls\reactos\dll\3rdparty\libtirpc\src\svc_vc.c(488) : warning C4101: 'pollfd' : unreferenced local variable
C:\047rls\reactos\dll\3rdparty\libtirpc\src\xdr_rec.c(424) : warning C4133: '=' : incompatible types - from 'char *' to 'int32_t *'
Muting makes sense for this *3rd party library*. Better than creating more diff within here by addressing them.
This leaves no warnings left within this lib.
Fix picked from:
0.4.12-dev-803-g 3d3377a5c0
Continininininininininously improving ros by fixing glitches in msg408 and msg411. ;-)
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1142-g 92aabb07fb (#2393)
(#2393) is fully covered now for the backport.
Phew, these are the last ones for this branch!
Now reduced by the preceding commits to a manageable amount.
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1142-g 92aabb07fb (#2393)
Yes, I do see the 'conti\n\n\n\n\n\n\nnue'-mess within dll/win32/rasdlg/lang/en-US.rc
Will be taken care of later.
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1142-g 92aabb07fb (#2393)
Yes, I do see that we still have some '\n.' typos in some files, e.g.
base/applications/shutdown/it-IT.rc. I will take care of them later!
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1142-g 92aabb07fb (#2393)
Yes, I double-checked the msi_en.rc, and we do only use the \t after the \n (without additional spaces).
It is a good harmonization therefore to reduce the indentation level here.
fix is a partial (intentionally non-squashed) pick of 0.4.14-dev-1037-g 554c41e4d7 (#2387)
I am aware that some of the touched lines do still contain other issues for the moment!
A *partial* backport of 0.4.14-dev-1506-g c82ba3485e , part of (#2603)
That menu item never had any effect up to now as it had no implementation in ros,
and it also does not exist on Windows at this location.
The desired effect can already be achieved by just hitting F5 or selecting "Refresh" from the same root-context menu.
I do port back only the removal of this commit for now, and not the added new functionality in the submenu "Arrange Icons By", to
allow translations for that to settle down a bit on master.
The main motivation to port all that back is to get rid of Win32K-BSODs 0x50 like CORE-13907
that could be triggered by user-mode-applications.
Technical reason was CORE-14857 "RtlImageNtHeaderEx needs SEH" and issues with hooks+callbacks.
All other tickets mentioned in here were regressions that we experienced on the long
journey towards perfecting the fixes on master head, and those were not happening yet in the older builds,
so they are mentioned in here only to allow tracking where that code went into.
Thanks to Jim Tabor, Mark Jansen & Thomas Faber
By squashed backmerge of the following commits:
0.4.15-dev-3440-g a89844f740
0.4.15-dev-3430-g 9cff384c22
0.4.14-dev-1287-g 568b6d0558
0.4.14-dev-1255-g 177ae91bf6
0.4.14-dev-1241-g 915a5764a9
0.4.14-dev-1240-g d8add40e89
0.4.14-dev-1002-g feb7df42b4
JIRA-tickets: CORE-13907, CORE-16769, CORE-14857, CORE-17856, CORE-17857, partially CORE-13019.
We also had some more dupes of CORE-13907 in JIRA, but I linked all of them (transitively)
towards the initial report, and resolved them without setting a fixVer for them.
In more detail:
--------------
[USER32] Fix BSOD 0x50 in 'WineVDM + Castle Of Winds' CORE-17856 CORE-17857
CORE-17856 BSOD 0x50 when starting Castle of the Winds second time, with WineVDM
CORE-17857 BSOD 0x50 on shutdown after closing Castle of the Winds with WineVDM
0.4.15-dev-3430-g 9cff384c22
0.4.15-dev-3440-g a89844f740
--------------
[NTUSER] Fix Strings and Format to Hooks
Allocate heap instead of data segment to be used for callbacks on user side.
Move and correct initial hook call out setup. Use it in more than one hook call.
This fixes issues with strings out of alignment and use of kernel pointers.
See CORE-13907 (HXD-portable BSOD) and CORE-16769 (HXD-portable exception)
Small wow update.
cherry picked from commit 0.4.14-dev-1287-g 568b6d0558
--------------
[RTL] Introduce RtlpImageNtHeader,
which implements the required functionality.
ntdll and ntoskrnl now have a wrapper for this, with SEH.
This protects the function against malformed / bad images,
whilst still being able to use the code in freeldr et al.
Idea from Thomas.
CORE-14857
cherry picked from commit 0.4.14-dev-1255-g 177ae91bf6
--------------
[WIN32SS] Form Sanity to Hook Callbacks
Fix WH_CALLWNDPROC/RET data to user hook calls.
Helps with CORE-13907 "(HXD-portable BSOD)"
Fixes the logging of "(win32ss/user/ntuser/callback.c:748) err: Failure to make Callback! Status 0xc00000fd" within CORE-13019, but not the whole ticket.
cherry picked from commit 0.4.14-dev-1241-g 915a5764a9
--------------
[USER32] Fix null return.
See CORE-16769 "HxD 1.7.7.0 portable unhandled exception"
cherry picked from commit 0.4.14-dev-1240-g d8add40e89
--------------
[WIN32SS] Fix a typo in dbg print
cherry picked from commit 0.4.14-dev-1002-g feb7df42b4
Can be observed with MSVC2010SP1 x86-target dbg-config:
"...\ignorefreelib.c(125): error C4090: 'function': different 'const' qualifiers"
Addendum to 0.4.11-dev-740-g 007cc5cd8a
Older branches than releases/0.4.11 were not affected yet by this compiler warning.
Fix picked from:
0.4.13-dev-75-g a57bc4f6c3
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
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
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