Just noticed that the Accessibility commit from May 10 (Added VoiceOver…) is crashing a plugin on 10.9. Catalina and Big Sur are fine. I don’t have much time to test further though. From the log, it looks like it crashes on a TextEditor.
Can you post the crash log? Unfortunately I don’t have a 10.9 machine here to test on.
Is it not crashing on startup ? Here is what I get here, when starting DemoRunner:
Thread 0 Crashed:: JUCE Message Thread Dispatch queue: com.apple.main-thread
0 com.apple.CoreFoundation 0x00007fff98eac25d ___forwarding___ + 989
1 com.apple.CoreFoundation 0x00007fff98eabdf8 _CF_forwarding_prep_0 + 120
2 libobjc.A.dylib 0x00007fff981ec371 _class_initialize + 645
3 libobjc.A.dylib 0x00007fff981f8254 lookUpImpOrForward + 170
4 libobjc.A.dylib 0x00007fff981eb169 objc_msgSend + 233
5 com.rmsl.jucedemorunner 0x0000000103acc193 juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityElement::create(juce::AccessibilityHandler&) + 163
6 com.rmsl.jucedemorunner 0x0000000103acc0d4 juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityNativeImpl(juce::AccessibilityHandler&) + 36
7 com.rmsl.jucedemorunner 0x0000000103a057fd juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityNativeImpl(juce::AccessibilityHandler&) + 29
8 com.rmsl.jucedemorunner 0x0000000103913c80 juce::AccessibilityHandler::createNativeImpl(juce::AccessibilityHandler&) + 48
9 com.rmsl.jucedemorunner 0x0000000103913b14 juce::AccessibilityHandler::AccessibilityHandler(juce::Component&, juce::AccessibilityRole, juce::AccessibilityActions, juce::AccessibilityHandler::Interfaces) + 180
10 com.rmsl.jucedemorunner 0x0000000103913db3 juce::AccessibilityHandler::AccessibilityHandler(juce::Component&, juce::AccessibilityRole, juce::AccessibilityActions, juce::AccessibilityHandler::Interfaces) + 35
11 com.rmsl.jucedemorunner 0x00000001039f6dd8 std::__1::__unique_if<juce::AccessibilityHandler>::__unique_single std::__1::make_unique<juce::AccessibilityHandler, juce::TopLevelWindow&, juce::AccessibilityRole>(juce::TopLevelWindow&&&, juce::AccessibilityRole&&) + 216
12 com.rmsl.jucedemorunner 0x00000001039f6cee juce::TopLevelWindow::createAccessibilityHandler() + 46
13 com.rmsl.jucedemorunner 0x00000001039151d8 juce::Component::getAccessibilityHandler() + 216
14 com.rmsl.jucedemorunner 0x000000010391745f juce::Component::internalHierarchyChanged() + 447
15 com.rmsl.jucedemorunner 0x0000000103917b76 juce::Component::addToDesktop(int, void*) + 1270
16 com.rmsl.jucedemorunner 0x00000001039e899e juce::TopLevelWindow::TopLevelWindow(juce::String const&, bool) + 206
17 com.rmsl.jucedemorunner 0x000000010394c5e4 juce::ResizableWindow::ResizableWindow(juce::String const&, juce::Colour, bool) + 52
18 com.rmsl.jucedemorunner 0x000000010395dd55 juce::DocumentWindow::DocumentWindow(juce::String const&, juce::Colour, int, bool) + 85
19 com.rmsl.jucedemorunner 0x00000001031afef0 DemoRunnerApplication::MainAppWindow::MainAppWindow(juce::String const&) + 96
Also the following messages are displayed in the terminal:
JUCE v6.0.8
2021-05-23 14:05:23.489 DemoRunner[400:507] *** NSForwarding: warning: object 0x7fc41ac1dc30 of class 'JUCEAccessibilityElement_5ab9cca426878eab' does not implement methodSignatureForSelector: -- trouble ahead
2021-05-23 14:05:23.489 DemoRunner[400:507] *** NSForwarding: warning: object 0x7fc41ac1dc30 of class 'JUCEAccessibilityElement_5ab9cca426878eab' does not implement doesNotRecognizeSelector: -- abort
Trace/BPT trap: 5
btw it is not too complicated to install 10.9 in a Parallels VM – I did it two days ago, the only annoying step is creating the mavericks iso file from its dmg file.
It seems accessibility api have changed a lot in macos 10.10 , maybe it should just be disabled for older osx versions ?
Sure, there you go:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 com.apple.music.apps.MAWorkspace 0x0000000114dc04a4 0x114d22000 + 648356
1 com.AudioThing.Speakers 0x0000000145d6443a juce::ObjCClass<NSAccessibilityElement<NSAccessibility> >::ObjCClass(char const*) + 122
2 com.AudioThing.Speakers 0x0000000145d63a63 juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityElement::AccessibilityElement() + 35
3 com.AudioThing.Speakers 0x0000000145d63995 juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityElement::AccessibilityElement() + 21
4 com.AudioThing.Speakers 0x0000000145d6387c juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityElement::create(juce::AccessibilityHandler&) + 76
5 com.AudioThing.Speakers 0x0000000145d63814 juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityNativeImpl(juce::AccessibilityHandler&) + 36
6 com.AudioThing.Speakers 0x0000000145caf87d juce::AccessibilityHandler::AccessibilityNativeImpl::AccessibilityNativeImpl(juce::AccessibilityHandler&) + 29
7 com.AudioThing.Speakers 0x0000000145bb91a0 juce::AccessibilityHandler::createNativeImpl(juce::AccessibilityHandler&) + 48
8 com.AudioThing.Speakers 0x0000000145bb9034 juce::AccessibilityHandler::AccessibilityHandler(juce::Component&, juce::AccessibilityRole, juce::AccessibilityActions, juce::AccessibilityHandler::Interfaces) + 180
9 com.AudioThing.Speakers 0x0000000145e2fc3b juce::TextEditorAccessibilityHandler::TextEditorAccessibilityHandler(juce::TextEditor&) + 251
10 com.AudioThing.Speakers 0x0000000145e2fafd juce::TextEditorAccessibilityHandler::TextEditorAccessibilityHandler(juce::TextEditor&) + 29
11 com.AudioThing.Speakers 0x0000000145c8738f std::__1::__unique_if<juce::TextEditorAccessibilityHandler>::__unique_single std::__1::make_unique<juce::TextEditorAccessibilityHandler, juce::TextEditor&>(juce::TextEditor&&&) + 79
12 com.AudioThing.Speakers 0x0000000145c8731e juce::TextEditor::createAccessibilityHandler() + 46
13 com.AudioThing.Speakers 0x0000000145bba758 juce::Component::getAccessibilityHandler() + 216
14 com.AudioThing.Speakers 0x0000000145c7cd31 juce::TextEditor::updateCaretPosition() + 385
15 com.AudioThing.Speakers 0x0000000145c7be0f juce::TextEditor::scrollToMakeSureCursorIsVisible() + 31
16 com.AudioThing.Speakers 0x0000000145c853c4 juce::TextEditor::resized() + 196
17 com.AudioThing.Speakers 0x0000000145bbfc59 juce::Component::sendMovedResizedMessages(bool, bool) + 169
18 com.AudioThing.Speakers 0x0000000145bbfba4 juce::Component::sendMovedResizedMessagesIfPending() + 132
19 com.AudioThing.Speakers 0x0000000145bbfa1b juce::Component::setBounds(int, int, int, int) + 843
Thanks for the crash logs, this has been fixed on develop
:
2 Likes