mpg321: Do not unlock unititialized main_lock Do not call sem_post() on an unitialized semaphore. Problem spotted by . Should fix PR pkg/53369 by . Index: Makefile =================================================================== RCS file: /cvsroot/pkgsrc/audio/mpg321/Makefile,v retrieving revision 1.19 diff -u -p -r1.19 Makefile --- Makefile 2 Jun 2016 09:18:19 -0000 1.19 +++ Makefile 16 Jun 2018 10:34:29 -0000 @@ -2,6 +2,7 @@ DISTNAME= mpg321_0.3.2.orig PKGNAME= ${DISTNAME:S/_/-/:S/.orig//} +PKGREVISION= 1 CATEGORIES= audio MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mpg321/} Index: distinfo =================================================================== RCS file: /cvsroot/pkgsrc/audio/mpg321/distinfo,v retrieving revision 1.8 diff -u -p -r1.8 distinfo --- distinfo 2 Jun 2016 09:18:19 -0000 1.8 +++ distinfo 16 Jun 2018 10:34:29 -0000 @@ -5,4 +5,4 @@ RMD160 (mpg321_0.3.2.orig.tar.gz) = 04ea SHA512 (mpg321_0.3.2.orig.tar.gz) = f1bead2c11e4cde0f1a87e1b2e3d216ef80c9a5dd8b219841961688d44a5fc63a54b7af07359766fde0b2712ddc5d0a90b20149c3228cb2d70e830e15c8ab234 Size (mpg321_0.3.2.orig.tar.gz) = 151139 bytes SHA1 (patch-ao.c) = cb404acdfb032c5a823c717965d14319db0d4466 -SHA1 (patch-mpg321.c) = 0f82c72976ce1f1e7d16cd972eb1e38a0e305f86 +SHA1 (patch-mpg321.c) = c874219aa316899af42d5984ca06860642260d4b Index: patches/patch-mpg321.c =================================================================== RCS file: /cvsroot/pkgsrc/audio/mpg321/patches/patch-mpg321.c,v retrieving revision 1.1 diff -u -p -r1.1 patch-mpg321.c --- patches/patch-mpg321.c 2 Jun 2016 09:18:19 -0000 1.1 +++ patches/patch-mpg321.c 16 Jun 2018 10:34:29 -0000 @@ -1,6 +1,7 @@ $NetBSD: patch-mpg321.c,v 1.1 2016/06/02 09:18:19 jperkin Exp $ -Ensure structs are zero'd before use. +- Ensure structs are zero'd before use. +- Do not unlock uninitialized main_lock --- mpg321.c.orig 2012-03-25 12:27:49.000000000 +0000 +++ mpg321.c @@ -12,3 +13,12 @@ Ensure structs are zero'd before use. playbuf.pl = pl = new_playlist(); if (!pl) +@@ -750,8 +751,6 @@ int main(int argc, char *argv[]) + if (tcgetattr(0, &terminal_settings) < 0) + perror("tcgetattr()"); + memcpy(&old_terminal_settings, &terminal_settings, sizeof(struct termios)); +- /* Early thread start */ +- sem_post(&main_lock); + } + } + /* Play the mpeg files or zip it! */