devel/electron{32,33,34}: fix build with pipewire 1.4

Reported by:	pkg-fallout
Obtained from:	https://cgit.freebsd.org/ports/tree/www/chromium/files/patch-third__party_webrtc_modules_video__capture_linux_pipewire__session.cc
This commit is contained in:
Hiroki Tagato 2025-03-25 06:41:18 +09:00
parent 2ac0a98e0c
commit 95c55b7611
3 changed files with 60 additions and 0 deletions

View file

@ -0,0 +1,20 @@
--- third_party/webrtc/modules/video_capture/linux/pipewire_session.cc.orig 2024-10-18 12:43:44 UTC
+++ third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
@@ -72,7 +72,7 @@ PipeWireNode::PipeWireNode(PipeWireSession* session,
.param = OnNodeParam,
};
- pw_node_add_listener(proxy_, &node_listener_, &node_events, this);
+ pw_node_add_listener(reinterpret_cast<pw_node*>(proxy_), &node_listener_, &node_events, this);
}
PipeWireNode::~PipeWireNode() {
@@ -107,7 +107,7 @@ void PipeWireNode::OnNodeInfo(void* data, const pw_nod
uint32_t id = info->params[i].id;
if (id == SPA_PARAM_EnumFormat &&
info->params[i].flags & SPA_PARAM_INFO_READ) {
- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
+ pw_node_enum_params(reinterpret_cast<pw_node*>(that->proxy_), 0, id, 0, UINT32_MAX, nullptr);
break;
}
}

View file

@ -0,0 +1,20 @@
--- third_party/webrtc/modules/video_capture/linux/pipewire_session.cc.orig 2025-01-06 14:31:29 UTC
+++ third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
@@ -85,7 +85,7 @@ PipeWireNode::PipeWireNode(PipeWireSession* session,
.param = OnNodeParam,
};
- pw_node_add_listener(proxy_, &node_listener_, &node_events, this);
+ pw_node_add_listener(reinterpret_cast<pw_node*>(proxy_), &node_listener_, &node_events, this);
}
// static
@@ -117,7 +117,7 @@ void PipeWireNode::OnNodeInfo(void* data, const pw_nod
uint32_t id = info->params[i].id;
if (id == SPA_PARAM_EnumFormat &&
info->params[i].flags & SPA_PARAM_INFO_READ) {
- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
+ pw_node_enum_params(reinterpret_cast<pw_node*>(that->proxy_), 0, id, 0, UINT32_MAX, nullptr);
break;
}
}

View file

@ -0,0 +1,20 @@
--- third_party/webrtc/modules/video_capture/linux/pipewire_session.cc.orig 2025-02-24 19:59:26 UTC
+++ third_party/webrtc/modules/video_capture/linux/pipewire_session.cc
@@ -87,7 +87,7 @@ PipeWireNode::PipeWireNode(PipeWireSession* session,
.param = OnNodeParam,
};
- pw_node_add_listener(proxy_, &node_listener_, &node_events, this);
+ pw_node_add_listener(reinterpret_cast<pw_node*>(proxy_), &node_listener_, &node_events, this);
}
// static
@@ -119,7 +119,7 @@ void PipeWireNode::OnNodeInfo(void* data, const pw_nod
uint32_t id = info->params[i].id;
if (id == SPA_PARAM_EnumFormat &&
info->params[i].flags & SPA_PARAM_INFO_READ) {
- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr);
+ pw_node_enum_params(reinterpret_cast<pw_node*>(that->proxy_), 0, id, 0, UINT32_MAX, nullptr);
break;
}
}