Index: mapper/src/Mapper_OSS.c @@ -964,6 +964,13 @@ BEGIN("Mapper_ReadEvent"); +#ifdef __FreeBSD__ + /* on FreeBSD the read() will block when there is no data available... */ + out = 0; + ioctl(seqfd, SNDCTL_SEQ_GETINCOUNT, &out); + if (!out) + RETURN_BOOL(False); +#endif if ( ( out = read(seqfd, &InBytes, sizeof(InBytes)) ) <= 0 ) RETURN_BOOL(False);