diff options
author | Reinhard Nißl <rnissl@gmx.de> | 2008-03-06 20:03:31 +0100 |
---|---|---|
committer | Reinhard Nißl <rnissl@gmx.de> | 2008-03-06 20:03:31 +0100 |
commit | 118e60d2017ea780f68b959718f7fea1f829ab9b (patch) | |
tree | ff6cff9523c64a53af85f7b9260367cd5521481d | |
parent | b9e884f6c43dce82fd80284675a56f42731881d4 (diff) | |
download | xine-lib-118e60d2017ea780f68b959718f7fea1f829ab9b.tar.gz xine-lib-118e60d2017ea780f68b959718f7fea1f829ab9b.tar.bz2 |
Fix deadlock in sync point code caused by initial handshake byte.
--HG--
extra : transplant_source : %09%A1%828%A2%19P%09%A0%D7%83%DB.%B3%D2%13%26%7D%10%DC
-rw-r--r-- | src/vdr/input_vdr.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/vdr/input_vdr.c b/src/vdr/input_vdr.c index 48cc74aed..ade2ecfa1 100644 --- a/src/vdr/input_vdr.c +++ b/src/vdr/input_vdr.c @@ -1652,6 +1652,12 @@ static int vdr_plugin_open_fifo_mrl(input_plugin_t *this_gen) fcntl(this->fh, F_SETFL, ~O_NONBLOCK & fcntl(this->fh, F_GETFL, 0)); + /* eat initial handshake byte */ + { + char b; + read(this->fh, &b, 1); + } + { char *filename_control = 0; asprintf(&filename_control, "%s.control", filename); |