[asterisk-commits] mmichelson: branch 1.6.1 r176257 - in /branches/1.6.1: ./ apps/app_meetme.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Feb 16 15:50:31 CST 2009


Author: mmichelson
Date: Mon Feb 16 15:50:31 2009
New Revision: 176257

URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=176257
Log:
Merged revisions 176253 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
  r176253 | mmichelson | 2009-02-16 15:40:40 -0600 (Mon, 16 Feb 2009) | 24 lines
  
  Merged revisions 176249,176252 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r176249 | mmichelson | 2009-02-16 15:34:27 -0600 (Mon, 16 Feb 2009) | 14 lines
    
    Open the DAHDI pseudo device and set it to be nonblocking atomically
    
    Apparently on FreeBSD, attempting to set the O_NONBLOCKING flag separately
    from opening the file was causing an "inappropriate ioctl for device" error.
    While I cannot fathom why this would be happening, I certainly am not opposed
    to making the code a bit more compact/efficient if it also fixes a bug.
    
    (closes issue #14482)
    Reported by: ys
    Patches:
          meetme.patch uploaded by ys (license 281)
    Tested by: ys
  ........
    r176252 | mmichelson | 2009-02-16 15:39:21 -0600 (Mon, 16 Feb 2009) | 3 lines
    
    Remove unused variable and make dev-mode compilation happy
  ........
................

Modified:
    branches/1.6.1/   (props changed)
    branches/1.6.1/apps/app_meetme.c

Propchange: branches/1.6.1/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.

Modified: branches/1.6.1/apps/app_meetme.c
URL: http://svn.digium.com/svn-view/asterisk/branches/1.6.1/apps/app_meetme.c?view=diff&rev=176257&r1=176256&r2=176257
==============================================================================
--- branches/1.6.1/apps/app_meetme.c (original)
+++ branches/1.6.1/apps/app_meetme.c Mon Feb 16 15:50:31 2009
@@ -1639,7 +1639,6 @@
 	int ms;
 	int nfds;
 	int res;
-	int flags;
 	int retrydahdi;
 	int origfd;
 	int musiconhold = 0;
@@ -1998,24 +1997,13 @@
  dahdiretry:
 	origfd = chan->fds[0];
 	if (retrydahdi) {
-		fd = open("/dev/dahdi/pseudo", O_RDWR);
+		/* open pseudo in non-blocking mode */
+		fd = open("/dev/dahdi/pseudo", O_RDWR | O_NONBLOCK);
 		if (fd < 0) {
 			ast_log(LOG_WARNING, "Unable to open pseudo channel: %s\n", strerror(errno));
 			goto outrun;
 		}
 		using_pseudo = 1;
-		/* Make non-blocking */
-		flags = fcntl(fd, F_GETFL);
-		if (flags < 0) {
-			ast_log(LOG_WARNING, "Unable to get flags: %s\n", strerror(errno));
-			close(fd);
-			goto outrun;
-		}
-		if (fcntl(fd, F_SETFL, flags | O_NONBLOCK)) {
-			ast_log(LOG_WARNING, "Unable to set flags: %s\n", strerror(errno));
-			close(fd);
-			goto outrun;
-		}
 		/* Setup buffering information */
 		memset(&bi, 0, sizeof(bi));
 		bi.bufsize = CONF_SIZE / 2;




More information about the asterisk-commits mailing list