commit:     4dee204fba967426d5a3093d83a7d626b9fc4c30
Author:     Peter Levine <plevine457 <AT> gmail <DOT> com>
AuthorDate: Wed Jul 19 05:46:56 2017 +0000
Commit:     Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Sun Jul 23 13:09:04 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4dee204f

media-libs/coin: Fix segfault with GCC-6

Bug: https://bugs.gentoo.org/show_bug.cgi?id=619378
Package-Manager: Portage-2.3.6, Repoman-2.3.2

 media-libs/coin/coin-3.1.3-r2.ebuild               |  1 +
 .../coin-3.1.3-memhandler-initialization.patch     | 23 ++++++++++++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/media-libs/coin/coin-3.1.3-r2.ebuild 
b/media-libs/coin/coin-3.1.3-r2.ebuild
index c9686db8c42..5edce05a9cb 100644
--- a/media-libs/coin/coin-3.1.3-r2.ebuild
+++ b/media-libs/coin/coin-3.1.3-r2.ebuild
@@ -45,6 +45,7 @@ PATCHES=(
        "${FILESDIR}"/${P}-pkgconfig-partial.patch
        "${FILESDIR}"/${P}-gcc-4.7.patch
        "${FILESDIR}"/${P}-freetype251.patch
+       "${FILESDIR}"/${P}-memhandler-initialization.patch
 )
 
 DOCS=(

diff --git a/media-libs/coin/files/coin-3.1.3-memhandler-initialization.patch 
b/media-libs/coin/files/coin-3.1.3-memhandler-initialization.patch
new file mode 100644
index 00000000000..892882b6a3d
--- /dev/null
+++ b/media-libs/coin/files/coin-3.1.3-memhandler-initialization.patch
@@ -0,0 +1,23 @@
+Bug: https://bugs.gentoo.org/show_bug.cgi?id=619378
+Patch 
http://pkgs.fedoraproject.org/cgit/rpms/Coin3.git/tree/0012-memhandler-initialization.patch?id=ca89ec7227943bdec800ee51b920f578fab87b05
+
+--- a/src/misc/SbHash.h
++++ b/src/misc/SbHash.h
+@@ -89,6 +89,8 @@
+     cc_memalloc_deallocate(entry->memhandler, ptr);
+   }
+   SbHashEntry(const Key & key, const Type & obj) : key(key), obj(obj) {}
++  SbHashEntry(const Key & key, const Type & obj, cc_memalloc *memhandler)
++              : key(key), obj(obj), memhandler(memhandler) {}
+
+   Key key;
+   Type obj;
+@@ -218,7 +220,7 @@
+     /* Key not already in the hash table; insert a new
+      * entry as the first element in the bucket
+      */
+-    entry = new (this->memhandler) SbHashEntry<Type, Key>(key, obj);
++    entry = new (this->memhandler) SbHashEntry<Type, Key>(key, obj, 
this->memhandler);
+     entry->next = this->buckets[i];
+     this->buckets[i] = entry;
+

Reply via email to