diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e2af096..952864b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -304,7 +304,7 @@ jobs: run: | sudo apt-get update -qq sudo apt-get install -yqq acl bc curl cvs git mercurial rsync subversion wget bison bzip2 flex gawk gperf gzip help2man nano perl patch tar texinfo unzip automake binutils build-essential cpio libtool libncurses-dev pkg-config python libtool-bin liblo-dev qemu-user-static - sudo apt-get install -yqq pandoc texlive-latex-base + sudo apt-get install -yqq pandoc texlive-latex-recommended - name: Bootstrap toolchain if: steps.mpb-cache.outputs.cache-hit != 'true' run: | @@ -343,7 +343,7 @@ jobs: run: | sudo apt-get update -qq sudo apt-get install -yqq acl bc curl cvs git mercurial rsync subversion wget bison bzip2 flex gawk gperf gzip help2man nano perl patch tar texinfo unzip automake binutils build-essential cpio libtool libncurses-dev pkg-config python libtool-bin liblo-dev qemu-user-static - sudo apt-get install -yqq pandoc texlive-latex-base + sudo apt-get install -yqq pandoc texlive-latex-recommended - name: Bootstrap toolchain if: steps.mpb-cache.outputs.cache-hit != 'true' run: | @@ -382,7 +382,7 @@ jobs: run: | sudo apt-get update -qq sudo apt-get install -yqq acl bc curl cvs git mercurial rsync subversion wget bison bzip2 flex gawk gperf gzip help2man nano perl patch tar texinfo unzip automake binutils build-essential cpio libtool libncurses-dev pkg-config python libtool-bin liblo-dev qemu-user-static - sudo apt-get install -yqq pandoc texlive-latex-base + sudo apt-get install -yqq pandoc texlive-latex-recommended - name: Bootstrap toolchain if: steps.mpb-cache.outputs.cache-hit != 'true' run: | diff --git a/include/mutex.hpp b/include/mutex.hpp index 62821fc..49018db 100644 --- a/include/mutex.hpp +++ b/include/mutex.hpp @@ -29,18 +29,18 @@ struct SharedMutex { SharedMutex() noexcept { pthread_mutexattr_t attr; - pthread_mutexattr_init(&attr); pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT); pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); pthread_mutex_init(&readLock, &attr); pthread_mutexattr_destroy(&attr); - pthread_mutexattr_init(&attr); - pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT); - pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_NORMAL); - pthread_mutex_init(&writeLock, &attr); - pthread_mutexattr_destroy(&attr); + pthread_mutexattr_t attr2; + pthread_mutexattr_init(&attr2); + pthread_mutexattr_setprotocol(&attr2, PTHREAD_PRIO_NONE); + pthread_mutexattr_settype(&attr2, PTHREAD_MUTEX_NORMAL); + pthread_mutex_init(&writeLock, &attr2); + pthread_mutexattr_destroy(&attr2); } ~SharedMutex() noexcept {