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