git: 2bb42eb19eff - main - emulators/dolphin-emu: Fix build with upcoming minizip-ng 4.0.4

From: Ganael LAPLANCHE <martymac_at_FreeBSD.org>
Date: Wed, 14 Feb 2024 15:05:19 UTC
The branch main has been updated by martymac:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2bb42eb19eff8bd5b5b5333f6341dbe3d0a038f3

commit 2bb42eb19eff8bd5b5b5333f6341dbe3d0a038f3
Author:     Ganael LAPLANCHE <martymac@FreeBSD.org>
AuthorDate: 2024-02-14 15:02:31 +0000
Commit:     Ganael LAPLANCHE <martymac@FreeBSD.org>
CommitDate: 2024-02-14 15:02:31 +0000

    emulators/dolphin-emu: Fix build with upcoming minizip-ng 4.0.4
    
    PR:             275303
    Reported by:    lbartoletti
---
 emulators/dolphin-emu/Makefile                     |  2 +-
 ...rce-Core-UICommon-ResourcePack-ResourcePack.cpp | 27 ++++++++++++++++++++++
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/emulators/dolphin-emu/Makefile b/emulators/dolphin-emu/Makefile
index 1f04bf857124..380bcce10f56 100644
--- a/emulators/dolphin-emu/Makefile
+++ b/emulators/dolphin-emu/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	dolphin-emu
 PORTVERSION=	5.0.19870
-PORTREVISION=	3
+PORTREVISION=	4
 CATEGORIES=	emulators
 
 MAINTAINER=	martymac@FreeBSD.org
diff --git a/emulators/dolphin-emu/files/patch-Source-Core-UICommon-ResourcePack-ResourcePack.cpp b/emulators/dolphin-emu/files/patch-Source-Core-UICommon-ResourcePack-ResourcePack.cpp
new file mode 100644
index 000000000000..9fe416ad0830
--- /dev/null
+++ b/emulators/dolphin-emu/files/patch-Source-Core-UICommon-ResourcePack-ResourcePack.cpp
@@ -0,0 +1,27 @@
+Fix build with minizip-ng 4.0.4
+
+Source/Core/UICommon/ResourcePack/ResourcePack.cpp:39:7: error: no matching function for call to 'unzLocateFile'
+(no known conversion from 'std::nullptr_t' to 'unzFileNameCase' (aka 'int') for 3rd argument)
+
+This partially reverts upstream commit a5d06fd.
+
+--- Source/Core/UICommon/ResourcePack/ResourcePack.cpp.orig	2023-07-23 02:24:09 UTC
++++ Source/Core/UICommon/ResourcePack/ResourcePack.cpp
+@@ -36,7 +36,7 @@ ResourcePack::ResourcePack(const std::string& path) : 
+     return;
+   }
+ 
+-  if (unzLocateFile(file, "manifest.json", nullptr) == UNZ_END_OF_LIST_OF_FILE)
++  if (unzLocateFile(file, "manifest.json", 0) == UNZ_END_OF_LIST_OF_FILE)
+   {
+     m_valid = false;
+     m_error = "Resource pack is missing a manifest.";
+@@ -63,7 +63,7 @@ ResourcePack::ResourcePack(const std::string& path) : 
+     return;
+   }
+ 
+-  if (unzLocateFile(file, "logo.png", nullptr) != UNZ_END_OF_LIST_OF_FILE)
++  if (unzLocateFile(file, "logo.png", 0) != UNZ_END_OF_LIST_OF_FILE)
+   {
+     unz_file_info64 logo_info{};
+     unzGetCurrentFileInfo64(file, &logo_info, nullptr, 0, nullptr, 0, nullptr, 0);