From: Thomas Guillem Date: Tue, 14 Dec 2010 23:03:05 +0000 (+0000) Subject: tcp: Check url_interrupt_cb if connect was interrupted by a signal X-Git-Tag: v0.7b1~1337 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1aa58c6405dad2663257260b993791f43c0da76b;p=platform%2Fupstream%2Flibav.git tcp: Check url_interrupt_cb if connect was interrupted by a signal This makes it possible to abort a blocking connect call. Patch by Thomas Guillem, thomas dot guillem at gmail Originally committed as revision 26014 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavformat/tcp.c b/libavformat/tcp.c index 4ab64e4..14b5e19 100644 --- a/libavformat/tcp.c +++ b/libavformat/tcp.c @@ -73,8 +73,11 @@ static int tcp_open(URLContext *h, const char *uri, int flags) redo: ret = connect(fd, cur_ai->ai_addr, cur_ai->ai_addrlen); if (ret < 0) { - if (ff_neterrno() == FF_NETERROR(EINTR)) + if (ff_neterrno() == FF_NETERROR(EINTR)) { + if (url_interrupt_cb()) + goto fail1; goto redo; + } if (ff_neterrno() != FF_NETERROR(EINPROGRESS) && ff_neterrno() != FF_NETERROR(EAGAIN)) goto fail;