Git Product home page Git Product logo

Comments (4)

 avatar commented on August 23, 2024

Actually it's the first call to alGenBuffers() on the OSX implementation which fail. (since OpenAl 1.1 according to my following research)

A simple call with NULL buffer at the begining of Sound::load_all() makes the error disappear.

I don't know why cleaning OpenAl error buffer before Sound::load() (and then just after construct it) make disappear the error too, and I also don't know how to solve it properly ;)

from solarus.

christopho avatar christopho commented on August 23, 2024

I can accept this kind of workaround. I implemented it in commit 35120c3 (branch master). Does it work?
Feel free to make a pull request to fix it if it's not okay.

I don't want to make the call with the NULL buffer from Sound::load_all() because Sound::load_all() is not necessarily called.

from solarus.

 avatar commented on August 23, 2024

Works fine for me :)

Because of the high number of OSX's (or not) workaround, what do you think about manage them by adding some SOLARUS_WORKAROUND_XXX definition in the CMakeList file ?
Not really useful (unless there is an huge commit on all used lib which fix every bug) but it can provide better vision of the OS's dependent code when all "strange issue" will be solved.

EDIT : The patch I just submitted propose an implementation. Accept it if this solution suits you ;)

from solarus.

christopho avatar christopho commented on August 23, 2024

Hi,
I applied a part of your changes, and added new compilation flags to remove some #ifdef APPLE_, #ifdef __PANDORA, etc.
I removed both workarounds because it's not a problem to apply them in all cases. The less OS-specific code, the better.

Thanks for your patch!

from solarus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.