I just downloaded 2019 R2.1 which was released yesterday and was testing an application I had been working on in 2019 R2. (Originally had been working fine with 2018 R3 and I was moving to a current version of Xojo, but ran into some problems. So it seemed timely that 2019 R2.1 was just released.)
I was testing modal windows I use for a date picker, which 2019 R2 ‘broke’ by always opening the modal in the centre of the screen. 2019 R2.1 has a fix to open the modal window where the bounds are set. The modal window does open in the correct location, but it is now crashing my application. Both in debug and a built 32-bit application. (I have not tried 64-bit because when I did build 64-bit it destroyed my app preference file and I have not gone back to figure out why.)
I can reproduce the problem by opening and closing a modal window 3 or 4 times and then get the crash.
Application Specific Information:
*** CFRelease() called with NULL ***
I’m not sure if this is something in my code causing this, I don’t think so since this is working fine with 2018 R3, but thought I would ask and see if there is anything I can do. (Without having to move all my changes back into 2018 R3.) Anyone else see this problem?
What platform are you running on, what OS version?
OS: OS X 10.14.6
Xojo: Xojo 2019r2.1
Application previously built for Mac and Windows using Xojo 2018 R3.
Develop on a Mac with above specs, I have not tested on Windows.
As this part of the r2.1 code was touched, maybe a bug. You need to create a sample and explain how to reproduce the crash, and make a feedback app post about it. Maybe this is the first r2.1 bug, justifying an r2.2, found.
Might be a bug I ran into that seems to be 32-bit only.
If you open and close a modal window multiple times it can cause a crash. Does not seem to occur in 64-bit builds. So it is unlikely it will be fixed.
You really shouldnt be building 32 bit apps for macOS any more
It’s been fully 64 bit since about 10.7 and support for 32 bit apps disappears in 10.15
Same issue on Windows raised it during the r2 beta stage feedback://showreport?report_id=57678 opening and closing a modal window will cause a silent crash
10.13 was the last 32bit compatible MacOS. 10.14 has quirks, in 10.15 it is dead. Xojo 32 bit apps should have some kind of init check and stop running with a message of incompatibility for any 10.14+
Xojo customer building 32 bits applications have to implement that.
Thank you for adding this sentence, you are 100 % right.
A released application, nowadays, have to be 64 bits, but if it is 32 bits this have to be done: we never know what a user can do (volunteer or by mistake) and come back to us ranting !
Nope. Because it must the first thing to do. It must be a compiler job. Or more complex calls at user space or even initing the framework, could crash the app before it doing its job.
Yes, but since it is not done by
we have to do it and prey what you wrote will not happens
In a Comics someone wrote its (five years old) application runs in Catalina. I gave him my doubts
Other people can’t. And some will have crashes just loading some 32 bit plugins. That’s why we need a 32bit init check ahead.
This already happens in the OS: macoS 10.13.4 and all 10.14 versions will warn.
Once, and run and crash after.
10.13 and 14 run 32 bit apps
10.15 wont even load them so there is no way for anyone, compiler or app developer, to put in any kind of warning since the OS itself WILL NOT load your 32 bit app at all - so anything put in CANNOT show, ever, In a 32 bit app
If it crashes is the app fault, not the OS. If the OS dont support 32bit apps, they will simply NOT run at all.
[quote=464157:@Norman Palardy]10.13 and 14 run 32 bit apps
10.15 wont even load them[/quote]
So makes sense to 10.14.
10.14 is 32bit incomplete. OS fault, and seems proposital.
10.14 runs 32 bit apps just fine
MS office from 2011 runs fine although the OS says “they are not optimized”
Now 2019r2.1 and its framework may have a bug
Which is what the notes from the OP seem to indicate
That is not true.
10.14 has the whole 32bit subsistem, they just added a warning to thell users that support will be drop in a future release.