[asterisk-commits] file: branch 1.6.0 r112127 - in /branches/1.6.0: ./ include/asterisk/ main/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Apr 1 11:57:16 CDT 2008


Author: file
Date: Tue Apr  1 11:57:16 2008
New Revision: 112127

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

................
r112126 | file | 2008-04-01 13:50:37 -0300 (Tue, 01 Apr 2008) | 13 lines

Merged revisions 112125 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r112125 | file | 2008-04-01 13:45:14 -0300 (Tue, 01 Apr 2008) | 5 lines

Ensure that we do not exceed the hold's maximum size with a single frame.
(closes issue #12047)
Reported by: fabianoheringer
Tested by: fabianoheringer

........

................

Modified:
    branches/1.6.0/   (props changed)
    branches/1.6.0/include/asterisk/slinfactory.h
    branches/1.6.0/main/slinfactory.c

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

Modified: branches/1.6.0/include/asterisk/slinfactory.h
URL: http://svn.digium.com/view/asterisk/branches/1.6.0/include/asterisk/slinfactory.h?view=diff&rev=112127&r1=112126&r2=112127
==============================================================================
--- branches/1.6.0/include/asterisk/slinfactory.h (original)
+++ branches/1.6.0/include/asterisk/slinfactory.h Tue Apr  1 11:57:16 2008
@@ -28,10 +28,12 @@
 extern "C" {
 #endif
 
+#define AST_SLINFACTORY_MAX_HOLD 1280
+
 struct ast_slinfactory {
 	AST_LIST_HEAD_NOLOCK(, ast_frame) queue;
 	struct ast_trans_pvt *trans;
-	short hold[1280];
+	short hold[AST_SLINFACTORY_MAX_HOLD];
 	short *offset;
 	size_t holdlen;			/*!< in samples */
 	unsigned int size;		/*!< in samples */

Modified: branches/1.6.0/main/slinfactory.c
URL: http://svn.digium.com/view/asterisk/branches/1.6.0/main/slinfactory.c?view=diff&rev=112127&r1=112126&r2=112127
==============================================================================
--- branches/1.6.0/main/slinfactory.c (original)
+++ branches/1.6.0/main/slinfactory.c Tue Apr  1 11:57:16 2008
@@ -137,6 +137,9 @@
 				memcpy(offset, frame_data, ineed * sizeof(*offset));
 				sofar += ineed;
 				frame_data += ineed;
+				if (remain > (AST_SLINFACTORY_MAX_HOLD - sf->holdlen)) {
+					remain = AST_SLINFACTORY_MAX_HOLD - sf->holdlen;
+				}
 				memcpy(sf->hold, frame_data, remain * sizeof(*offset));
 				sf->holdlen = remain;
 			}




More information about the asterisk-commits mailing list