Git Product home page Git Product logo

Comments (11)

dougbinks avatar dougbinks commented on May 18, 2024

Are you able to run the examples with enkiTS, and do you get the same results from valgrind? If not, this may be an usage issue so if I could take a look at the codec code I might be able to help.

from enkits.

dougbinks avatar dougbinks commented on May 18, 2024

I can replicate a segfault 11 on OSX 10.11.6 (El Capitan), which is the latest I can access for OSX as I don't have a new enough machine for 10.13 (High Sierra). I'm looking into this now but it might take a few days, particularly as my OSX machine is not very stable at the moment.

from enkits.

dougbinks avatar dougbinks commented on May 18, 2024

So it looks like OSX have deprecated mach semaphores, as they worked under previous versions but now I've updated OSX to a more recent version they don't.

I'll try switching to OSX dispatch semaphores, if this doesn't work I may need to switch to named BSD semaphores and use a unique name approach.

from enkits.

boxerab avatar boxerab commented on May 18, 2024

Thanks! C++20 finally provides a semaphore, BTW 😊

from enkits.

boxerab avatar boxerab commented on May 18, 2024

Side note: this would have been caught by CI builds. If you're interested, I can look into setting up Travis and Appveyor CI for the project

from enkits.

dougbinks avatar dougbinks commented on May 18, 2024

I'm already using Travis Cl for OSX, and this wasn't caught by my Cl builds since it's a runtime error rather than a build one. I need to create a simple test which can be run on the build server, and add that to the matrix.

from enkits.

boxerab avatar boxerab commented on May 18, 2024

Great to have CI, yes, I guess next step would be a few unit tests.

from enkits.

boxerab avatar boxerab commented on May 18, 2024

btw, for my testing, I installed OSX High Sierra VM on Ubuntu host using qemu:

https://github.com/kholia/OSX-KVM

Took about an hour to get this working.

from enkits.

dougbinks avatar dougbinks commented on May 18, 2024

I might be able to do this by running a VM on my Mac, as I believe this is permitted by the OSX license. However my Mac's not very powerful nor very stable so this may not be a great experience, but it could suffice.

from enkits.

dougbinks avatar dougbinks commented on May 18, 2024

The new implementation uses dispatch semaphores, which appears to be the approach used by other open source utilities such as boost.

This requires OSX 10.6+ or iOS 4+ so if any developers need support prior to that I might reinstate mach semaphores but would need someone to test as I don't have earlier versions to check the macro tests work.

At some point I'll add a simple unit test which should catch OSX changes to API behaviour.

from enkits.

boxerab avatar boxerab commented on May 18, 2024

Thanks!! Works like a charm.

from enkits.

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.