GNOME Bugzilla – Bug 694246
gsttcp.c drop tcpconnection on EINTR
Last modified: 2014-10-09 15:07:45 UTC
Created attachment 236901 [details] [review] restart gst_poll_wait() when errno==EINTR Hi, we are using the tcpclientsrc to connect a local loopback tcp port. Its an embedded system armv7 - we discover a problem that the gsttcp.c :270 set the gst_poll_wait() and return with error if a Interupted System Call happen. errno = EINTR. At this point the EINTR is not to handle as an error. Its safe to retry setup the gst_poll_wait() again. Please review attached patch which works great with our project! regards Chris
This patch does not apply to GIT master (which was ported from plain sockets to GSocket). Could you update your patch (if it's still relevant) and also attach it in "git format-patch" format?
I patched against the code in my OE (open embedded) build-root which using the tar-archives loaded from the http://host/src/.. I must finish some work, and if done I will git-clone the master and provide you a patch ( if needed after the move to GSocket ) regards Chris
Thanks Chris. Setting to NEEDINFO for update on if it still applies to git master, and new patch.
Chris, ping
Tobias, pong. Sorry, very busy at the moment. But its important to us to know if the upstream has same problem. Please give me some time. Chris Ruehl
Ping?
Let's just close it for now. Chris, please re-open or file a new bug if you find this still to be a problem with recent 1.x versions, thanks!
GIO GSocket deals with the EINTR errno in all cases and we use GSocket now, it seems to actually be obsolete.