• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Bug in AUEventListener?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bug in AUEventListener?


  • Subject: Bug in AUEventListener?
  • From: Urs Heckmann <email@hidden>
  • Date: Sat, 30 Oct 2004 23:11:44 +0200

Hi,

I've worked with AUEventListeners for some weeks, but I finally found out that they were related to some odd crashes I encountered recently.

What I do is, instead of ParameterListeres and PropertyListeners, I used AUEventListeners for both. During AUView::CreateUI I installed them, added the AudioUnitEvents (for 300 Parameters and a couple of Properties), all worked fine until in ~AUView I removed all events and disposed off the Listener. All good except...

... both in SynthTest and Logic 7 (and maybe some other hosts) it can happen that the View gets closed and re-opened immediately. And boom it goes. In SynthTest this is easily reproduceable when loading a new aupreset - funnily, SynthTest deletes/constructs the gui during preset change, which is a good stress test. This is a guaranteed crash (see SynthTest Crash Log below).

Commenting out the creation of the AUEventListener made it work perfectly. It also works pretty fine when using the dedicated Listeners for Parameters/Properties. (Except that, as Bill pointed out, I can't draw upon Parameter Notification)

My current guess is, that if the AUEventListener is disposed, some events might still be in the queue, and on re-install *before* something magical in the RunLoop ditches them some undefined behaviour occurrs. Dunno.

So, is that only me or is it a bug in the Listener stuff?

Cheers,

;)  Urs


Thread 0 Crashed:
#0 0x04040404 in 0x4040404
#1 0x90194848 in __CFRunLoopDoTimer (__CFRunLoopDoTimer + 244)
#2 0x90191ba8 in __CFRunLoopRun (__CFRunLoopRun + 1480)
#3 0x901960bc in CFRunLoopRunSpecific (CFRunLoopRunSpecific + 328)
#4 0x927d5ecc in RunCurrentEventLoopInMode (RunCurrentEventLoopInMode + 172)
#5 0x927dc5b8 in ReceiveNextEventCommon (ReceiveNextEventCommon + 244)
#6 0x927fe6d0 in BlockUntilNextEventMatchingListInMode (BlockUntilNextEventMatchingListInMode + 96)
#7 0x92dd2a80 in _DPSNextEvent (_DPSNextEvent + 384)
#8 0x92de93fc in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 116)
#9 0x92dfd730 in -[NSApplication run] (-[NSApplication run] + 540)
#10 0x92eb9a1c in NSApplicationMain (NSApplicationMain + 464)
#11 0x00004bcc in main (main + 40)
#12 0x00004950 in _start (_start + 380)
#13 0x000047d0 in start (start + 48)


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Prev by Date: Re: Problems compiling with OpenAL framework with Codewarrior 8.0
  • Next by Date: Console Error when
  • Previous by thread: Looking for tutorial
  • Next by thread: Console Error when
  • Index(es):
    • Date
    • Thread