XE2 update 3 is out, and on initial inspection seems to repeat the pattern of the previous updates: useful bugfixes for the core product, but little by way of substantive improvements for FireMonkey, at least if you want to use the Delphi compiler. Naturally, the MSI/InstallAware combo is as ridiculous as ever: on installing, I had a core maxed out for 25 minutes on the ‘validating install stage’, after which the installer did its thing of deleting a file then complaining it couldn’t overwrite it.
Once installed, first thing I checked was whether the blatant memory leaks in Mac.ObjectiveC.pas have been fixed. While the list of bug fixes for update 3 had appropriately lowered my expectations by not mentioning them, my hopes were somewhat raised on seeing the file itself had been updated. Alas, but the extremely trivial task of calling Free after temporary objects have been finished with has not been performed. (As an aside, this task is so trivial even the clueless guy who mans the QC system didn’t robotically demand a sample project after I filed a bug report!) The moral seems to be: if you’re not on the formal beta program, don’t bother filing QC reports for FireMonkey, since even the most basic thing will be ignored. I vaguely live in hope things such as this and the blatant misdeclaration of NSString in Macapi.Foundation.pas will be fixed before XE3, but we’ll see.