Semaphore code?

Moderators: MattKingUSA, khz, muldjord, deva

Post Reply
empowerg
Established Member
Posts: 34
Joined: Sun Apr 03, 2016 12:36 pm
Contact:

Semaphore code?

Post by empowerg »

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: 285
Joined: Sun Oct 23, 2016 10:15 am
Has thanked: 3 times
Been thanked: 31 times
Contact:

Re: Semaphore code?

Post by deva »

@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
Post Reply