--- rpm-4.4.5/lib/rpmlock.c.orig 2006-02-21 01:03:07.000000000 +0100 +++ rpm-4.4.5/lib/rpmlock.c 2006-02-28 21:57:10.968577000 +0100 @@ -39,7 +39,11 @@ /* XXX oneshot to determine path for fcntl lock. */ /* XXX rpmlock_path is set once, cannot be changed with %{_rpmlock_path}. */ if (!oneshot) { - const char * t = rpmGenPath(rootdir, rpmlock_path_default, NULL); + const char * t = NULL; + char * check = rpmExpand(rpmlock_path_default, NULL); + if (check[0] != '\0') + t = rpmGenPath(rootdir, rpmlock_path_default, NULL); + free(check); if (t == NULL || *t == '\0' || *t == '%') t = _free(t); rpmlock_path = t;