Переглянути джерело

Android: Fix filesystem initialization when fused.

Miku AuahDark 3 тижнів тому
батько
коміт
6cab1a10fc
1 змінених файлів з 5 додано та 4 видалено
  1. 5 4
      src/modules/filesystem/physfs/Filesystem.cpp

+ 5 - 4
src/modules/filesystem/physfs/Filesystem.cpp

@@ -273,7 +273,6 @@ bool Filesystem::setSource(const char *source)
 
 	PHYSFS_Io *gameLoveIO;
 	bool hasFusedGame = love::android::checkFusedGame((void **) &gameLoveIO);
-	bool isAAssetMounted = false;
 
 	if (hasFusedGame)
 	{
@@ -295,12 +294,12 @@ bool Filesystem::setSource(const char *source)
 			}
 
 			// See love::android::initializeVirtualArchive()
-			new_search_path = "ASET.AASSET";
-			isAAssetMounted = true;
+			gameSource = "ASET.AASSET";
+			return true;
 		}
 	}
 
-	if (!isAAssetMounted)
+	try
 	{
 		// Is this content:// URIs?
 		auto io = (PHYSFS_Io *) love::android::getIOFromContentProtocol(source);
@@ -313,6 +312,8 @@ bool Filesystem::setSource(const char *source)
 
 		io->destroy(io);
 	}
+	catch (const love::Exception &)
+	{}
 #endif
 
 	if (isMounted(new_search_path))