April 2017 RAD Studio 10.2 Hotfix for Toolchain Issues<p>This hotfix addresses a number of issues in RAD Studio 10.2 Tokyo in the C++ RTL, debugger, and Delphi compiler. It includes a fix for a potential security issue.<p><h3>Debugger</h3><ul><li>Android and Linux: An issue where evaluating a function which throws an exception or encounters an access violation could terminate the debugged application</li><li>Android: A number of issues related to Delphi string types</li><li>Linux: An issue where code inlined from other units would sometimes not have its line number information available, causing code to be non-debuggable</li>iOS32 and Android: Evaluating a dynamic array of records would crash the debugger (iOS) or show nil (Android)<li>Linux: An issue where sometimes two breakpoints needed to be placed in a class’s destructor in order to break.</li></ul><p><h3>C++ RTL</h3><ul><li>RSP-16394: C++ Windows applications could encounter an access violation on exit, if a library had been dynamically loaded via LoadLibrary</li></ul><p><h3>Delphi compiler</h3><ul><li>Resource strings were corrupted if a C++ Win64 application linked to Delphi units statically</li><li>RSP-17138: The Delphi Win64 compiler (or IDE when compiling) could become unresponsive and use 100% CPU</li></ul><p><h3>Security issue: C/C++ RTL</h3><ul><li>A bug in the scanf and related methods’ output buffer size handling that allowed input data to overwrite a larger amount of memory than the size of the target variable, instead potentially writing up to the size of the type specified by the format specifier. This also affected the ‘safe’ versions of methods, such as sscanf_s. It did not allow arbitrary data to be written, such as the contents of a string.</ul></ul><p>Our thanks to Lukasz Wyporek for notifying us of this issue.<p><h3>Known issue</h3><b>Note:</b> If you reinstall the entire product after already having installed the hotfix, when you reinstall this hotfix you will see an error that it is already installed. To fix this, you will need to manually modify the registry by removing "HotfixLevel" value from HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Embarcadero\BDS\19.0 (Under 64-bit Windows) or HKEY_LOCAL_MACHINE\SOFTWARE\Embarcadero\BDS\19.0 (Under 32-bit Windows)<p>Available only to registered users of Delphi, C++Builder, RAD Studio 10.2 Tokyo, and Embarcadero All-Access XE<p>
↧