diff options
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 8 | 
1 files changed, 5 insertions, 3 deletions
@@ -77,7 +77,7 @@ int main(int argc, char* argv[])    int mode = 0;    int raw = 0;    partitioninfo pi; -  char driveName[MAX_PATH]; +  char driveName[MAX_PATH + 1];  #ifdef _WIN32    int drive = 0;  #endif @@ -191,7 +191,9 @@ int main(int argc, char* argv[])    if(argc < 1)      errx(2, "must specify drive name"); -  driveName = argv[0]; +  strncpy(driveName, argv[0], MAX_PATH); +  driveName[MAX_PATH] = 0; +    argv++;    argc--;  #endif @@ -220,7 +222,7 @@ int main(int argc, char* argv[])      pi.end = temp;      /* Open the device */ -    pi.device = open(driveName, _O_BINARY | _O_RDONLY | OPEN_LARGE_OPTS); +    pi.device = open(driveName, O_BINARY | O_RDONLY | OPEN_LARGE_OPTS);      if(pi.device == -1)        err(1, "couldn't open drive: %s", driveName);  | 
