SDL Mixer major bug

Hi, I sent a few days ago on the SDL mailing list a bug report and a
patch for it on this mailing list:
http://www.libsdl.org/pipermail/sdl/2006-November/077275.html

I did not get any feedback since. What is the process to get this fixed
in SDL_Mixer, is this the right list ?

I tried to contact the 3 authors listed here directly without reply:
http://www.libsdl.org/projects/SDL_mixer/--
Bruno Coudoin
http://gcompris.net Free educational software for kids
http://ofset.org Free educational software for all
http://toulibre.org Logiciel Libre ? Toulouse

Hello Bruno,

Monday, November 27, 2006, 9:09:35 PM, you wrote:

Hi, I sent a few days ago on the SDL mailing list a bug report and a
patch for it on this mailing list:
http://www.libsdl.org/pipermail/sdl/2006-November/077275.html

I did not get any feedback since. What is the process to get this fixed
in SDL_Mixer, is this the right list ?

I tried to contact the 3 authors listed here directly without reply:
http://www.libsdl.org/projects/SDL_mixer/

Do you need Timidity support? If not, the best thing to do is to
simply not build it with Timidity.

If this is an open source project you simply have to point out this
issue in your README or so.

If it’s closed source and you’re distributing a binary, then simply
build a suitable SDL_mixer .so and distribute that with your binary.

The only sure fire way to get anything fixed quickly in an open source
project, is to fix it yourself and commit a patch. That’s the benefit
and the drawback of open source.–
Best regards,
Peter mailto:@Peter_Mulholland

Heh, if you look at the URL Bruno sent, he DID include a patch. :slight_smile:

Anyway, I’m guessing the SDL_mixer maintainers may’ve been busy with
Thanksgiving last week?..

Or, perhaps they just needed a kick in the pants. I know I often do. :slight_smile:
(I have a day job and family that keep me busy…)

-bill!On Mon, Nov 27, 2006 at 09:13:02PM +0000, Peter Mulholland wrote:

The only sure fire way to get anything fixed quickly in an open source
project, is to fix it yourself and commit a patch.

Le lundi 27 novembre 2006 ? 21:13 +0000, Peter Mulholland a ?crit :

Hello Bruno,

Do you need Timidity support? If not, the best thing to do is to
simply not build it with Timidity.

No I don’t but many distribution does provide SDL_Mixer compiled with
timidity. Even if you don’t use it, it will crash your application is
you open sdl mixer twice.

If this is an open source project you simply have to point out this
issue in your README or so.

I developing GCompris, it’s a free software project. Pointing this in
the README maybe fine but I am afraid it won’t solve the issue. Many
distro already distribute an SDL_Mixer with this bug. I can’t go after
each one explaining the issue.

If it’s closed source and you’re distributing a binary, then simply
build a suitable SDL_mixer .so and distribute that with your binary.

Sadly, that’s what I am doing with the windows version and I don’t have
this issue, I can test the binary I ship and it includes the library we
need. GCompris despite being there to promote GNU/Linux is more stable
on windows :confused:

The only sure fine way to get anything fixed quickly in an open source
project, is to fix it yourself and commit a patch. That’s the benefit
and the drawback of open source.

I provided a patch but if I get no feedback from the authors, what can I
do. I am sad to see that many distro have the issue, it make GCompris
and probably other games unstable (at least, Mandriva 2007 has the
issue).–
Bruno Coudoin
http://gcompris.net Free educational software for kids
http://ofset.org Free educational software for all
http://toulibre.org Logiciel Libre ? Toulouse

Le lundi 27 novembre 2006 ? 13:34 -0800, Bill Kendrick a ?crit :

The only sure fire way to get anything fixed quickly in an open source
project, is to fix it yourself and commit a patch.

Heh, if you look at the URL Bruno sent, he DID include a patch. :slight_smile:

Anyway, I’m guessing the SDL_mixer maintainers may’ve been busy with
Thanksgiving last week?..

I have no problem to wait, I just want to be sure I am at the right
place and somebody will look at the issue.

Or, perhaps they just needed a kick in the pants. I know I often do. :slight_smile:
(I have a day job and family that keep me busy…)

So do I ;)> On Mon, Nov 27, 2006 at 09:13:02PM +0000, Peter Mulholland wrote:


Bruno Coudoin
http://gcompris.net Free educational software for kids
http://ofset.org Free educational software for all
http://toulibre.org Logiciel Libre ? Toulouse

Le Mon, 27 Nov 2006 22:09:35 +0100
Bruno Coudoin <bruno.coudoin at free.fr> a ?crit:

Hi, I sent a few days ago on the SDL mailing list a bug report and a
patch for it on this mailing list:
http://www.libsdl.org/pipermail/sdl/2006-November/077275.html

I did not get any feedback since. What is the process to get this
fixed in SDL_Mixer, is this the right list ?

I tried to contact the 3 authors listed here directly without reply:
http://www.libsdl.org/projects/SDL_mixer/

Hello, I just had a look at the test prog which crash on my system, so
it’s reproducible, which is a good thing to debug it. I’ll try to have a
look at your patch (mainly because I fixed some stuff (memory leaks,
different config files location) in timidity a while ago, which may be
the cause of this problem).–
Patrice Mandin
WWW: http://pmandin.atari.org/
Programmeur Linux, Atari
Sp?cialit?: D?veloppement, jeux

Le Mon, 27 Nov 2006 22:47:33 +0100
Bruno Coudoin <bruno.coudoin at free.fr> a ?crit:

I provided a patch but if I get no feedback from the authors, what can
I do. I am sad to see that many distro have the issue, it make
GCompris and probably other games unstable (at least, Mandriva 2007
has the issue).

Hello (again),

I just looked your patch, and this is what I was fearing: I am the
cause. From your patch, it seems the timidity path list is filled only
the first time its init function is called (because of the static
variable I added). So the second time the timidity function is called,
the path list is kept empty with NULL string pointer, hence the crash.

I’ll try to fix this as soon as possible.–
Patrice Mandin
WWW: http://pmandin.atari.org/
Programmeur Linux, Atari
Sp?cialit?: D?veloppement, jeux

Le lundi 27 novembre 2006 ? 23:10 +0100, Patrice Mandin a ?crit :

Le Mon, 27 Nov 2006 22:47:33 +0100
Bruno Coudoin <@Bruno_Coudoin> a ?crit:

I provided a patch but if I get no feedback from the authors, what can
I do. I am sad to see that many distro have the issue, it make
GCompris and probably other games unstable (at least, Mandriva 2007
has the issue).

Hello (again),

I just looked your patch, and this is what I was fearing: I am the
cause. From your patch, it seems the timidity path list is filled only
the first time its init function is called (because of the static
variable I added). So the second time the timidity function is called,
the path list is kept empty with NULL string pointer, hence the crash.

You don’t need your static variable anymore. With my patch, pathlist is
inited and freed at each open/close. The “pathlist = NULL” in
free_pathlist() does the job to make sure we reinit it at next open.

I’ll try to fix this as soon as possible.

Excellent new, thank a lot from the GCompris project.–
Bruno Coudoin
http://gcompris.net Free educational software for kids
http://ofset.org Free educational software for all
http://toulibre.org Logiciel Libre ? Toulouse

Le Mon, 27 Nov 2006 23:24:43 +0100
Bruno Coudoin <bruno.coudoin at free.fr> a ?crit:

I just looked your patch, and this is what I was fearing: I am the
cause. From your patch, it seems the timidity path list is filled
only the first time its init function is called (because of the
static variable I added). So the second time the timidity function
is called, the path list is kept empty with NULL string pointer,
hence the crash.

You don’t need your static variable anymore. With my patch, pathlist
is inited and freed at each open/close. The “pathlist = NULL” in
free_pathlist() does the job to make sure we reinit it at next open.

I’ll try to fix this as soon as possible.

Excellent new, thank a lot from the GCompris project.

OK, I tested it today, and it works, so I commited to svn. I also marked
bugs 295 and 274 (which are likely the same) as FIXED in bugzilla.

Hum, need better check, because it depends if timidity support was
compiled in for 274, which I doubt for win32 platform.–
Patrice Mandin
WWW: http://pmandin.atari.org/
Programmeur Linux, Atari
Sp?cialit?: D?veloppement, jeux

Le mardi 28 novembre 2006 ? 20:24 +0100, Patrice Mandin a ?crit :

Le Mon, 27 Nov 2006 23:24:43 +0100
Bruno Coudoin <@Bruno_Coudoin> a ?crit:

I just looked your patch, and this is what I was fearing: I am the
cause. From your patch, it seems the timidity path list is filled
only the first time its init function is called (because of the
static variable I added). So the second time the timidity function
is called, the path list is kept empty with NULL string pointer,
hence the crash.

You don’t need your static variable anymore. With my patch, pathlist
is inited and freed at each open/close. The “pathlist = NULL” in
free_pathlist() does the job to make sure we reinit it at next open.

I’ll try to fix this as soon as possible.

Excellent new, thank a lot from the GCompris project.

OK, I tested it today, and it works, so I commited to svn. I also marked
bugs 295 and 274 (which are likely the same) as FIXED in bugzilla.

Hum, need better check, because it depends if timidity support was
compiled in for 274, which I doubt for win32 platform.

Do you plan to make a new release, frankly, that would help us because
we rely on this ?–
Bruno Coudoin
http://gcompris.net Free educational software for kids
http://ofset.org Free educational software for all
http://toulibre.org Logiciel Libre ? Toulouse

While I am there, we are wondering if there is a plan to add a recording
API in SDL_Mixer. For sure, educational application would find a fun way
to use this feature.–
Bruno Coudoin
http://gcompris.net Free educational software for kids
http://ofset.org Free educational software for all
http://toulibre.org Logiciel Libre ? Toulouse

While I am there, we are wondering if there is a plan to add a recording
API in SDL_Mixer. For sure, educational application would find a fun way
to use this feature.

Recording/input (“audio capture”) is being added to SDL 1.3.

–ryan.

FINALL-- i mean… YAY!

-bill!
;)On Tue, Nov 28, 2006 at 10:17:20PM -0500, Ryan C. Gordon wrote:

While I am there, we are wondering if there is a plan to add a recording
API in SDL_Mixer. For sure, educational application would find a fun way
to use this feature.

Recording/input (“audio capture”) is being added to SDL 1.3.

might be good for if ever someone took on a full nintendo ds emulator :wink: (not
me)----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

Le Wed, 29 Nov 2006 00:05:09 +0100
Bruno Coudoin <bruno.coudoin at free.fr> a ?crit:

Do you plan to make a new release, frankly, that would help us because
we rely on this ?

Unfortunately, I am not the one who can do releases. I’m also waiting
for SDL 1.2.12.–
Patrice Mandin
WWW: http://pmandin.atari.org/
Programmeur Linux, Atari
Sp?cialit?: D?veloppement, jeux