git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge commit 'origin/bug_563_fix_backuprestore_crash'
[enigma2.git]
/
lib
/
driver
/
rc.cpp
diff --git
a/lib/driver/rc.cpp
b/lib/driver/rc.cpp
index c56fde448cd396ea72af4be94b4655e368b5e9bb..c1ff13ea7dee30a539a3520935d621b3a180c0d4 100644
(file)
--- a/
lib/driver/rc.cpp
+++ b/
lib/driver/rc.cpp
@@
-129,8
+129,11
@@
void eRCInputEventDriver::setExclusive(bool b)
{
if (handle >= 0)
{
{
if (handle >= 0)
{
+ long evbits;
int grab = b;
int grab = b;
- if (::ioctl(handle, EVIOCGRAB, grab) < 0)
+ if (::ioctl(handle, EVIOCGBIT(0, EV_MAX+1), &evbits) < 0)
+ perror("EVIOCGBIT");
+ else if ((evbits & (1 << 0x1E)) && ::ioctl(handle, EVIOCGRAB, grab) < 0)
perror("EVIOCGRAB");
}
}
perror("EVIOCGRAB");
}
}