We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 1604

Summary: Ogg support detection in static mode [patch]
Product: SDL_mixer Reporter: Gabriel Jacobo <gabomdq>
Component: miscAssignee: Ryan C. Gordon <icculus>
Status: RESOLVED FIXED QA Contact: Sam Lantinga <slouken>
Severity: normal    
Priority: P2    
Version: unspecified   
Hardware: x86_64   
OS: Linux   
Attachments: Ogg detection in static mode
Call Music Finish Hook from Mix_HaltMusic

Description Gabriel Jacobo 2012-09-20 16:01:32 UTC
When --disable-music-ogg-shared the OGG tests fail when they should pass. Attached is a crude patch that gets them working (though the changes done to configure.in, inside AC_CHECK_LIB, will produce ugly status string such as "checking for ov_open_callbacks in -lvorbisidec -logg", which is mostly a aesthetic concern)
Comment 1 Gabriel Jacobo 2012-09-20 16:03:36 UTC
Created attachment 952 [details]
Ogg detection in static mode
Comment 2 Gabriel Jacobo 2012-09-21 13:39:04 UTC
Created attachment 953 [details]
Call Music Finish Hook from Mix_HaltMusic

Adding an additional patch that fixes a separate issue, but as it's a small one I think it can live here anyway :)

The hook set up with Mix_HookMusicFinished is not being called when you issue a Mix_HaltMusic, though it should according to the documentation:

"int Mix_HaltMusic()
Halt playback of music. This interrupts music fader effects. Any callback set by Mix_HookMusicFinished will be called when the music stops."
Comment 3 Sam Lantinga 2012-09-26 20:36:14 UTC
I applied your patch.  I agree it's kind of ugly, but I'm not sure what would be better.
http://hg.libsdl.org/SDL_mixer/rev/0aadc9b6daac

Please enter a separate bug for the other issue, as it needs to be evaluated by Ryan.

Thanks!
Comment 4 Rafał Mużyło 2012-10-22 12:49:12 UTC
A bit late thought: isn't the fifth argument of AC_CHECK_LIB for this exact purpose ?