Hi, the subject says all.
regards. Haithem. -- * "If you ask a question - you will be a fool for 5 minutes, otherwise ignorant for rest of your life" *
diff --git a/inputdrivers/lirc/lirc.c b/inputdrivers/lirc/lirc.c index edb6957..8eeb889 100644 --- a/inputdrivers/lirc/lirc.c +++ b/inputdrivers/lirc/lirc.c @@ -242,8 +242,15 @@ driver_get_available( void ) return 0; if (connect( fd, (struct sockaddr*)&addr, sizeof(addr) ) < 0) { - close( fd ); - return 0; + /* + * for LIRC version >= 0.8.6 the Unix socket is no more created + * under /dev/lircd but under /var/run/lirc/lircd + */ + direct_snputs( addr.sun_path, "/var/run/lirc/lircd", sizeof(addr.sun_path) ); + if (connect( fd, (struct sockaddr*)&addr, sizeof(addr) ) < 0) { + close( fd ); + return 0; + } } close( fd ); @@ -287,9 +294,16 @@ driver_open_device( CoreInputDevice *device, /* initiate connection */ if (connect( fd, (struct sockaddr*)&sa, sizeof(sa) ) < 0) { - D_PERROR( "DirectFB/LIRC: connect" ); - close( fd ); - return DFB_INIT; + /* + * trying the "/var/run/lirc/lircd" + */ + direct_snputs( sa.sun_path, "/var/run/lirc/lircd", sizeof(sa.sun_path) ); + + if (connect( fd, (struct sockaddr*)&sa, sizeof(sa) ) < 0) { + D_PERROR( "DirectFB/LIRC: connect" ); + close( fd ); + return DFB_INIT; + } } /* fill driver info structure */
_______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev