kodi/kodi-21.1-libudev-256.patch

34 lines
1.4 KiB
Diff

From 8a78c59791ba408c3f03e285b68f9afbac2658d8 Mon Sep 17 00:00:00 2001
From: Rudi Heitbaum <rudi@heitbaum.com>
Date: Wed, 12 Jun 2024 21:45:23 +0000
Subject: [PATCH] PeripheralBusUSBLibUdev: fix assert issue with systemd udev
do not call udev_device_get_parent(udev_device_get_parent(dev))
directly as a null return on the parent will cause an assert in
udev_device_get_parent
---
.../platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp b/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp
index aeb5e71d9f..3b649652c3 100644
--- a/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp
+++ b/xbmc/platform/linux/peripherals/PeripheralBusUSBLibUdev.cpp
@@ -108,7 +108,12 @@ bool CPeripheralBusUSB::PerformDeviceScan(PeripheralScanResults &results)
if (bContinue)
{
- dev = udev_device_get_parent(udev_device_get_parent(parent));
+ // do not call udev_device_get_parent(udev_device_get_parent(dev))
+ // directly as a null return on the parent will cause an assert in
+ // udev_device_get_parent
+ dev = udev_device_get_parent(parent);
+ if (dev)
+ dev = udev_device_get_parent(dev);
if (!dev || !udev_device_get_sysattr_value(dev,"idVendor") || !udev_device_get_sysattr_value(dev, "idProduct"))
bContinue = false;
}
--
2.43.0