[Openal] Null Pointer crash in Linux openal

Sven Panne Sven.Panne at BenQ.com
Mon Aug 21 01:40:18 PDT 2006


> -----Original Message-----
> From: openal-bounces at opensource.creative.com 
> [mailto:openal-bounces at opensource.creative.com] On Behalf Of 
> Thilo Schulz
> Sent: Samstag, 19. August 2006 23:14
> To: openal at opensource.creative.com
> Subject: [Openal] Null Pointer crash in Linux openal
> 
> [...]
> On my system, cc->read_device is NULL which will make for a 
> nice SIGSEGV Attached patch will fix this issue.

Hmmm, this patch comes up again and again... The reason that I haven't
applied it yet is that it only hides the symptom, but doesn't fix the
cause. The whole device/context management in the OpenAL SI would need
some overhaul, so it would be great if somebody took this task. I'm
currently really busy (job/completely new HW at home/holidays/...), so
there won't be much input from my side in the next few weeks.

To give a hint what should be done:

 * The "ispaused" static variable should probably be within the context
structure and the logic adapted correspondingly.

 * Each context is owned by exactly *one* device (= no need for NULL
checks), so having write_device *and* read_device in the context struct
is wrong.

 * Capture devices are special (they don't contain contexts), this
should be reflected in the code.

Thanks for reminding me about this issue,
   S.



More information about the Openal mailing list