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
/
rcconsole.cpp
diff --git
a/lib/driver/rcconsole.cpp
b/lib/driver/rcconsole.cpp
index d3235758ef0deaa4a34b56a0e20082cc39bd1167..eb5aee3db7187cc99cc1c0108fee87f0fb657c38 100644
(file)
--- a/
lib/driver/rcconsole.cpp
+++ b/
lib/driver/rcconsole.cpp
@@
-14,9
+14,8
@@
eRCConsoleDriver::eRCConsoleDriver(const char *filename): eRCDriver(eRCInput::ge
sn=0;
} else
{
sn=0;
} else
{
- sn=
new eSocketNotifier
(eApp, handle, eSocketNotifier::Read);
+ sn=
eSocketNotifier::create
(eApp, handle, eSocketNotifier::Read);
CONNECT(sn->activated, eRCConsoleDriver::keyPressed);
CONNECT(sn->activated, eRCConsoleDriver::keyPressed);
- eRCInput::getInstance()->setFile(handle);
}
/* set console mode */
}
/* set console mode */
@@
-32,8
+31,6
@@
eRCConsoleDriver::~eRCConsoleDriver()
tcsetattr(handle,TCSANOW, &ot);
if (handle>=0)
close(handle);
tcsetattr(handle,TCSANOW, &ot);
if (handle>=0)
close(handle);
- if (sn)
- delete sn;
}
void eRCConsoleDriver::keyPressed(int)
}
void eRCConsoleDriver::keyPressed(int)
@@
-70,8
+67,14
@@
void eRCConsoleDriver::keyPressed(int)
if (code < 32) /* control characters */
code = -1;
if (code < 32) /* control characters */
code = -1;
- if (code == 0x7F) /* delete */
- code = -1;
+ else switch(code)
+ {
+ case 0x7E: // mute, einfg, entf
+ case 0x7F: // backspace
+ code = -1;
+ default:
+ break;
+ }
}
if (code != -1)
}
if (code != -1)
@@
-83,7
+86,7
@@
void eRCConsoleDriver::keyPressed(int)
}
}
}
}
-void eRCConsole::handleCode(
int
code)
+void eRCConsole::handleCode(
long
code)
{
input->keyPressed(eRCKey(this, code, eRCKey::flagAscii));
}
{
input->keyPressed(eRCKey(this, code, eRCKey::flagAscii));
}