diff options
author | marcus <marcus@FreeBSD.org> | 2008-07-18 12:35:19 +0800 |
---|---|---|
committer | marcus <marcus@FreeBSD.org> | 2008-07-18 12:35:19 +0800 |
commit | 64a08ef04ee18bff4a030478e79b4b5ee90d1bc9 (patch) | |
tree | e1d0de2083544da7afd9786e62d5b295b0005799 /audio | |
parent | 8d5c0e7b17d6959a2534a651659f92267120e368 (diff) | |
download | freebsd-ports-graphics-64a08ef04ee18bff4a030478e79b4b5ee90d1bc9.tar.gz freebsd-ports-graphics-64a08ef04ee18bff4a030478e79b4b5ee90d1bc9.tar.zst freebsd-ports-graphics-64a08ef04ee18bff4a030478e79b4b5ee90d1bc9.zip |
Fix a potential infinite loop when starting esd from gnome-settings-daemon.
Diffstat (limited to 'audio')
-rw-r--r-- | audio/esound/Makefile | 2 | ||||
-rw-r--r-- | audio/esound/files/patch-ad | 15 |
2 files changed, 13 insertions, 4 deletions
diff --git a/audio/esound/Makefile b/audio/esound/Makefile index 1f8acc589ee..999660b88d1 100644 --- a/audio/esound/Makefile +++ b/audio/esound/Makefile @@ -7,7 +7,7 @@ PORTNAME= esound PORTVERSION= 0.2.39 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= audio MASTER_SITES= ${MASTER_SITE_GNOME} MASTER_SITE_SUBDIR= sources/${PORTNAME}/0.2 diff --git a/audio/esound/files/patch-ad b/audio/esound/files/patch-ad index 3632b7f873e..20eeeab1060 100644 --- a/audio/esound/files/patch-ad +++ b/audio/esound/files/patch-ad @@ -1,5 +1,5 @@ --- esdlib.c.orig 2008-07-15 11:35:15.000000000 -0400 -+++ esdlib.c 2008-07-17 13:46:44.000000000 -0400 ++++ esdlib.c 2008-07-18 00:33:42.000000000 -0400 @@ -21,6 +21,8 @@ #include <errno.h> #include <sys/wait.h> @@ -9,7 +9,16 @@ #include <sys/un.h> -@@ -889,8 +891,7 @@ int esd_open_sound( const char *host ) +@@ -152,6 +154,8 @@ write_timeout (int fd, const char *buf, + + if (n > 0) + nwritten += n; ++ else if (n < 0) ++ break; + } while (nwritten < buflen); + + fcntl (fd, F_SETFL, flags); +@@ -889,8 +893,7 @@ int esd_open_sound( const char *host ) setsid(); cmd = malloc(strlen(SERVERDIR"/esd -spawnfd 999999") + (esd_spawn_options?strlen(esd_spawn_options):0)); @@ -19,7 +28,7 @@ execl("/bin/sh", "/bin/sh", "-c", cmd, NULL); perror("execl"); _exit(1); -@@ -1703,3 +1704,34 @@ int esd_close( int esd ) +@@ -1703,3 +1706,34 @@ int esd_close( int esd ) return close( esd ); } |