Semaphore code?

Moderators: khz, MattKingUSA, deva, muldjord

empowerg
Established Member
Posts: 28
Joined: Sun Apr 03, 2016 12:36 pm
Contact:

Semaphore code?

Postby empowerg » Thu Jan 05, 2017 7:34 pm

Hi there,

I get often assertions when using Drumgizmo in MusE, and it's always the same:

Code: Select all

sem_timedwait(): Interrupted system call
muse3: ../src/semaphore.cc:152: bool Semaphore::wait(const milliseconds&): Assertion `false' failed.
Aborted (core dumped)


I had a brief look at the code and sem_timedwait checks only for ETIMEDOUT and not for EINTR, as seems to be the case here. Is this intentionally? Normal operation in system programming would be to check for EINTR, recalculate the time in that case and then call sem_timedwait again.

So wouldn't that be better? It would prevent quite some crashes inside MusE.

lg,
Michael

User avatar
deva
Established Member
Posts: 131
Joined: Sun Oct 23, 2016 10:15 am
Contact:

Re: Semaphore code?

Postby deva » Sat Jan 07, 2017 4:19 pm

@empowerg: We have just pushed a fix the drumgizmo git master. Could you test it with muse to verify that it actually fixes the problem?
http://cgit.drumgizmo.org/drumgizmo/com ... ab49f94889


Return to “Development”

Who is online

Users browsing this forum: No registered users and 1 guest