SD7, Enhanced Applet crashes if Startup Screen contains special signs


(Ralf Leidinger) #1

Hello all.

When there are special signs like german umlauts or german quotes in the description.rtf of an enhanced applet, the applet crashes if you try to resize the shown startup screen.

Unfortunately it’s not so easy to reproduce the crash because it seems to depend on different factors, the number of special signs, the length of the text and may be the initial size of the displayed startup dialog.

Trying hard, I could build a lorem ipsum text containing only the single german word Benutzeroberfläche, which will reproduce the crash. If the applet is saved as standard applet, it never crashes. The enhanced applet itself is empty.

Here is the text I used in the applets description.rtf. By the way, it doesn’t matter if You enter the text inside Script Debugger or directly in the applets resource file.

Lorem ipsum dolor sit amet

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod Benutzeroberfläche tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

For easier reproductions I appended a zip file containing the applet.

Environment:
Script Debugger 7, v7.0.7 Februar 2019 and earlier
macOS High Sierra 10.13.6CrashOnLargeDescription.zip (3.4 MB)


(Mark Alldritt) #2

I cannot reproduce the crash you are experiencing either by creating an enhanced applet from scratch using the description text you provide or by using the example applet you provide.

I do notice some odd word wrapping behaviour, but no crashes.

Can you provide the crash report your system generates when the applet crashes?


(Ralf Leidinger) #3

Hello Alldritt.

Thank You for Your quick reply.

1. Crash may be my problem

When I saw Your answer, I was working on my home desktop (MacMini) running macOS Mojave 10.14.3, and also I couldn’t reproduce the Error. Neither with the lorem ipsum text nor with the original text.

To find the source of the crash on my MacBook, I rebooted the machine with no success. Then I used another user account on the machine, and suprise, no crash. So the same app (used from a shared folder) does crash when run as user1 and doesn’t when run as users2. Clearly, this crash depends on the local settings of the users, so may be it’s my own problem.

Nevertheless I have included two crash reports in the archive. As far as I can read it, Thread 0 crashed in com.apple.UIFoundation in _NSGlyphTreeGetPackedGlyphsInRange, but I’am not good in reading crash reports.

Also I forget to mention, the crashing enhanced app saved as standard Apple applet doesn’t crash on my working machine 10.13 on any user account.

2. Enhanced Applet crashes when copied from macOS 10.13 to macOS 10.14

While testing, it wasn’t possible to run the applet, back downloaded from forum to my desktop. Also the copy from my working machine MacBook Pro (using screen sharing and drag&drop), running macOS 10.13 didn’t start. Message:

It’s saying, it’s damage and best be moved into the trash. So I opened the so called damaged app in SD7, saved it again and everything runs ok. No crash on Mojave.

I further investigated in this and build an empty enhanced applet on my “good” user account under macOS 10.13 and also a standard applet and copied both to macOS 10.14. Result is, the enhanced applet crashed with the given screen above, and the standard applet alerts because of SIP, but runs otherwise without problem.

3. Enhaced applet needs some fix for dark mode

Another problem I found while testing on Mojave is about dark mode. In this picture You see the very same app

side by side once saved as enhanced applet (left) and once saved as standard Apple applet. BTW, here You see the original text causing me the crash on my working machine, which I also included in the archive.

So there a three questions.

  1. Do I need to drop my (very) old user profile to get rid of the crash on 10.13 or can You read anything in the crash report I can do to fix the problem for this user account?

  2. Why isn’t it possible to copy enhanced applets from macOS 10.13 to macOS 10.14?

  3. Can You fix dark mode in SD7 Enhanced Apps?

Thank You very much.

Archiv.zip (43.7 KB)


(Mark Alldritt) #4

In both of the crash reports you provided the crash is happening as the text system is trying to draw a series of glyphs. Since this problem is unique to one user account, I would check the fonts you have installed in that account’s ~/Library/Fonts directory. One may be corrupted.

As for the dark mode issue, you are right, the text should be rendered in white. We’ll sort that out in a future maintenance release.