summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Levine <plevine457@gmail.com>2017-07-19 01:46:56 -0400
committerAlexey Shvetsov <alexxy@gentoo.org>2017-07-23 16:09:04 +0300
commit4dee204fba967426d5a3093d83a7d626b9fc4c30 (patch)
tree4a28a3d445f5b21f1ee4a43dec4c497504442354 /media-libs
parentapp-i18n/im-freewnn: fix immodules path (diff)
downloadgentoo-4dee204fba967426d5a3093d83a7d626b9fc4c30.tar.gz
gentoo-4dee204fba967426d5a3093d83a7d626b9fc4c30.tar.bz2
gentoo-4dee204fba967426d5a3093d83a7d626b9fc4c30.zip
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
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/coin/coin-3.1.3-r2.ebuild1
-rw-r--r--media-libs/coin/files/coin-3.1.3-memhandler-initialization.patch23
2 files changed, 24 insertions, 0 deletions
diff --git a/media-libs/coin/coin-3.1.3-r2.ebuild b/media-libs/coin/coin-3.1.3-r2.ebuild
index c9686db8c426..5edce05a9cb2 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 000000000000..892882b6a3db
--- /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;
+