forked from MeloNX/MeloNX
Null pointer fix
This commit is contained in:
parent
4ffb0ff617
commit
27312d4f31
@ -227,8 +227,9 @@ class Ryujinx {
|
|||||||
|
|
||||||
let gameInfo = get_game_info(handle.fileDescriptor, extensionPtr)
|
let gameInfo = get_game_info(handle.fileDescriptor, extensionPtr)
|
||||||
|
|
||||||
let game = Game.convertGameInfoToGame(gameInfo: gameInfo, url: fileURLCandidate)
|
guard let game = Game.convertGameInfoToGame(gameInfo: gameInfo, url: fileURLCandidate)
|
||||||
|
else { continue }
|
||||||
|
|
||||||
games.append(game)
|
games.append(game)
|
||||||
} catch {
|
} catch {
|
||||||
print(error)
|
print(error)
|
||||||
|
@ -22,10 +22,12 @@ public struct Game: Identifiable, Equatable, Hashable {
|
|||||||
var icon: UIImage?
|
var icon: UIImage?
|
||||||
|
|
||||||
|
|
||||||
static func convertGameInfoToGame(gameInfo: GameInfo, url: URL) -> Game {
|
static func convertGameInfoToGame(gameInfo: GameInfo, url: URL) -> Game? {
|
||||||
|
guard gameInfo.FileSize != 0 else { return nil }
|
||||||
|
|
||||||
var gameInfo = gameInfo
|
var gameInfo = gameInfo
|
||||||
var gameTemp = Game(containerFolder: url.deletingLastPathComponent(), fileType: .item, fileURL: url, titleName: "", titleId: "", developer: "", version: "")
|
var gameTemp = Game(containerFolder: url.deletingLastPathComponent(), fileType: .item, fileURL: url, titleName: "", titleId: "", developer: "", version: "")
|
||||||
|
|
||||||
gameTemp.titleName = withUnsafePointer(to: &gameInfo.TitleName) {
|
gameTemp.titleName = withUnsafePointer(to: &gameInfo.TitleName) {
|
||||||
$0.withMemoryRebound(to: UInt8.self, capacity: MemoryLayout.size(ofValue: $0)) {
|
$0.withMemoryRebound(to: UInt8.self, capacity: MemoryLayout.size(ofValue: $0)) {
|
||||||
String(cString: $0)
|
String(cString: $0)
|
||||||
|
@ -321,6 +321,9 @@ namespace Ryujinx.Headless.SDL2
|
|||||||
var stream = OpenFile(descriptor);
|
var stream = OpenFile(descriptor);
|
||||||
|
|
||||||
var gameInfo = GetGameInfo(stream, extension);
|
var gameInfo = GetGameInfo(stream, extension);
|
||||||
|
if (gameInfo == null) {
|
||||||
|
return new GameInfoNative(0, "", "", "", "", new byte[0]);
|
||||||
|
}
|
||||||
|
|
||||||
return new GameInfoNative(
|
return new GameInfoNative(
|
||||||
(ulong)gameInfo.FileSize,
|
(ulong)gameInfo.FileSize,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user