Bug? Released App crashes at startup after update from B4i 8.10 to 8.50

Turbo3

Active Member
Licensed User
Longtime User
Made minor update to my app which tested fine in development mode but after releasing it to my users it fails on app startup on the "Font.CreateFontAwesome(40)" line.
The previous Distribution version using B4i v8.10 worked fine but Distribution version v8.50 now crashes for everyone.

0 CoreFoundation 0x195e42678 __exceptionPreprocess + 164 (NSException.m:249)
1 libobjc.A.dylib 0x18e0f7c80 objc_exception_throw + 60 (objc-exception.mm:356)
2 CoreFoundation 0x195ec7494 +[NSException raise:format:] + 112 (NSException.m:0)
3 TM-Spy 0x104713d98 -[B4IObjectWrapper object] + 116
4 TM-Spy 0x10472bea8 -[B4ILabelWrapper setFont:] + 64
5 TM-Spy 0x1045d82f4 -[b4i_main _application_start:] + 19076 (b4i_main.m:1118)

1117 //BA.debugLineNum = 1328;BA.debugLine="mButtonLt.CustomLabel.Font=Font.CreateFontAwesome";
1118 [[self->__mbuttonlt CustomLabel] setFont:[[self->___c Font] CreateFontAwesome:(float) (40)]];


1324 mButtonLt.InitializeCustom("mButtonLt",MakeTransparent(Colors.Black,0x40),MakeTransparent(Colors.Black,0x40))
1325 mButtonLt.Height=100dip
1326 mButtonLt.Width=100dip
1327 mButtonLt.Text=Chr(0xF053)
1328 mButtonLt.CustomLabel.Font=Font.CreateFontAwesome(40)
1329 mButtonLt.CustomLabel.AdjustFontSizeToFit=True
1330 mButtonLt.CustomLabel.TextAlignment=mButtonLt.CustomLabel.ALIGNMENT_CENTER
 

Turbo3

Active Member
Licensed User
Longtime User
To be clear this code that fails is right in Application_Start.

My top priority is getting my released app working again as I have hundreds of users with a broken app.

Right now I will try recompiling on another computer running B4i v8.10 which I hope gets my users up again and will confirm v8.10 works ok.

I will get that out tomorrow.

Then I can make a tiny app with just the above code in Application_Start compiled with v8.50 and confirm if it fails. Unless someone else beats me to it.
 

Turbo3

Active Member
Licensed User
Longtime User
One correction, the version level that started the crash was 8.51 not 8.50 as listed in the title.

Have had no luck today in getting B4i to run on any other computer. Hosted Builder always returns an error.

I thought in the past I was able to install on two computers so as to have a backup system if my PC dies.

So instead I recompiled with v8.51 again and uploading to the App Store to see if it was a one off glitch somewhere in uploading the binary. Did not help, still failing on startup.

I did put a Try/Catch around the first failing line of code. However, that had the side effect of no crash log being generated. Just the json file in the report.

My question now to Erel is (probably need to ask in a separate thread) how can I safely go back to v8.10 from v8.51 on my one working computer?

Can I just run the B4i.exe for v8.10 again or do I need delete the "Anywhere Software/B4i" folder first to completely remove v8.51 before going back to v8.10?
 

Turbo3

Active Member
Licensed User
Longtime User
Good progress today.

Was able to install B4i v8.10 on my laptop and desktop and successfully compiled my app on both. Released that version to the App Store and that fixed the crashing of app on startup seen with v8.51.

For now I will just stick with v8.10 for my production apps.

To work on the v8.51 issue I will need to setup a dummy app on the App Store that only I have access to for testing so I don't subject all my users to crashes while testing.
 
Top