Format string returns empty strings in version 6.2.1

36 views
Skip to first unread message

Ernst Hafer

unread,
Mar 10, 2023, 6:18:44 AM3/10/23
to innosetup
Hello,

we want to upgrade Inno Setup to version 6.2.1 (and the Graphical Installer to the mandatory version 6.2.1(Zinka)).

We've got five big Setups based on Graphical Installer (so we can't get rid of the Graphical Installer dependency easily).

Upgrading to Inno Setup 6.2.1 give us crashes with our big setups using string formatting function 'Format'.
We reduced the crashing scenario down to a single string format line. We are not able to reproduce the crash with a simple test
but the Format function still misbehaves by returning empty strings.
We think that the crash and the misbehaviour of the format function are someway related.

The misbehaviour does not occure with Inno Setup 6.2.2 (sadly we can't use that with Graphical Installer).

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={autopf}\My Program

[Code]
 procedure InitializeWizard;

var
a: string;
   
begin
  a := Format('%s',['Hello']); // version 6.1.2: a = 'Hello', version 6.2.1: a = '', version 6.2.2: a = 'Hello'
  Log(a);
if(a = '') then
begin
    MsgBox('a is empty: ' + a,  mbInformation, MB_OK);
end;
end;

We've checked the changes on Github between version 6.2.1 and 6.2.2 and couldn't find a related change (our hope was to backport this fix to version 6.2.1).

Any idea what changed between version 6.2.1 and 6.2.2?
We appreciate any tips or ideas to solve this problem.

t.sl...@gmail.com

unread,
Mar 15, 2023, 12:25:37 PM3/15/23
to innosetup
Hello.

We have fixed this issue in latest version of Graphical Installer, Build 6.2.2.

See the changelog on official website: http://graphical-installer.com/web/changelog.html

Thanks for this report
Slappy, unSigned
Reply all
Reply to author
Forward
0 new messages