--- a/media/webrtc/trunk/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +++ b/media/webrtc/trunk/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc @@ -42,7 +42,7 @@ const char kRequestInterfaceName[] = "org.freedesktop.portal.Request"; const char kScreenCastInterfaceName[] = "org.freedesktop.portal.ScreenCast"; -static void BaseCapturerPipeWire::SyncDmaBuf(int fd, uint64_t start_or_end) { +void BaseCapturerPipeWire::SyncDmaBuf(int fd, uint64_t start_or_end) { struct dma_buf_sync sync = { 0 }; sync.flags = start_or_end | DMA_BUF_SYNC_READ; @@ -386,21 +386,23 @@ void BaseCapturerPipeWire::HandleBuffer(pw_buffer* buffer) { map = nullptr; src = nullptr; } else if (spaBuffer->datas[0].type == pw_core_type_->data.MemFd) { - map = mmap(nullptr, spaBuffer->datas[0].maxsize + spaBuffer->datas[0].mapoffset, - PROT_READ, MAP_PRIVATE, spaBuffer->datas[0].fd, 0); + map = static_cast( + mmap(nullptr, spaBuffer->datas[0].maxsize + spaBuffer->datas[0].mapoffset, + PROT_READ, MAP_PRIVATE, spaBuffer->datas[0].fd, 0)); src = SPA_MEMBER(map, spaBuffer->datas[0].mapoffset, uint8_t); } else if (spaBuffer->datas[0].type == pw_core_type_->data.DmaBuf) { int fd; fd = spaBuffer->datas[0].fd; - map = mmap (nullptr, spaBuffer->datas[0].maxsize + spaBuffer->datas[0].mapoffset, - PROT_READ, MAP_PRIVATE, fd, 0); + map = static_cast( + mmap (nullptr, spaBuffer->datas[0].maxsize + spaBuffer->datas[0].mapoffset, + PROT_READ, MAP_PRIVATE, fd, 0)); SyncDmaBuf(fd, DMA_BUF_SYNC_START); src = SPA_MEMBER (map, spaBuffer->datas[0].mapoffset, uint8_t); } else if (spaBuffer->datas[0].type == pw_core_type_->data.MemPtr) { map = nullptr; - src = spaBuffer->datas[0].data; + src = static_cast(spaBuffer->datas[0].data); } else { return; }