--- trunk/grubby/grubby.c 2012/10/01 12:06:26 1931 +++ trunk/grubby/grubby.c 2012/10/01 12:08:46 1934 @@ -1313,8 +1313,7 @@ /* most likely the symlink is relative, so change our directory to the dir of the symlink */ char *dir = strdupa(outName); - rc = chdir(dirname(dir)); - free(dir); + rc = chdir(dirname(dir)); do { buf = alloca(len + 1); rc = readlink(basename(outName), buf, len);