summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSeemant Kulleen <seemant@gentoo.org>2006-03-31 22:01:16 +0000
committerSeemant Kulleen <seemant@gentoo.org>2006-03-31 22:01:16 +0000
commit87d906d3509ff45a5557bed417929cd40c4ff8ad (patch)
tree3e1037aea799be1b10859e6d8b2fb6b314691e7e /media-libs/plib/files
parentChanged nostrip to strip. (diff)
downloadgentoo-2-87d906d3509ff45a5557bed417929cd40c4ff8ad.tar.gz
gentoo-2-87d906d3509ff45a5557bed417929cd40c4ff8ad.tar.bz2
gentoo-2-87d906d3509ff45a5557bed417929cd40c4ff8ad.zip
add a patch to avoid the memory corruption in flightgear, when a joystick has more axes than are expected. Fixes bug #89336 by Scott Hathcock
(Portage version: 2.1_pre7-r3)
Diffstat (limited to 'media-libs/plib/files')
-rw-r--r--media-libs/plib/files/digest-plib-1.8.31
-rw-r--r--media-libs/plib/files/digest-plib-1.8.4-r13
-rw-r--r--media-libs/plib/files/plib-1.8.4-too-many-axes.patch25
3 files changed, 28 insertions, 1 deletions
diff --git a/media-libs/plib/files/digest-plib-1.8.3 b/media-libs/plib/files/digest-plib-1.8.3
deleted file mode 100644
index d65b18235f15..000000000000
--- a/media-libs/plib/files/digest-plib-1.8.3
+++ /dev/null
@@ -1 +0,0 @@
-MD5 de10b19dfcee5da7115ee2a69656f34c plib-1.8.3.tar.gz 742380
diff --git a/media-libs/plib/files/digest-plib-1.8.4-r1 b/media-libs/plib/files/digest-plib-1.8.4-r1
new file mode 100644
index 000000000000..e85c944839c9
--- /dev/null
+++ b/media-libs/plib/files/digest-plib-1.8.4-r1
@@ -0,0 +1,3 @@
+MD5 5e3f289a9d1c5de0b1cfdec76bf139e6 plib-1.8.4.tar.gz 793758
+RMD160 a0b6f2fdd4035cb2a6b83616726563d779efb87f plib-1.8.4.tar.gz 793758
+SHA256 79e71d02fc2d7c984a4341239ed1d89ced743db2d6d4f83c30c422edaa6020e1 plib-1.8.4.tar.gz 793758
diff --git a/media-libs/plib/files/plib-1.8.4-too-many-axes.patch b/media-libs/plib/files/plib-1.8.4-too-many-axes.patch
new file mode 100644
index 000000000000..92f9f17753cf
--- /dev/null
+++ b/media-libs/plib/files/plib-1.8.4-too-many-axes.patch
@@ -0,0 +1,25 @@
+--- src/js/jsLinux.cxx.orig 2006-03-31 16:22:21.000000000 -0500
++++ src/js/jsLinux.cxx 2006-03-31 16:23:46.000000000 -0500
+@@ -75,12 +75,13 @@
+ ioctl ( os->fd, JSIOCGNAME ( sizeof(name) ), name ) ;
+ fcntl ( os->fd, F_SETFL , O_NONBLOCK ) ;
+
++ int all_axes = num_axes;
+ if ( num_axes > _JS_MAX_AXES )
+ num_axes = _JS_MAX_AXES ;
+
+ // Remove any deadband value already done in the kernel.
+ // Since we have our own deadband management this is save to do so.
+- struct js_corr corr [ _JS_MAX_AXES ] ;
++ struct js_corr* corr = new js_corr[ all_axes ] ;
+ ioctl ( os->fd, JSIOCGCORR, corr );
+ for ( int i = 0; i < num_axes ; ++i ) {
+ if ( corr[ i ] . type == JS_CORR_BROKEN ) {
+@@ -90,6 +91,7 @@
+ }
+ }
+ ioctl ( os->fd, JSIOCSCORR, corr );
++ delete [] corr;
+
+ for ( int i = 0 ; i < _JS_MAX_AXES ; i++ )
+ {