X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?p=src%2Fapp-framework-main.git;a=blobdiff_plain;f=src%2Fwgtpkg-workdir.c;h=ea376666d0829664e1c1cd0284490057865d29f6;hp=c0fb6aa6db3e67699066a4dde3223c9ed8140e5b;hb=d0cb2a7a1e068a38b4a0c3216ccdbce0e33ecffb;hpb=48e894bee732315d89eb5b46d2432ed45fc81a43 diff --git a/src/wgtpkg-workdir.c b/src/wgtpkg-workdir.c index c0fb6aa..ea37666 100644 --- a/src/wgtpkg-workdir.c +++ b/src/wgtpkg-workdir.c @@ -61,7 +61,7 @@ static void put_workdir(int fd, const char *name, size_t length) workdir[1] = 0; workdirfd = AT_FDCWD; } else { - + assert(length < sizeof workdir); memcpy(workdir, name, 1 + length); workdirfd = fd; @@ -81,6 +81,12 @@ int set_workdir(const char *name, int create) return -1; } + /* check if . */ + if (length == 1 && name[0] == '.') { + put_workdir(AT_FDCWD, name, length); + return 0; + } + /* opens the directory */ dirfd = openat(AT_FDCWD, name, O_PATH|O_DIRECTORY|O_RDONLY); if (dirfd < 0) {