From 4a404fd1f411ca80c4c3b5054590bf072854b1ae Mon Sep 17 00:00:00 2001 From: Emanoil Kotsev Date: Tue, 8 Apr 2025 22:05:46 +0000 Subject: [PATCH] Print message about unclassified device only once Signed-off-by: Emanoil Kotsev --- tdecore/tdehw/tdehardwaredevices.cpp | 8 +++++++- tdecore/tdehw/tdehardwaredevices.h | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/tdecore/tdehw/tdehardwaredevices.cpp b/tdecore/tdehw/tdehardwaredevices.cpp index a9e9be9da..2471c8341 100644 --- a/tdecore/tdehw/tdehardwaredevices.cpp +++ b/tdecore/tdehw/tdehardwaredevices.cpp @@ -136,6 +136,7 @@ TDEHardwareDevices::TDEHardwareDevices() { usb_id_map = 0; pnp_id_map = 0; dpy_id_map = 0; + m_unclassifiedDevices = TQStringList(); // Set up device list m_deviceList.setAutoDelete( true ); // the list owns the objects @@ -2419,7 +2420,12 @@ TDEGenericDevice* TDEHardwareDevices::classifyUnknownDevice(udev_device* dev, TD if (device == 0) { // Unhandled if (!device) device = new TDEGenericDevice(TDEGenericDeviceType::Other); - printf("[FIXME] UNCLASSIFIED DEVICE name: %s type: %s subsystem: %s driver: %s [Node Path: %s] [Syspath: %s] [%s:%s]\n", devicename.ascii(), devicetype.ascii(), devicesubsystem.ascii(), devicedriver.ascii(), devicenode.ascii(), udev_device_get_syspath(dev), devicevendorid.ascii(), devicemodelid.ascii()); fflush(stdout); + if (!m_unclassifiedDevices.contains(devicename)) + { + m_unclassifiedDevices.append(devicename); + printf("[FIXME] UNCLASSIFIED DEVICE name: %s type: %s subsystem: %s driver: %s [Node Path: %s] [Syspath: %s] [%s:%s]\n", + devicename.ascii(), devicetype.ascii(), devicesubsystem.ascii(), devicedriver.ascii(), devicenode.ascii(), udev_device_get_syspath(dev), devicevendorid.ascii(), devicemodelid.ascii()); fflush(stdout); + } } // Root devices are special diff --git a/tdecore/tdehw/tdehardwaredevices.h b/tdecore/tdehw/tdehardwaredevices.h index 4e4259dfc..ad3f30c71 100644 --- a/tdecore/tdehw/tdehardwaredevices.h +++ b/tdecore/tdehw/tdehardwaredevices.h @@ -306,6 +306,7 @@ class TDECORE_EXPORT TDEHardwareDevices : public TQObject TDEDeviceIDMap* dpy_id_map; TDECPUDeviceCache m_cpuByPathCache; + TQStringList m_unclassifiedDevices; friend class TDEGenericDevice; friend class TDEStorageDevice;