mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-26 17:03:01 +00:00
coin3d: include fix for newer compilers
This manifests as a segfault in any applications that use the library.
This commit is contained in:
parent
e960eb0bf5
commit
cf32537210
@ -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 ];
|
||||
|
25
pkgs/development/libraries/coin3d/sbhashentry.patch
Normal file
25
pkgs/development/libraries/coin3d/sbhashentry.patch
Normal file
@ -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
|
Loading…
Reference in New Issue
Block a user