kcontrol/usview: fix up "Revive NetBSD support"

Signed-off-by: OBATA Akio <obache@wizdas.com>
pull/251/head
OBATA Akio 2 years ago
parent 2a0d89056a
commit 5a573b7c95

@ -76,7 +76,7 @@ if( BUILD_KCONTROL )
add_subdirectory( joystick ) add_subdirectory( joystick )
endif( ) endif( )
if( ${CMAKE_SYSTEM_NAME} MATCHES "Linux|FreeBSD" ) if( ${CMAKE_SYSTEM_NAME} MATCHES "Linux|FreeBSD|NetBSD" )
add_subdirectory( usbview ) add_subdirectory( usbview )
endif( ) endif( )

@ -30,6 +30,7 @@
#if defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD) #if defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
#include <sys/ioctl.h> #include <sys/ioctl.h>
#include <sys/param.h> #include <sys/param.h>
#include <errno.h>
#endif #endif
TQPtrList<USBDevice> USBDevice::_devices; TQPtrList<USBDevice> USBDevice::_devices;
@ -329,7 +330,7 @@ bool USBDevice::parseSys(TQString dname)
void USBDevice::collectData(struct libusb20_backend *pbe, void USBDevice::collectData(struct libusb20_backend *pbe,
struct libusb20_device *pdev) struct libusb20_device *pdev)
#else #else
void USBDevice::collectData( int fd, int leve, usb_device_info &di, int parent) void USBDevice::collectData( int fd, int level, usb_device_info &di, int parent)
#endif #endif
{ {
#ifdef Q_OS_FREEBSD #ifdef Q_OS_FREEBSD
@ -412,7 +413,7 @@ void USBDevice::collectData( int fd, int leve, usb_device_info &di, int parent)
continue; continue;
// Only add the device if we don't detect it, yet // Only add the device if we don't detect it, yet
if (!find( di2.udi_us, di2.udi_addr ) ) if (!find( di2.udi_bus, di2.udi_addr ) )
{ {
USBDevice *device = new USBDevice(); USBDevice *device = new USBDevice();
device->collectData( fd, level + 1, di2, di.udi_addr ); device->collectData( fd, level + 1, di2, di.udi_addr );
@ -447,7 +448,7 @@ bool USBDevice::parse(TQString fname)
libusb20_be_free(pbe); libusb20_be_free(pbe);
#else #else
TQFile controller("?dev/usb0"); TQFile controller("/dev/usb0");
int i = 1; int i = 1;
while ( controller.exists() ) while ( controller.exists() )
{ {
@ -459,7 +460,7 @@ bool USBDevice::parse(TQString fname)
struct usb_device_info di; struct usb_device_info di;
di.udi_addr = addr; di.udi_addr = addr;
if ( ioctl(controller.handle(), USB_DEVICEINFO, &d1) != -1) if ( ioctl(controller.handle(), USB_DEVICEINFO, &di) != -1)
{ {
if (!find( di.udi_bus, di.udi_addr) ) if (!find( di.udi_bus, di.udi_addr) )
{ {
@ -469,16 +470,16 @@ bool USBDevice::parse(TQString fname)
} }
} }
controller.close(); controller.close();
#ifndef Q_OS_NETBSD
} else { } else {
error = true; if ( errno != ENXIO) {
#endif error = true;
}
} }
controller.setName( TQString::formLocal8Bit("/dev/usb%1".arg(i++) ); controller.setName( TQString::fromLocal8Bit("/dev/usb%1").arg(i++) );
} }
if ( showErrorMessage && error ) { if ( showErrorMessage && error ) {
showErroeMessage = false; showErrorMessage = false;
KMessageBox::error( 0, i18n("Could not open one or more USB controller. Make sure you have read access to all USB controllers that should be listed here.")); KMessageBox::error( 0, i18n("Could not open one or more USB controller. Make sure you have read access to all USB controllers that should be listed here."));
} }
#endif #endif

@ -70,7 +70,12 @@ private:
unsigned int _vendorID, _prodID, _revMajor, _revMinor; unsigned int _vendorID, _prodID, _revMajor, _revMinor;
#if defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD) #if defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
#if defined(Q_OS_FREEBSD)
void collectData(struct libusb20_backend *, struct libusb20_device *); void collectData(struct libusb20_backend *, struct libusb20_device *);
#endif
#if defined(Q_OS_NETBSD)
void collectData( int fd, int level, usb_device_info &di, int parent);
#endif
TQStringList _devnodes; TQStringList _devnodes;
#endif #endif
}; };

Loading…
Cancel
Save