Index: qemu/linux-user/path.c =================================================================== --- qemu.orig/linux-user/path.c 2007-11-28 23:13:12.000000000 -0700 +++ qemu/linux-user/path.c 2007-11-28 23:13:24.000000000 -0700 @@ -152,7 +152,7 @@ { /* Only do absolute paths: quick and dirty, but should mostly be OK. Could do relative by tracking cwd. */ - if (!base || name[0] != '/') + if (!base || !name || name[0] != '/') return name; return follow_path(base, name) ?: name; Index: qemu/linux-user/syscall.c =================================================================== --- qemu.orig/linux-user/syscall.c 2007-11-28 23:01:10.000000000 -0700 +++ qemu/linux-user/syscall.c 2007-11-28 23:13:06.000000000 -0700 @@ -3864,8 +3864,12 @@ goto unimplemented; #endif case TARGET_NR_acct: - if (!(p = lock_user_string(arg1))) - goto efault; + if (arg1) { + if (!(p = lock_user_string(arg1))) + goto efault; + } else { + p = NULL; + } ret = get_errno(acct(path(p))); unlock_user(p, arg1, 0); break;