13 Replies Latest reply on Jun 15, 2017 11:14 AM by monkeybreadsoftware

    Speak script step causes crashes on certain hardware

    fishtech_1

      Summary

      Speak script step causes crashes on certain hardware

      Product

      FileMaker Pro

      Version

      12.x

      Operating system version

      10.8, 10.7

      Description of the issue

      The Speak script step is failing consistently on several tested MacBook Airs (1.6 Intel Core 2 Duo) running FM 12.05 and earlier in both OSX 10.8.x and 10.7.x.

      It does not fail on an iMac (3.2GHz Interl Core i5).

      I have not tested on other hardware.

      Steps to reproduce the problem

      Run the following script on a MacBook Air 1.6 Intel Core 2 Duo (perhaps it fails on some other hardware but I do not have to hand to test) :

      Set Variable [ $x; Value:0 ]
      Loop
      Set Variable [ $x; Value:$x+1 ]
      New Record/Request Refresh Window
      Speak [ Text: "Hello" ]
      Exit Loop If [ $x=1000 ]
      End Loop

      Expected result

      Computer says "Hello" 1000 times.

      Actual result

      Hard crash after,say, 500 loops.

      Exact text of any error message(s) that appear

      FileMaker Pro quit unexpectedly.
      Click Reopen to open the application again. Click Report to see more detailed information and send a report to Apple.


      Top of logged crash report shows:

      Process:         FileMaker Pro [20432]
      Path:            /Applications/FileMaker Pro 12/FileMaker Pro.app/Contents/MacOS/FileMaker Pro
      Identifier:      com.filemaker.client.pro12
      Version:         12.0.5 (12.0.5)
      Code Type:       X86 (Native)
      Parent Process:  launchd [170]
      User ID:         1038

      Date/Time:       2013-12-20 11:56:03.609 -0500
      OS Version:      Mac OS X 10.8.4 (12E55)
      Report Version:  10

      Crashed Thread:  8  Dispatch queue: MTBESoundOutput

      Exception Type:  EXC_BAD_INSTRUCTION (SIGILL)
      Exception Codes: 0x0000000000000001, 0x0000000000000000

      Application Specific Information:
      API MISUSE: Resurrection of an object

      Thread 0:: Dispatch queue: com.apple.main-thread
      0   libsystem_c.dylib                  0x98b0ecc9 tiny_malloc_from_free_list + 1104
      1   libsystem_c.dylib                  0x98b0f11a szone_malloc_should_clear + 880
      2   libsystem_c.dylib                  0x98b04a9e szone_malloc + 24
      3   libsystem_c.dylib                  0x98b025ab malloc_zone_malloc + 75
      4   com.apple.CoreFoundation           0x92648728 __CFAllocatorSystemAllocate + 24
      5   com.apple.CoreFoundation           0x926486f7 CFAllocatorAllocate + 343
      6   com.apple.CoreFoundation           0x92648461 _CFRuntimeCreateInstance + 385
      7   com.apple.CoreFoundation           0x92647f6d __CFStringCreateImmutableFunnel3 + 2653
      8   com.apple.CoreFoundation           0x9265cf8e CFStringCreateWithBytes + 94
      9   com.apple.CoreFoundation           0x9274f869 _uniqueStringForUTF8Bytes + 249
      10  com.apple.CoreFoundation           0x9274f5b4 parseStringTag + 1796
      11  com.apple.CoreFoundation           0x9266f61c parseXMLElement + 4892
      12  com.apple.CoreFoundation           0x92670dbb getContentObject + 651
      13  com.apple.CoreFoundation           0x9266f1d9 parseXMLElement + 3801
      14  com.apple.CoreFoundation           0x92670dbb getContentObject + 651
      15  com.apple.CoreFoundation           0x9266e767 parseXMLElement + 1127
      16  com.apple.CoreFoundation           0x9274e1b3 _CFPropertyListCreateFromUTF8Data + 1907
      17  com.apple.CoreFoundation           0x9266d4c2 _CFPropertyListCreateWithData + 1442
      18  com.apple.CoreFoundation           0x9266cd99 CFPropertyListCreateFromXMLData + 169
      19  com.apple.speech.synthesis.MacinTalkSynthesizer     0x1058b586 SpeechChannelManager::SpeechChannelManager() + 554
      20  com.apple.speech.synthesis.MacinTalkSynthesizer     0x1053f75e SEOpenSpeechChannel + 30
      21  com.apple.speech.synthesis.framework     0x95378c27 NewSpeechChannel + 695
      22  com.filemaker.client.pro12         0x0032109a ScriptRuntime::DoSpeak() + 890
      23  com.filemaker.client.pro12         0x0032588b ScriptRuntime::DispatchStep(bool&) + 1963
      24  com.filemaker.fmengine.framework     0x0425126a Draco::ScriptRuntimeBase::Execute() + 522
      25  com.filemaker.fmengine.framework     0x04251d23 Draco::ScriptRuntimeBase::DoNextStep() + 371
      26  com.filemaker.fmengine.framework     0x04251e4d Draco::ScriptRuntimeBase::DoRunLoop() + 109
      27  com.filemaker.client.pro12         0x0031e2ff ScriptRuntime::OnIdle() + 127
      28  com.filemaker.fmengine.framework     0x0422ba50 Draco::FMSession::OnIdle(bool) + 288
      29  com.filemaker.client.pro12         0x0017c0d2 FMAppSession::OnIdle(bool) + 66
      30  com.filemaker.client.pro12         0x0016a5d5 CFMProApp::Idle(bool) + 69
      31  com.filemaker.client.pro12         0x0016a6fd CFMProApp::DispatchNullEvent() + 109
      32  com.filemaker.client.pro12         0x004b16b9 -[MFAppDelegate HandleIdleNotification] + 25
      33  com.apple.Foundation               0x98666e52 __57-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_0 + 49
      34  com.apple.CoreFoundation           0x92742851 ___CFXNotificationPost_block_invoke_0 + 257
      35  com.apple.CoreFoundation           0x9268de8a _CFXNotificationPost + 2794
      36  com.apple.Foundation               0x9866c248 -[NSNotificationCenter postNotification:] + 115
      37  com.apple.Foundation               0x9862e698 postQueueNotifications + 843
      38  com.apple.CoreFoundation           0x926a284e __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 30
      39  com.apple.CoreFoundation           0x926a278d __CFRunLoopDoObservers + 381
      40  com.apple.CoreFoundation           0x9267c8af __CFRunLoopRun + 1071
      41  com.apple.CoreFoundation           0x9267c01a CFRunLoopRunSpecific + 378
      42  com.apple.CoreFoundation           0x9267be8b CFRunLoopRunInMode + 123
      43  com.apple.HIToolbox                0x955def5a RunCurrentEventLoopInMode + 242
      44  com.apple.HIToolbox                0x955decc9 ReceiveNextEventCommon + 374
      45  com.apple.HIToolbox                0x955deb44 BlockUntilNextEventMatchingListInMode + 88
      46  com.apple.AppKit                   0x9123393a _DPSNextEvent + 724
      47  com.apple.AppKit                   0x9123316c -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 119
      48  com.apple.AppKit                   0x912295cc -[NSApplication run] + 855
      49  com.filemaker.client.pro12         0x0006e2c0 CMacApp_Main + 576
      50  com.filemaker.client.pro12         0x0016ebd3 main + 67
      51  com.filemaker.client.pro12         0x000507e5 start + 53

      Thread 1:: Dispatch queue: com.apple.libdispatch-manager
      0   libsystem_kernel.dylib             0x95da09ae kevent + 10
      1   libdispatch.dylib                  0x900f0c71 _dispatch_mgr_invoke + 993
      2   libdispatch.dylib                  0x900f07a9 _dispatch_mgr_thread + 53

      Thread 2:
      0   libsystem_kernel.dylib             0x95d9fc72 __semwait_signal + 10
      1   libsystem_c.dylib                  0x98b72a55 nanosleep$UNIX2003 + 189
      2   com.filemaker.support.framework     0x0319386a Draco::Thread::Sleep(unsigned long) + 122
      3   com.filemaker.support.framework     0x03195744 Draco::TimerCheckThread::Main() + 244
      4   com.filemaker.support.framework     0x03191c3e Draco::Thread::RunThread() + 46
      5   com.filemaker.support.framework     0x031930e8 Draco::Thread::ThreadUnixProc(void*) + 72
      6   libsystem_c.dylib                  0x98ae85b7 _pthread_start + 344
      7   libsystem_c.dylib                  0x98ad2d4e thread_start + 34

      Thread 3:
      0   libsystem_kernel.dylib             0x95d9f8e2 __psynch_cvwait + 10
      1   libsystem_c.dylib                  0x98aed280 _pthread_cond_wait + 833
      2   libsystem_c.dylib                  0x98b73095 pthread_cond_wait$UNIX2003 + 71
      3   com.filemaker.support.framework     0x0319524c Draco::Semaphore::P(Draco::Thread*) + 108
      4   com.filemaker.support.framework     0x0319548a Draco::MsgQ::GetMsg() + 58
      5   com.filemaker.dbengine.framework     0x034012d0 Draco::HBEngine::HBEngineThread::Main() + 144
      6   com.filemaker.support.framework     0x03191c3e Draco::Thread::RunThread() + 46
      7   com.filemaker.support.framework     0x031930e8 Draco::Thread::ThreadUnixProc(void*) + 72
      8   libsystem_c.dylib                  0x98ae85b7 _pthread_start + 344
      9   libsystem_c.dylib                  0x98ad2d4e thread_start + 34

      Thread 4:
      0   libsystem_kernel.dylib             0x95d9f8e2 __psynch_cvwait + 10
      1   libsystem_c.dylib                  0x98aed280 _pthread_cond_wait + 833
      2   libsystem_c.dylib                  0x98b73095 pthread_cond_wait$UNIX2003 + 71
      3   com.filemaker.support.framework     0x0319524c Draco::Semaphore::P(Draco::Thread*) + 108
      4   com.filemaker.support.framework     0x0319548a Draco::MsgQ::GetMsg() + 58
      5   com.filemaker.dbengine.framework     0x035f7087 Draco::DBEngineThread::Main() + 87
      6   com.filemaker.support.framework     0x03191c3e Draco::Thread::RunThread() + 46
      7   com.filemaker.support.framework     0x031930e8 Draco::Thread::ThreadUnixProc(void*) + 72
      8   libsystem_c.dylib                  0x98ae85b7 _pthread_start + 344
      9   libsystem_c.dylib                  0x98ad2d4e thread_start + 34

      Thread 5:
      0   libsystem_kernel.dylib             0x95d9f8e2 __psynch_cvwait + 10
      1   libsystem_c.dylib                  0x98aed280 _pthread_cond_wait + 833
      2   libsystem_c.dylib                  0x98b73095 pthread_cond_wait$UNIX2003 + 71
      3   com.filemaker.support.framework     0x0319524c Draco::Semaphore::P(Draco::Thread*) + 108
      4   com.filemaker.support.framework     0x0319548a Draco::MsgQ::GetMsg() + 58
      5   com.filemaker.dbengine.framework     0x0366ce49 Draco::DBLockContinueThread::Main() + 265
      6   com.filemaker.support.framework     0x03191c3e Draco::Thread::RunThread() + 46
      7   com.filemaker.support.framework     0x031930e8 Draco::Thread::ThreadUnixProc(void*) + 72
      8   libsystem_c.dylib                  0x98ae85b7 _pthread_start + 344
      9   libsystem_c.dylib                  0x98ad2d4e thread_start + 34

      Thread 6:
      0   libsystem_kernel.dylib             0x95d9fc72 __semwait_signal + 10
      1   libsystem_c.dylib                  0x98b72a55 nanosleep$UNIX2003 + 189
      2   libsystem_c.dylib                  0x98b7291e usleep$UNIX2003 + 60
      3   com.apple.audio.units.Components     0x7000e59a AUHAL::Stop() + 128
      4   com.apple.audio.units.Components     0x7009c7ff AUMethodStop(void*) + 55
      5   com.apple.audio.toolbox.AudioToolbox     0x95140a73 _AT_AudioOutputUnitStop + 105
      6   com.apple.audio.toolbox.AudioToolbox     0x9514ebdf AudioUnitGraph::Stop() + 245
      7   com.apple.audio.toolbox.AudioToolbox     0x9514d2bc AudioUnitGraph::Dispose() + 44
      8   com.apple.audio.toolbox.AudioToolbox     0x9514d26a DisposeAUGraph + 161
      9   com.apple.speech.synthesis.MacinTalkSynthesizer     0x1058da6a MTBEAudioUnitSoundOutput::~MTBEAudioUnitSoundOutput() + 86
      10  com.apple.speech.synthesis.MacinTalkSynthesizer     0x1058887d MTBEAudioUnitSoundOutput::~MTBEAudioUnitSoundOutput() + 19
      11  com.apple.speech.synthesis.MacinTalkSynthesizer     0x10542183 SpeechChannelManager::DisposeSoundChannel(bool) + 83
      12  com.apple.speech.synthesis.MacinTalkSynthesizer     0x1058b5e8 SpeechChannelManager::~SpeechChannelManager() + 58
      13  com.apple.speech.synthesis.MacinTalkSynthesizer     0x10541a5f SpeechChannelManager::~SpeechChannelManager() + 19
      14  com.apple.speech.synthesis.MacinTalkSynthesizer     0x10541a42 SECloseSpeechChannel + 34
      15  com.apple.speech.synthesis.framework     0x95378781 KillSpeechChannel(SpeechChannelRecord*, SpeechEngine*) + 276
      16  com.apple.speech.synthesis.framework     0x95378658 DisposeSpeechChannel + 25
      17  com.apple.speech.synthesis.MacinTalkSynthesizer     0x1057fc83 MTBEDoneTask::Execute(void*) + 115
      18  com.apple.speech.synthesis.MacinTalkSynthesizer     0x10544ced MTBEWorker::ExecuteTasks() + 213
      19  libdispatch.dylib                  0x900edc82 _dispatch_client_callout + 46
      20  libdispatch.dylib                  0x900f0007 _dispatch_source_invoke + 699
      21  libdispatch.dylib                  0x900ef00a _dispatch_queue_invoke + 66
      22  libdispatch.dylib                  0x900ef12c _dispatch_queue_drain + 154
      23  libdispatch.dylib                  0x900eeffa _dispatch_queue_invoke + 50
      24  libdispatch.dylib                  0x900eeecb _dispatch_worker_thread2 + 230
      25  libsystem_c.dylib                  0x98aeae72 _pthread_wqthread + 441
      26  libsystem_c.dylib                  0x98ad2d2a start_wqthread + 30

      Thread 7:
      0   libsystem_c.dylib                  0x98ad2d0c start_wqthread + 0

      Thread 8 Crashed:: Dispatch queue: MTBESoundOutput
      0   libdispatch.dylib                  0x900ee306 dispatch_retain + 51
      1   libdispatch.dylib                  0x900f213c dispatch_source_set_timer + 359
      2   com.apple.speech.synthesis.MacinTalkSynthesizer     0x1058dd58 0x1053e000 + 327000
      3   libdispatch.dylib                  0x900f1f8f _dispatch_call_block_and_release + 15
      4   libdispatch.dylib                  0x900edc82 _dispatch_client_callout + 46
      5   libdispatch.dylib                  0x900ef160 _dispatch_queue_drain + 206
      6   libdispatch.dylib                  0x900eeffa _dispatch_queue_invoke + 50
      7   libdispatch.dylib                  0x900eeecb _dispatch_worker_thread2 + 230
      8   libsystem_c.dylib                  0x98aeae72 _pthread_wqthread + 441
      9   libsystem_c.dylib                  0x98ad2d2a start_wqthread + 30

      Thread 9:: com.apple.audio.IOThread.client
      0   libsystem_kernel.dylib             0x95d9d7d2 mach_msg_trap + 10
      1   libsystem_kernel.dylib             0x95d9ccb0 mach_msg + 68
      2   com.apple.audio.CoreAudio          0x9696aeba HALB_MachPort::SendMessageWithReply(unsigned int, unsigned int, unsigned long, unsigned long, mach_msg_header_t*, bool, unsigned int) + 138
      3   com.apple.audio.CoreAudio          0x9696552e HALB_MachPort::SendSimpleMessageWithSimpleReply(unsigned int, unsigned int, int, int&, bool, unsigned int) + 70
      4   com.apple.audio.CoreAudio          0x96963bcd HALC_ProxyIOContext::IOWorkLoop() + 1287
      5   com.apple.audio.CoreAudio          0x96963617 HALC_ProxyIOContext::IOThreadEntry(void*) + 145
      6   com.apple.audio.CoreAudio          0x9696db61 ___ZN19HALC_ProxyIOContextC2Emj_block_invoke_0 + 20
      7   com.apple.audio.CoreAudio          0x9696353d HALB_IOThread::Entry(void*) + 71
      8   libsystem_c.dylib                  0x98ae85b7 _pthread_start + 344
      9   libsystem_c.dylib                  0x98ad2d4e thread_start + 34

      Thread 10:
      0   libsystem_kernel.dylib             0x95da00ee __workq_kernreturn + 10
      1   libsystem_c.dylib                  0x98aeb0ac _pthread_workq_return + 45
      2   libsystem_c.dylib                  0x98aeae79 _pthread_wqthread + 448
      3   libsystem_c.dylib                  0x98ad2d2a start_wqthread + 30

      Thread 8 crashed with X86 Thread State (32-bit):
        eax: 0xac00c5b4  ebx: 0x17742ac0  ecx: 0x900fcde7  edx: 0x000f4240
        edi: 0x7fffffff  esi: 0x177d74d0  ebp: 0xb0206e88  esp: 0xb0206e4c
         ss: 0x00000023  efl: 0x00010246  eip: 0x900ee306   cs: 0x0000001b
         ds: 0x00000023   es: 0x00000023   fs: 0x00000023   gs: 0x0000000f
        cr2: 0x0ddd6a00
      Logical CPU: 1

      Workaround

      None.