diff -ub -r alsa-utils-1.0.27.org/alsactl/lock.c alsa-utils-1.0.27/alsactl/lock.c --- alsa-utils-1.0.27.org/alsactl/lock.c 2013-04-11 15:43:06.000000000 +0400 +++ alsa-utils-1.0.27/alsactl/lock.c 2013-05-03 09:49:45.000000000 +0400 @@ -35,7 +35,7 @@ int fd = -1, err = 0; struct flock lck; struct stat st; - char lcktxt[11]; + char lcktxt[20]; char *nfile; if (!do_lock) @@ -53,6 +53,8 @@ lck.l_len = 11; lck.l_pid = 0; if (lock) { + // NOTE `long` type on amd64, being printed, could take up to 18 decimal digits + // (according output of std::numeric_limits::digits10) sprintf(lcktxt, "%10li\n", (long)getpid()); } else { sprintf(lcktxt, "%10s\n", "");