files: don't check uninitialized memory in create_link_remap()

Look at this strace output:
107   linkat(45, "", 1017, "./root/git/orig/criu/test/zdtm/live/static/unlink_fstat03.test (deleted)/link_remap.4", AT_EMPTY_PATH) = -1 ENOENT (No such file or director

It's obvious, that we didn't cat the file name.

Here is an error in calculation of offset for the last symbol.
The current version of code sets this offset in strlen(),
but it's actually strlen() - 1.

Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
This commit is contained in:
Andrey Vagin 2014-08-19 23:22:00 +04:00 committed by Pavel Emelyanov
parent 546f2701f0
commit c049d8452d

View file

@ -433,7 +433,7 @@ static int create_link_remap(char *path, int len, int lfd,
link_name[0] = '.';
memcpy(link_name + 1, path, len);
tmp = link_name + len + 1;
tmp = link_name + len;
while (*tmp != '/') {
BUG_ON(tmp == link_name);
tmp--;