Skip to content

Commit

Permalink
coin3d: include fix for newer compilers
Browse files Browse the repository at this point in the history
This manifests as a segfault in any applications that use the library.

(cherry picked from commit cf32537)
  • Loading branch information
timor authored and Mic92 committed Sep 11, 2017
1 parent a82fe0e commit 5566ca9
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 0 deletions.
3 changes: 3 additions & 0 deletions pkgs/development/libraries/coin3d/default.nix
Expand Up @@ -16,6 +16,9 @@ stdenv.mkDerivation rec {
sha256 = "076dyc52swk8qc7ylps53fg6iqmd52x8s7m18i80x49dd109yw20";
})
./gcc-4.8.patch # taken from FC-17 source rpm
# see https://bitbucket.org/Coin3D/coin/issues/128/crash-in-cc_memalloc_deallocate
# patch adapted from https://bitbucket.org/Coin3D/coin/pull-requests/75/added-fix-for-issue-128-provided-by-fedora/diff
./sbhashentry.patch
];

buildInputs = [ mesa ];
Expand Down
25 changes: 25 additions & 0 deletions pkgs/development/libraries/coin3d/sbhashentry.patch
@@ -0,0 +1,25 @@
diff -u --label /tmp/Coin-3.1.3/src/misc/SbHash.h --label \#\<buffer\ SbHash.h\> /tmp/Coin-3.1.3/src/misc/SbHash.h /tmp/buffer-content-21756V0
--- a/src/misc/SbHash.h
+++ b/src/misc/SbHash.h
@@ -88,8 +88,8 @@
SbHashEntry<Type, Key> * entry = static_cast<SbHashEntry<Type, Key> *>( ptr);
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;
SbHashEntry<Type, Key> * next;
@@ -218,7 +218,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;


Diff finished. Sat Sep 9 19:50:32 2017

0 comments on commit 5566ca9

Please sign in to comment.