git: 7e1461db3aab - 2024Q3 - games/moonlight-qt: Build fails on i386: cannot initialize a member subobject of type 'VkSurfaceKHR' (aka 'unsigned long long') with an rvalue of type 'std::nullptr_t'

From: Vladimir Druzenko <vvd_at_FreeBSD.org>
Date: Wed, 24 Jul 2024 16:30:16 UTC
The branch 2024Q3 has been updated by vvd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7e1461db3aab17a5855da003d577cac0fc089d1d

commit 7e1461db3aab17a5855da003d577cac0fc089d1d
Author:     Armin Zhu <lisp_25689@163.com>
AuthorDate: 2024-07-24 16:24:24 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2024-07-24 16:30:08 +0000

    games/moonlight-qt: Build fails on i386: cannot initialize a member subobject of type 'VkSurfaceKHR' (aka 'unsigned long long') with an rvalue of type 'std::nullptr_t'
    
    In file included from /wrkdirs/usr/ports/games/moonlight-qt/work/moonlight-qt-6.0.1/app/streaming/video/ffmpeg.cpp:48:
    /wrkdirs/usr/ports/games/moonlight-qt/work/moonlight-qt-6.0.1/app/streaming/video/ffmpeg-renderers/plvk.h:57:32: error: cannot initialize a member subobject of type 'VkSurfaceKHR' (aka 'unsigned long long') with an rvalue of type 'std::nullptr_t'
       57 |     VkSurfaceKHR m_VkSurface = nullptr;
          |                                ^~~~~~~
    
    Upstream bug-report:
    https://github.com/moonlight-stream/moonlight-qt/issues/1367
    
    PR:     280425
    MFH:    2024Q3
    (cherry picked from commit 54b259414cb8dc56bacff02399b3668bf1d03f9b)
---
 .../patch-app_streaming_video_ffmpeg-renderers_plvk.h      | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/games/moonlight-qt/files/patch-app_streaming_video_ffmpeg-renderers_plvk.h b/games/moonlight-qt/files/patch-app_streaming_video_ffmpeg-renderers_plvk.h
new file mode 100644
index 000000000000..60440d150c4a
--- /dev/null
+++ b/games/moonlight-qt/files/patch-app_streaming_video_ffmpeg-renderers_plvk.h
@@ -0,0 +1,14 @@
+--- app/streaming/video/ffmpeg-renderers/plvk.h.orig	2024-07-23 05:26:28 UTC
++++ app/streaming/video/ffmpeg-renderers/plvk.h
+@@ -54,7 +54,11 @@ class PlVkRenderer : public IFFmpegRenderer { (private
+     // The libplacebo rendering state
+     pl_log m_Log = nullptr;
+     pl_vk_inst m_PlVkInstance = nullptr;
++#if VK_USE_64_BIT_PTR_DEFINES == 1
+     VkSurfaceKHR m_VkSurface = nullptr;
++#else
++    VkSurfaceKHR m_VkSurface = 0;
++#endif
+     pl_vulkan m_Vulkan = nullptr;
+     pl_swapchain m_Swapchain = nullptr;
+     pl_renderer m_Renderer = nullptr;