id

237

publisher

goffi@goffi.org/ae22ffd0-a9ec-435e-9073-43eeaf5ce348

title
SàT is frozen if pipe is broken while doing "jp pipe out"
author
goffi
created
30/01/2018, 12:16
updated
11/07/2019, 18:49
labels
jp backend jingle
type
bug
status
closed
priority
normal
milestone
0.7
severity
normal
body

When receiving a stream from a contact, if pipe is broken, the whole backend become frozen.

Steps to reproduce:

- with one profile "toto", receive a pipe to e.g. mpv with:
"jp pipe in -cp toto | mpv -"
- with an other profile "titi", pipe out a movie with:
"jp pipe out -cp titi louise@tazar2.int < movie_stream.webm
- stop the stream immediately, it must not be fully sent to the other size already

expected result: movie is stopped, everything works
actual result: received get this trace:

Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/dbus/connection.py", line 230, in maybe_handle_message
self._handler(args, *kwargs)
File "/home/goffi/dev/lib/sat_frontends/jp/base.py", line 899, in onActionNew
callback(action_data, action_id, security_limit, profile)
File "/home/goffi/dev/lib/sat_frontends/jp/cmd_pipe.py", line 99, in onPipeAction
shutil.copyfileobj(f, sys.stdout)
File "/usr/lib/python2.7/shutil.py", line 66, in copyfileobj
fdst.write(buf)
IOError: [Errno 32] Broken pipe

then everything is frozen in backend, no profile can do anything anymore.

comments_uri
xmpp:pubsub.goffi.org?;node=urn%3Axmpp%3Amicroblog%3A0%3Acomments%2Forg.salut-a-toi.tickets%3A0_oT7awxCQFXSqzbDLHZ9TMS
this problem is not reproducible anymore, closing.

You are not logged. You need to log in to comment.