fix hangs while unbinding

This commit is contained in:
Marc
2022-09-11 15:47:46 +02:00
parent 720e8562e7
commit 1ac8b25dc9
+2 -2
View File
@@ -283,7 +283,6 @@ int deploy(int argc, char ** argv) {
int gameId = getGameIdFromAppId(appid); int gameId = getGameIdFromAppId(appid);
const char * path = g_hash_table_lookup(gamePaths, &gameId); const char * path = g_hash_table_lookup(gamePaths, &gameId);
char * steamGameFolder = g_build_path("/", path, "steamapps/common", GAMES_NAMES[gameId], "Data", NULL); char * steamGameFolder = g_build_path("/", path, "steamapps/common", GAMES_NAMES[gameId], "Data", NULL);
printf("%s\n", steamGameFolder);
char * gameUpperDir = g_build_filename(home, MANAGER_FILES, GAME_UPPER_DIR_NAME, appIdStr, NULL); char * gameUpperDir = g_build_filename(home, MANAGER_FILES, GAME_UPPER_DIR_NAME, appIdStr, NULL);
char * gameWorkDir = g_build_filename(home, MANAGER_FILES, GAME_WORK_DIR_NAME, appIdStr, NULL); char * gameWorkDir = g_build_filename(home, MANAGER_FILES, GAME_WORK_DIR_NAME, appIdStr, NULL);
@@ -360,7 +359,8 @@ int unbind(int argc, char ** argv) {
int gameId = getGameIdFromAppId(appid); int gameId = getGameIdFromAppId(appid);
const char * path = g_hash_table_lookup(gamePaths, &gameId); const char * path = g_hash_table_lookup(gamePaths, &gameId);
char * steamGameFolder = g_build_path("/", path, "steamapps/common", GAMES_NAMES[gameId], "Data", NULL); char * steamGameFolder = g_build_path("/", path, "steamapps/common", GAMES_NAMES[gameId], "Data", NULL);
while(umount2(steamGameFolder, MNT_FORCE | MNT_DETACH));
while(umount2(steamGameFolder, MNT_FORCE | MNT_DETACH) == 0);
free(steamGameFolder); free(steamGameFolder);
return EXIT_SUCCESS; return EXIT_SUCCESS;