diff --git a/D:/ReactOS/reactos/modules/rosapps/lib/vfdlib/vfdctl.c b/D:/ReactOS/reactos/modules/rosapps/lib/vfdlib/vfdctl.c index eb09da84d3..d38c99f883 100644 --- a/D:/ReactOS/reactos/modules/rosapps/lib/vfdlib/vfdctl.c +++ b/D:/ReactOS/reactos/modules/rosapps/lib/vfdlib/vfdctl.c @@ -251,6 +251,7 @@ DWORD WINAPI VfdInstallDriver( PSTR file_name; #endif // VFD_EMBED_DRIVER CHAR system_dir[MAX_PATH]; + CHAR full_file_path[MAX_PATH]; // added 2017-12-22 PSTR inst_path; DWORD len; DWORD ret = ERROR_SUCCESS; @@ -269,6 +270,9 @@ DWORD WINAPI VfdInstallDriver( } inst_path = &system_dir[len]; + strcpy(full_file_path, system_dir); // added 2017-12-22 + strcat(full_file_path, VFD_INSTALL_DIRECTORY); // added 2017-12-22 + strcat(full_file_path, VFD_DRIVER_FILENAME); // added 2017-12-22 #ifdef VFD_EMBED_DRIVER // @@ -342,6 +346,11 @@ DWORD WINAPI VfdInstallDriver( } } + // Check install directory & file exist or use full_file_path // added 2017-12-22 + + if (GetFileAttributesA(file_path) == INVALID_FILE_ATTRIBUTES) // added 2017-12-22 + strcpy(file_path, full_file_path); // added 2017-12-22 + // Check if the file is a valid Virtual Floppy driver ret = VfdCheckDriverFile(file_path, NULL);