ports/171616: commit references a PR
dfilter service
dfilter at FreeBSD.ORG
Sat Dec 29 05:40:01 UTC 2012
The following reply was made to PR ports/171616; it has been noted by GNATS.
From: dfilter at FreeBSD.ORG (dfilter service)
To: bug-followup at FreeBSD.org
Cc:
Subject: Re: ports/171616: commit references a PR
Date: Sat, 29 Dec 2012 05:39:31 +0000 (UTC)
Author: mezz
Date: Sat Dec 29 05:39:23 2012
New Revision: 309607
URL: http://svnweb.freebsd.org/changeset/ports/309607
Log:
The libesd use hardcoded socket-io timeout = 100ms. This is too small for
slow WIFI connections and sound servers on Windows. It has been solved by
the Debian team. Patch was created by Konstantin Khlebnikov. Bump the
PORTREVISION.
PR: ports/171616
Submitted by: Gabor Fischer <Gabor.Fischer at gmx.net>
Obtained from: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=637064
Added:
head/audio/esound/files/patch-esound-increase-timeouts (contents, props changed)
Modified:
head/audio/esound/Makefile (contents, props changed)
Modified: head/audio/esound/Makefile
==============================================================================
--- head/audio/esound/Makefile Sat Dec 29 05:29:56 2012 (r309606)
+++ head/audio/esound/Makefile Sat Dec 29 05:39:23 2012 (r309607)
@@ -8,6 +8,7 @@
PORTNAME= esound
PORTVERSION= 0.2.41
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= GNOME
DIST_SUBDIR= gnome
Added: head/audio/esound/files/patch-esound-increase-timeouts
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/audio/esound/files/patch-esound-increase-timeouts Sat Dec 29 05:39:23 2012 (r309607)
@@ -0,0 +1,62 @@
+libesd cannot connect to server if it work on slow hardware and/or on windows due to
+extremely small default read/write timeout = 100ms This patch increases them up to 300ms.
+
+--- esdlib.c.org 2008-11-18 23:35:19.000000000 +0300
++++ esdlib.c 2011-04-29 21:58:56.698001331 +0400
+@@ -30,6 +30,11 @@
+ + strlen ((ptr)->sun_path))
+ #endif
+
++#define TCP_CONNECT_TIMEOUT 1000
++#define UNIX_CONNECT_TIMEOUT 100
++#define SOCKET_READ_TIMEOUT 300
++#define SOCKET_WRITE_TIMEOUT 300
++
+ /*******************************************************************/
+ /* prototypes */
+ int esd_set_socket_buffers( int sock, int src_format,
+@@ -89,7 +94,7 @@
+
+ do {
+ pfd[0].revents = 0;
+- rv = poll (pfd, 1, 100);
++ rv = poll (pfd, 1, SOCKET_READ_TIMEOUT);
+ } while (rv == -1 && (errno == EINTR || errno == EAGAIN));
+
+ if (rv < 1 || !(pfd[0].revents & POLLIN)) {
+@@ -137,7 +142,7 @@
+
+ do {
+ pfd[0].revents = 0;
+- rv = poll (pfd, 1, 100);
++ rv = poll (pfd, 1, SOCKET_WRITE_TIMEOUT);
+ } while (rv == -1 && (errno == EINTR || errno == EAGAIN));
+
+ if (rv < 1 || (pfd[0].revents & (POLLERR | POLLHUP | POLLOUT)) != POLLOUT) {
+@@ -641,7 +646,7 @@
+ goto error_out;
+ }
+
+- if ( connect_timeout ( socket_out, res->ai_addr, res->ai_addrlen, 1000 ) != -1 )
++ if ( connect_timeout ( socket_out, res->ai_addr, res->ai_addrlen, TCP_CONNECT_TIMEOUT ) != -1 )
+ break;
+
+ close ( socket_out );
+@@ -727,7 +732,7 @@
+
+ if ( connect_timeout ( socket_out,
+ (struct sockaddr *) &socket_addr,
+- sizeof(struct sockaddr_in), 1000 ) < 0 )
++ sizeof(struct sockaddr_in), TCP_CONNECT_TIMEOUT ) < 0 )
+ goto error_out;
+
+ }
+@@ -779,7 +784,7 @@
+ socket_unix.sun_family = AF_UNIX;
+ strncpy(socket_unix.sun_path, ESD_UNIX_SOCKET_NAME, sizeof(socket_unix.sun_path));
+
+- if ( connect_timeout ( socket_out, (struct sockaddr *) &socket_unix, SUN_LEN(&socket_unix), 100 ) < 0 )
++ if ( connect_timeout ( socket_out, (struct sockaddr *) &socket_unix, SUN_LEN(&socket_unix), UNIX_CONNECT_TIMEOUT ) < 0 )
+ goto error_out;
+
+ return socket_out;
_______________________________________________
svn-ports-all at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe at freebsd.org"
More information about the freebsd-gnome
mailing list