There is an unlock where there should be a lock.
(Even the comment tells so.)
Thread libraries which do strict checks complain about a double
unlock because of this.
Thanks for finding this. I've pushed out a fix now into 1.4.1: