if ((res->ps == (sem_t *) SEM_FAILED) && (errno == ENAMETOOLONG)) {
/* Old darwins only allow 13 chars. Did you create *that* amount of semaphores? */
res->name[13] = '\0';
- res->ps = sem_open(res->name, O_CREAT, 0644, 1);
+ res->ps = sem_open(res->name, O_CREAT, 0644, value);
}
if ((res->ps == (sem_t *) SEM_FAILED))
THROWF(system_error, errno, "sem_open() failed: %s", strerror(errno));