Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 00430e5f64 | |||
| 1ded3b11d2 | |||
| bf21ada8c7 | |||
| e68e140ef0 | |||
| 02a2149c1f |
+1
-1
@@ -1,4 +1,4 @@
|
||||
m4_define([pkg_version], [0.10])
|
||||
m4_define([pkg_version], [0.11])
|
||||
#m4_define([pkg_revision], [005])
|
||||
m4_define([pkg_version], m4_ifdef([pkg_revision], [pkg_version.pkg_revision], [pkg_version]))
|
||||
|
||||
|
||||
@@ -99,9 +99,12 @@ _PRF2_ static void _log(int prio, const char *fmt, ...)
|
||||
#define DBG2(...) \
|
||||
if (ttynvt_param.debug > 1) _log(LOG_DEBUG, __VA_ARGS__)
|
||||
|
||||
static volatile char _is_interrupted = 0;
|
||||
|
||||
static void sig_handler(int sig)
|
||||
{
|
||||
DBG("Interruped, signal = %d\n", sig);
|
||||
_is_interrupted = 1;
|
||||
}
|
||||
|
||||
static void set_signal_handler(void)
|
||||
@@ -489,7 +492,9 @@ ttynvt_read(fuse_req_t req, size_t size, off_t off,
|
||||
size = TMP_BUF_SIZE;
|
||||
|
||||
fuse_req_interrupt_func(req, ttynvt_interrupted, (void *)pthread_self());
|
||||
res = read(tty->fds[FD_SLAVE].fd, tty->tmp_buf, size);
|
||||
res =
|
||||
_is_interrupted ? -2 : read(tty->fds[FD_SLAVE].fd, tty->tmp_buf, size);
|
||||
_is_interrupted = 0;
|
||||
fuse_req_interrupt_func(req, NULL, NULL);
|
||||
if (res < 0)
|
||||
{
|
||||
@@ -903,8 +908,12 @@ ttynvt_poll(fuse_req_t req, struct fuse_file_info *info,
|
||||
|
||||
static const struct cuse_lowlevel_ops ttynvt_op = {
|
||||
.init = ttynvt_init,
|
||||
.open = ttynvt_open,.read = ttynvt_read,.write = ttynvt_write,.ioctl =
|
||||
ttynvt_ioctl,.poll = ttynvt_poll,.release = ttynvt_release,
|
||||
.open = ttynvt_open,
|
||||
.read = ttynvt_read,
|
||||
.write = ttynvt_write,
|
||||
.ioctl = ttynvt_ioctl,
|
||||
.poll = ttynvt_poll,
|
||||
.release = ttynvt_release,
|
||||
};
|
||||
|
||||
#define TTYNET_OPT(t, p, v) { t, offsetof(struct ttynvt_param, p), v }
|
||||
|
||||
Reference in New Issue
Block a user