ports/133354: [PATCH] audio/openal: fix segfault in some cases

Dmitry Marakasov amdmi3 at amdmi3.ru
Sat Apr 4 01:10:03 UTC 2009


>Number:         133354
>Category:       ports
>Synopsis:       [PATCH] audio/openal: fix segfault in some cases
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Apr 04 01:10:01 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Dmitry Marakasov
>Release:        FreeBSD 8.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD hades.panopticon 8.0-CURRENT FreeBSD 8.0-CURRENT #0: Sat Mar 21 18:50:30 MSK 2009
>Description:
When _alFloatMul is called on a very small buffer consisting of <= 2 samples, buffer length will be calculated incorrectly (512MB), which will lead to segfault. The patch fixes this and also improves performance a tiny bit (when buffer is aligned, first 4 samples will now be processed with mmx as they should).

Added file(s):
- files/patch-src-arch-i386-x86_floatmul.c

Port maintainer (erik at smluc.org) is cc'd.

Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
>Fix:

--- openal-20060211_9.patch begins here ---
Index: Makefile
===================================================================
RCS file: /home/amdmi3/projects/freebsd/FreeBSD.cvs/ports/audio/openal/Makefile,v
retrieving revision 1.51
diff -u -u -r1.51 Makefile
--- Makefile	17 Mar 2009 00:32:41 -0000	1.51
+++ Makefile	4 Apr 2009 00:55:08 -0000
@@ -7,7 +7,7 @@
 
 PORTNAME=	openal
 PORTVERSION=	20060211
-PORTREVISION=	8
+PORTREVISION=	9
 CATEGORIES=	audio
 MASTER_SITES=	http://openal.org/openal_webstf/downloads/
 DISTVERSION=	0.0.8
Index: files/patch-src-arch-i386-x86_floatmul.c
===================================================================
RCS file: files/patch-src-arch-i386-x86_floatmul.c
diff -N files/patch-src-arch-i386-x86_floatmul.c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-src-arch-i386-x86_floatmul.c	4 Apr 2009 00:53:56 -0000
@@ -0,0 +1,11 @@
+--- src/arch/i386/x86_floatmul.c.orig	2005-12-21 22:06:35.000000000 +0300
++++ src/arch/i386/x86_floatmul.c	2009-04-04 04:53:56.000000000 +0400
+@@ -46,7 +46,7 @@
+ 		v4hi temp;
+ 		
+ 		
+-		samples_pre = MMX_ALIGN - (aint)bpt % MMX_ALIGN;
++		samples_pre = (MMX_ALIGN - (aint)bpt % MMX_ALIGN) % MMX_ALIGN;
+ 		samples_pre /= sizeof(ALshort);
+ 		samples_main = len - samples_pre;
+ 		samples_post = samples_main % 8;
--- openal-20060211_9.patch ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list