summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Blechmann <[email protected]>2025-07-06 09:26:19 +0800
committerTim Blechmann <[email protected]>2025-07-08 21:10:38 +0800
commit98b0a3a58daf2c07a0516bdcd3bba7b604dcbd26 (patch)
tree460c3e5c1825bcf92a796f0750f8467ca2dd4dfd
parent0f321e65afeff5d7b548af7c29dc481dd34675ec (diff)
Pipewire: improve handling for rate_pod parse failuresHEADdev
spa_pod_parse_object can apparently return a nullptr without necessarily failing. Fixes: QTBUG-138248 Pick-to: 6.10 Change-Id: I7555b0e8fa92e189158cb6288ed2671dbc1b9224 Reviewed-by: Artem Dyomin <[email protected]>
-rw-r--r--src/multimedia/pipewire/qpipewire_spa_pod_support.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/multimedia/pipewire/qpipewire_spa_pod_support.cpp b/src/multimedia/pipewire/qpipewire_spa_pod_support.cpp
index 560e673ea..a96286a55 100644
--- a/src/multimedia/pipewire/qpipewire_spa_pod_support.cpp
+++ b/src/multimedia/pipewire/qpipewire_spa_pod_support.cpp
@@ -68,6 +68,11 @@ parseSamplingRates(const spa_pod &pod)
if (res < 0)
return std::nullopt;
+ if (!rate_pod) {
+ qWarning() << "parseSamplingRates: parse error" << pod;
+ return std::nullopt;
+ }
+
if (spa_pod_is_choice(rate_pod)) {
switch (SPA_POD_CHOICE_TYPE(rate_pod)) {
case SPA_CHOICE_Range: {