X-Git-Url: https://git.wh0rd.org/?p=dump.git;a=blobdiff_plain;f=restore%2Fmain.c;h=3feca826338866a97364a94d7555baa6538e1624;hp=8d9c6d2c6ab7fa1a83482b9fdbc99623815d018d;hb=e46507f206f7adcb8d2e218963d2115236e86604;hpb=f48a055e452249091f3c6851a20431a8c87135b1 diff --git a/restore/main.c b/restore/main.c index 8d9c6d2..3feca82 100644 --- a/restore/main.c +++ b/restore/main.c @@ -41,7 +41,7 @@ #ifndef lint static const char rcsid[] = - "$Id: main.c,v 1.27 2001/08/13 16:17:52 stelian Exp $"; + "$Id: main.c,v 1.28 2001/08/14 13:11:58 stelian Exp $"; #endif /* not lint */ #include @@ -277,7 +277,19 @@ main(int argc, char *argv[]) atexit(cleanup); - setinput(inputdev); + if (command == 'C' && inputdev[0] != '/') { + /* since we chdir into the directory we are comparing + * to, we must retain the full tape path */ + char wd[MAXPATHLEN], fullpathinput[MAXPATHLEN]; + if (!getcwd(wd, MAXPATHLEN)) + err(1, "can't get current directory"); + snprintf(fullpathinput, MAXPATHLEN, "%s/%s", wd, inputdev); + fullpathinput[MAXPATHLEN - 1] = '\0'; +printf("FULLPATH is %s\n", fullpathinput); + setinput(fullpathinput); + } + else + setinput(inputdev); if (argc == 0 && !filelist) { argc = 1;