New features and customer reported issues fixed in RAD Studio 12.1
RAD Studio™️ is the ultimate RAD environment for quickly building high-performance native cross-platform applications in Delphi and modern C++ using integrated toolchains loved by developers.
RAD Studio 12.1 has a strong focus on quality improvements. Key quality focus areas include:
- C++ Clang Toolchain
- Split Editor
- IDE
- Debugger
- Android Target API level 34
- VCL
- VA
- Delphi Compiler
- Other Libraries
Please visit the 12 Athens - Release 1 page for a detailed list of new features.
Publicly reported bugs fixed in 12.1
RAD Studio 12.1 Athens release includes over 400 quality and performance enhancements for publicly reported bugs.
Summary | Components | ExternalID |
---|---|---|
32 bit Lib fails building ("mtbcc32" exited with code 1) with 11.3 (worked fine with 11.0) | 3rd Party | RSP-42213 |
bcc64 compilation not emmitting any warnings | Compiler, Compiler\C++ | RSP-43564 |
__MT__ define not set when using -tWM | Compiler, Compiler\C++ | RSP-42803 |
bcc64x lacks -q compiler option | Compiler, Compiler\C++ | RSP-43024 |
[REGRESSION] Wrong codegen when accessing record fields from aliased generic type | Compiler, Compiler\Delphi | RSP-44299 |
Bug in MOD operation for Win64 Release configuration | Compiler, Compiler\Delphi | RSP-44063 |
[REGRESSION] Wrong codegen when passing empty open array to operator overload | Compiler, Compiler\Delphi | RSP-43656 |
F2084 Internal Error: AV00000000(61060000)-W00000000-8 | Compiler, Compiler\Delphi | RSP-43435 |
Wrong Delphi code optimization for integer div/mod | Compiler, Compiler\Delphi | RSP-43418 |
Access violation occurs when assigning Default(T) to Custom managed record | Compiler, Compiler\Delphi | RSP-43409 |
Arithmetic operations on record fields return incorrect results in certain cases if the "Optimization" compiler option is enabled | Compiler, Compiler\Delphi | RSP-43274 |
Internal compiler error F2084 | Compiler, Compiler\Delphi | RSP-43007 |
Memory leak when returining interface from inlined method | Compiler, Compiler\Delphi | RSP-42907 |
Сombination of code breaks debugging of the whole project. Again. (x64 only) | Compiler, Compiler\Delphi, Debugger | RSP-43535 |
DBGrid displays an extra row that is not data-bound. | Data | RSP-41718 |
TField of type ftFMTBcd. EbcdException when DecimalSeparator changed | Data, Data\ADO | RSP-42120 |
SQL command parsing in ADODB.pas | Data, Data\ADO | RSP-41503 |
TDBNavigator is disable when we compile a project in Delphi 12 which was created in Delphi 11.2 | Data, Data\DBCtrls | RSP-44036 |
TDBNavigator fails to enable after disable. | Data, Data\DBCtrls | RSP-44017 |
Regression: Vcl.DBCtrls - TCustomDBLookupComboBox.WMKillFocus no longer call CloseUp | Data, Data\DBCtrls | RSP-44001 |
PopUpMenu not visible in a DBRichEdit | Data, Data\DBCtrls | RSP-43508 |
TDBNavigator: edit or extend default hints | Data, Data\DBCtrls | RSP-43337 |
OnValidate Fails to update NewValue when there is more than one record | Data, Data\DBRtl | RSP-44081 |
Blob reading is broken for 64-bit platforms in dbExpress | Data, Data\DBX | RSP-43326 |
FireDac ConnectionDefs are not fully Thread Safe | Data, Data\FireDAC | RSP-44235 |
Regression/error in TFDPhysCommandGenerator.GenerateCreateTable | Data, Data\FireDAC | RSP-44247 |
Using ftAutoInc leads to exception with Firebird and Interbase during table creation (VCL) | Data, Data\FireDAC | RSP-43927 |
D12 Firedac - Error with filter property with TFDTABLE or TFDQUERY | Data, Data\FireDAC | RSP-43527 |
TFDQBE causes an exception with TFDTable | Data, Data\FireDAC | RSP-43457 |
TSQLTimeStampOffset problems with Firebird 4 | Data, Data\FireDAC | RSP-43311 |
FiredDAC Connection editor - Data Mapping rules | Data, Data\FireDAC | RSP-43251 |
FireDAC Connection editor | Data, Data\FireDAC | RSP-43247 |
TFDTable with SQLite and filtering with upper or lower | Data, Data\FireDAC | RSP-43018 |
SavePoint / RestorePoint fail with a cloned TFDMemTable | Data, Data\FireDAC | RSP-42423 |
TFDScript - comment after command | Data, Data\FireDAC | RSP-41512 |
ClientDataSet removes decimal values (the value after the decimal point) when retrieving the value of numeric fields from PostgreSQL | Data, Data\FireDAC, Data\MIDAS | RSP-43379 |
Editing tIBDataSet.SelectSQL - add shortcut key to OK, add "Code Editor..." button | Data, Data\IBX | RSP-20211 |
Object Serilization generate AV | Data, Data\REST | RSP-43659 |
JSON serialization of typed object fails | Data, Data\REST | RSP-43488 |
TRESTRequest Resource-Parameters get encoded twice | Data, Data\REST | RSP-43450 |
Regression: TRestRequest.AddParameter double escapes '%' in Query parameters | Data, Data\REST | RSP-43047 |
TMultipartContentParser treats every part with ContentType as File | Data, Data\REST | RSP-39623 |
FMX.Listview and FDmemTable : Deleting records | Data, FireMonkey | RSP-43892 |
Event OnValidate fails when the dbgrid is full - AGAIN! | Data, IDE, VCL | RSP-43494 |
Officially support Firebird 5.0 in FireDAC | Data\FireDAC | RSP-44284 |
Ability to change username of RAD Server users | Data\RADServer | RSP-41163 |
The 64 bit debugger incorrectly evaluates open arrays | Debugger | RSP-43445 |
Debug visualizer for TArray<string> shows garbage | Debugger | RSP-41549 |
11.2: Please ship debug visualizers for generic and template types (STL for C++) | Debugger | RSP-39561 |
Run debugger does not work if FinalOutputDir contains $(MSBuildProjectName) | Debugger | RSP-38952 |
Accept $(SanitizedProjectName) in EXE path when debugging | Debugger, IDE | RSP-40475 |
bluetooth_connect permission error Android 13 | Demos | RSP-40501 |
[12.0 Regression] No event OnCameraDidFinishTaking for TTakePhotoFromCameraAction | Demos, FireMonkey, FireMonkey\Runtime | RSP-43515 |
Canvas.Clear problem on OSX when Canvas.Offset is set | FireMonkey | RSP-44114 |
TEdit font size not work in style on Android | FireMonkey | RSP-44085 |
Bug in FMX ListBox | FireMonkey | RSP-44067 |
Android TEdit Focus: Java.lang.indexOutofBoundsException | FireMonkey | RSP-43943 |
ClipParent property of a parent control can prevent caret from showing in TEdit | FireMonkey | RSP-43901 |
Regression: Tab Transition Displays wrong after transition | FireMonkey | RSP-43591 |
TEdit text is not correctly displayed when placed in a Scrollbox. | FireMonkey | RSP-43588 |
FMX TAction.SecondaryShortCuts have no effect | FireMonkey | RSP-43587 |
Change in default TStringGrid cell selection | FireMonkey | RSP-43534 |
Regression: On Mac systems, scaling on Sonoma is returning 1, and ignoring the system scaling | FireMonkey | RSP-43471 |
Wrong color for glyph in BindNavigator | FireMonkey | RSP-43475 |
TEdit.FilterChar crash app on Android | FireMonkey | RSP-43459 |
change firemonkey form.fullScreen to raise exception | FireMonkey | RSP-43400 |
Crash in FMX UpdateStyleBook on program termination | FireMonkey | RSP-43397 |
using arrow keys to navigate tabs brings exception | FireMonkey | RSP-43385 |
Delphi 12 Android TEdit error | FireMonkey | RSP-43383 |
macOS "Close" calls "OnCloseForm" twice | FireMonkey | RSP-43372 |
Skia does not seem to respect WordWrap (false) for autosized TText | FireMonkey | RSP-43371 |
InputQuery with multiple values on windows not displayed correct | FireMonkey | RSP-43370 |
[iOS] TListView set searchvisible to True, the system will crash when clicking into the search area. | FireMonkey | RSP-43362 |
iOS: Tap method is never called | FireMonkey | RSP-43325 |
Incorrect ShortCut in TActionList | FireMonkey | RSP-43318 |
"TCommonCustomForm.KeyDown" does not set reference parameters "Key" and "KeyChar" to 0 and #0 if the result of "DispatchDialogKey" is "true" | FireMonkey | RSP-43313 |
TScrollBox without ContentLayout has incorrect clip rect | FireMonkey | RSP-43308 |
Small bug in positioning TEdit selection handles | FireMonkey | RSP-43301 |
Crash on exit when using loupe service on Android | FireMonkey | RSP-43300 |
TFlowLayout exception when all its elements are set to invisible | FireMonkey | RSP-43299 |
TreeView crash | FireMonkey | RSP-42682 |
Major bug in FMX.ActnList.TCustomAction.IsDialogKey.IsSameShortCut | FireMonkey | RSP-42550 |
TFlowLayout Center Justification Broke | FireMonkey | RSP-42862 |
TTreeview crashes when scrolling in iOS | FireMonkey | RSP-42657 |
The size of the Runtime FireMonkey Form is different from the size in Designtime. | FireMonkey | RSP-42885 |
Regression: Grid Beep problem when tabbing between columns | FireMonkey | RSP-42992 |
FMX TListBox List Index Out OF Bounds | FireMonkey | RSP-42860 |
TRectAnimation does not calculate StartRect value at StartFromCurrent | FireMonkey | RSP-42408 |
TListBox Sort behaves strangely | FireMonkey | RSP-42319 |
Unnecessary FreeAndNil on local variable in FMX.Ani | FireMonkey | RSP-42902 |
Superfluous code in TAnimationDestroyer.DoAniFinished | FireMonkey | RSP-43086 |
Visual Binding get's Update command after OnClick Event | FireMonkey | RSP-42074 |
FMX printing of textfile is internally broken in PrnOpen | FireMonkey | RSP-41883 |
IOS TEdit & Password = True dont use FMX.Platform.iOS.pas -> setAutocapitalizationType | FireMonkey | RSP-40631 |
FMX Bitmap fails loading with WIC (JPEG XR format) | FireMonkey | RSP-39598 |
TDialogService.ShowMessage() not blocking in TDialogService.InputQuery() callback on Windows | FireMonkey | RSP-32429 |
Resizing Firemonkey TListView removes custom added TListViewItem at runtime | FireMonkey | RSP-24668 |
Block the use of the Hardware Back Button in FMX Android | FireMonkey, FireMonkey\Actions, FireMonkey\Runtime | RSP-44238 |
Segmentation fault in "TAndroidPhoneDialerService.Stop" when closing the app | FireMonkey, FireMonkey\Runtime | RSP-43707 |
TMemo component control type changing problem | FireMonkey, IDE | RSP-44113 |
Property of TLabel TextSettings.Trimming=Character cannot be saved. | FireMonkey, IDE | RSP-43374 |
"generer un nouveau style personnalisé" button does nothing | FireMonkey, IDE | RSP-39455 |
missing UNNotificationPresentationOptionList / UNNotificationPresentationOptionBanner in iOSapi.UserNotifications | FireMonkey, RTL, RTL\Delphi | RSP-43500 |
Erro Value NumberBox no OnExit | FireMonkey, RTL, RTL\Delphi, VCL | RSP-43951 |
Support Android API Level 34 | FireMonkey\Runtime, IDE\Build System, Install\GetIt | RSP-42477 |
Fix a short link redirection to arcade game post from GitHub repository | Help and Doc | RSP-41769 |
Code completion prevents intended typing | IDE | RSP-44318 |
Collection Editor does not react to IDE Theme changes | IDE | RSP-43971 |
SVG can NOT be added as a resource | IDE | RSP-43958 |
Issue with TURI.Query Changed adding an equal sign to the URL ends with ?WSDL | IDE | RSP-43568 |
Save desktop saves the position of the second edit window wrongly | IDE | RSP-43433 |
RAD Studio splash screen with trial components | IDE | RSP-43429 |
VA stops showing members, sometimes | IDE | RSP-43416 |
Floating tool docks do not allow "mosaic" panels and make invisible panels | IDE | RSP-43394 |
Docked floating panel becomes invisible | IDE | RSP-43376 |
Impossible to type new code inside nested type in an inherited frame | IDE | RSP-43360 |
The multi-line string editor has a less than ideal keyboard interface | IDE | RSP-43282 |
New Edit WIndow changes position on any change of Layout | IDE | RSP-43276 |
HTTP Requests Do Not Work | IDE | RSP-43265 |
Structure view and Search for a method box no longer populated | IDE | RSP-43235 |
[Regression] - IDE TitleBar content misaligned in maximized state | IDE | RSP-42951 |
VA is showing members of non existence objects | IDE | RSP-42856 |
Pressing escape switches to another application | IDE | RSP-42755 |
Toolbars are broken after High DPI | IDE | RSP-42835 |
VA LSP don’t work for C++ third party libraries | IDE | RSP-42972 |
Ctrl-j - invoke template don’t work | IDE | RSP-42692 |
C++ Builder - VA looks confusing | IDE | RSP-43150 |
Quick Button Configuration Dialog displayed in fixed position | IDE | RSP-42897 |
Code Completion/LSP Failed on interface property | IDE | RSP-42396 |
AV in RTL280 when opening a project | IDE | RSP-42348 |
C++ Builder VA - Cannot see property type for most properties | IDE | RSP-42843 |
set delphi libary path issue | IDE | RSP-42094 |
After Adding Library Path, Delphi loses focus | IDE | RSP-41324 |
Editing Compiler Options Hides Rad Studio | IDE | RSP-41316 |
Markdown preview reports error when referencing images | IDE | RSP-41270 |
Object inspector shows duplicated name entries | IDE | RSP-40739 |
Incorrect "XML Data Binding" | IDE | RSP-40386 |
TwineCompile communication with RAD Studio IDE is super slow | IDE | RSP-40053 |
StyleLookup icons covnerted to Label in the IDE interface | IDE | RSP-39923 |
Searching for expressions | IDE | RSP-39819 |
Split the code editor, one unit on the left, another on the right | IDE | RSP-39758 |
$(SanitizedProjectName) doesn't work from Base configration | IDE | RSP-39731 |
Slightly strange hint on inactive code blocks | IDE | RSP-39406 |
GUI bug on setting/removing breakpoints with mouse | IDE | RSP-38906 |
IDE desktop work area becomes smaller and smaller while toolbar header taller yet blank | IDE | RSP-39104 |
"Invalid class typecast" error is received after moving the mouse cursor over client area of an undocked Component Palette. [Component Toolbar] | IDE | RSP-38617 |
RAD Studio toolbar menu spacings are strange in all layouts and DPI aware/unaware | IDE | RSP-39305 |
Change Mouse cursor to crHourGlass while switching platforms | IDE | RSP-38474 |
IDE Save Button does not reflect state | IDE | RSP-38001 |
Window header resizing issues | IDE | RSP-37219 |
[IDE MSBuild] - Some MSBuild variables are not consistently expanded inside IDE | IDE | RSP-37401 |
MS-Windows auto split screen on hover over maximize button not appear - works in BCB2007 | IDE | RSP-36759 |
REST Debugger can't copy values from table cells | IDE | RSP-36257 |
Improve New Edit Window usability | IDE | RSP-35934 |
[dccosxarm64 Hint] H2596 ld: warning: directory not found for option '-LC:\Users\Mike the Coder God\Documents\Embarcadero\Studio\22.0\Imports' | IDE | RSP-35083 |
View->Edit New Window hangs | IDE | RSP-35082 |
Display ErrorInsight error message on exclamation mark icon in the gutter | IDE | RSP-35257 |
Object inspector - hint does not show whole text | IDE | RSP-33350 |
Component pallette raises "invalid class typecast" on undocking | IDE | RSP-33200 |
[IDE UX Enhancement] - Enable docking of the new editor window | IDE | RSP-32730 |
delete text icon has wrong style when search field has the focus on getit dialog box | IDE | RSP-32686 |
New Edit Window - update | IDE | RSP-32687 |
auto completion add "end" after parenthesis for anonymous methods | IDE | RSP-32667 |
Copy/Paste in Component Palette | IDE | RSP-31105 |
Code Insight (Option Auto invoke) fail (LSP) | IDE | RSP-29827 |
RAD Studio changes focus to another app after dismissing File New Dialog | IDE | RSP-28532 |
IDE Zen-mode layout | IDE | RSP-21408 |
The IDE brings another window in front when a modal IDE dialog is closed | IDE | RSP-22150 |
Splash screen just grows until it goes off the screen. | IDE | RSP-11309 |
H2596 ld: warning: directory not found for option '-L | IDE, IDE\Build System | RSP-32812 |
For android compilation, need to use aapt2 instead of aapt | IDE, IDE\Build System | RSP-27606 |
Disabling Enable Structural Highlighting should disable Highlight single-line blocks checkbox too | IDE, IDE\Castalia | RSP-14579 |
[class completion] WinAPI calling convention not recognized by IDE | IDE, IDE\Code Editor | RSP-31841 |
Bug or new Feature code completition in C++ Builder with VCL Form | IDE, IDE\Code Insight | RSP-43015 |
Ctrl+Shift+Up/Down cursor positions | IDE, IDE\Code Insight | RSP-33156 |
Lib suffix $(Auto) doesn't work with TwineCompile | IDE, Linker | RSP-42045 |
JSON Data Binding Wizard mistakenly converts string to integer | IDE, RTL, RTL\Delphi | RSP-43366 |
Bug in TActionBarAccessibility.accHitTest | IDE, VCL | RSP-31852 |
Pro edition installer offers Linux but doesn't install it | Install | RSP-43230 |
During Installation Console Window opened with message missing *.pas | Install | RSP-43093 |
INC files in source folders are not read-only | Install | RSP-39368 |
Try to add a target platform macOS fails | Install | RSP-33150 |
Uninstall / Install using Tools => Manage Platforms doesnt work | Install\GetIt | RSP-42919 |
KSVC: TRzCheckBox bottom/right anchor problem with monitor DPI change and autosize | Konopka, VCL | RSP-40058 |
Hint after compilation an empty project for macOS 64-bit or macOS ARM 64-bit | Linker | RSP-42840 |
TImage->Picture->LoadFromStream from resource and svg graphic don't work/crashes with need to restart radstudio | RTL, RTL\C++ | RSP-43619 |
STL missing method | RTL, RTL\C++ | RSP-43479 |
Broken implementation of std::disjunction. | RTL, RTL\C++ | RSP-40265 |
Problem using readdir/opendir with bcc64 | RTL, RTL\C++ | RSP-39873 |
Introduced bug into System.DateUtils.DecodeISO8601Date() | RTL, RTL\Delphi | RSP-44270 |
FreeLibrary result on Linux is inverted, it reports false when should be true | RTL, RTL\Delphi | RSP-44047 |
TXMLNode.DeclareNamespace, the test to see if the namespace node already exists is wrong | RTL, RTL\Delphi | RSP-43977 |
Incorrect precision for extended stored in JSON objects in 64 bits | RTL, RTL\Delphi | RSP-43976 |
THttpClient with Android and AuthEvent | RTL, RTL\Delphi | RSP-43939 |
TStreamReader - Buffered Data can grow indefinitely | RTL, RTL\Delphi | RSP-43490 |
StrToFloat returns wrong values (in Win64 but not Win32) | RTL, RTL\Delphi | RSP-43485 |
JSON serialization error with scientific double notation | RTL, RTL\Delphi | RSP-43463 |
Optimization for _UStrSetLength | RTL, RTL\Delphi | RSP-42508 |
Removal of DivBy100 and DivBy100000000 | RTL, RTL\Delphi | RSP-42608 |
TArray.Copy<T> fail. | RTL, RTL\Delphi | RSP-42502 |
TZipfile, ZIP64 Support broken (Invalid Zip Central Header signature) | RTL, RTL\Delphi | RSP-42478 |
TJson.ObjectToJsonString to generate JSON avoid use listHelper on TObjectList data | RTL, RTL\Delphi | RSP-41929 |
TZipFile FCurrentFile not set for Add of Stream or TBytes | RTL, RTL\Delphi | RSP-41720 |
Formatting with leading zeros | RTL, RTL\Delphi | RSP-41384 |
RoundTo is not threadsafe (probably same for function like StrToFloat, etc.) | RTL, RTL\Delphi | RSP-39428 |
TRect.Add and UnionF problem with Empty rectangles | RTL, RTL\Delphi | RSP-38757 |
Bug in ExpandVolumeName (SysUtils) | RTL, RTL\Delphi | RSP-20184 |
High cpu usage with TFileStream and TParallel | RTL, RTL\Delphi, RTL\Delphi\Threads | RSP-43540 |
Error in parsing URL parameters without values in NetHttpClient | RTL\Delphi\Net | RSP-44150 |
NetHttpClient parsing URL parameters is incorrect | RTL\Delphi\Net | RSP-43422 |
MEMORY LEAKS IN MACOSX | RTL\Delphi\Net | RSP-33818 |
Memory Leak in processing SOAP Response with attachments | SOAP | RSP-41924 |
MDI with styles and | VCL | RSP-44308 |
MDI menu merge D12 regression | VCL | RSP-44220 |
TWICImage does not implement CanLoadFromStream() even though it can be loaded from a TStream | VCL | RSP-44115 |
TCustomListView having virtual items loses items on RecreateWnd | VCL | RSP-44056] |
Issue with Styles in MDI app | VCL | RSP-44044 |
TImage cant load SVG from resource | VCL | RSP-43961 |
Issue with TListView.Items.Clear | VCL | RSP-43907 |
MDI Windows Tile Vertically/Horizontally does not work | VCL | RSP-43585 |
When MDI form & Custom Styles are used together, the Process cannot be terminated. | VCL | RSP-43551 |
New VisualManager feature causes crash in TCustomForm.WndProc() with Action=caFree | VCL | RSP-43547 |
Screen flashing when using TFormTabsBar in maximized mode | VCL | RSP-42771 |
Bad UI when using quick configuration for RadioGroup: | VCL | RSP-42697 |
Immersive Dark Mode should check 20348 not 22000 | VCL | RSP-43119 |
TNumberBox doesn't accept input | VCL | RSP-42131 |
TStackPanel cut off at high dpi | VCL | RSP-41964 |
TTouchKeyboard contains empty layout | VCL | RSP-41925 |
ProgressBar.State isn't supported under VCL Styles | VCL | RSP-41815 |
Hidden buttons on TToolBar, unexpected behaviour | VCL | RSP-41413 |
Bug in TActionBarAccessibility.accHitTest method | VCL | RSP-41319 |
THeaderControl section reordering: Just rewrite the control from scratch | VCL | RSP-41252 |
THeaderControl section reordering: section identity messed up | VCL | RSP-41250 |
TStatusBar Font is incorrect on secondary monitors after system change | VCL | RSP-41192 |
XE112: VCL: TToolbar Chevron button is missing when enabled VCLStyles | VCL | RSP-39967 |
Tlistview still show scrollbars after visible=false if a style other than windows is used | VCL | RSP-39869 |
Delphi 11.2 High DPI - TCategoryPanelGroup and TDBCtrlGrid scaling issues | VCL | RSP-39856 |
TStyleManager.TrySetStyle fails when using PopupMode = pmExplicit in main form | VCL | RSP-39019 |
Sort arrow not painted in ListView Columns header - When using a Style | VCL | RSP-37136 |
TPopupMenu sub-items right arrow painted old style with ImageList and/or Style | VCL | RSP-37052 |
Incorrectly scaling in HighDPI when using TRzSplitter | VCL | RSP-35777 |
All TControlIist predefined layouts have the same name | VCL | RSP-32628 |
Component does not update when align is changed. | VCL | RSP-22327 |