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

Reply via email to