+ /* Making this static prevents a memory leak warning from valgrind for the
+ * parent process, which cannot easily unlock (and free) 'lockfile' because
+ * it can only do so after the child has exited, and it's the caller of
+ * this function that does the wait() call. */
+ static struct lockfile *lockfile;