Cycles: Don't use guarded vector for statically initialized data
authorSergey Sharybin <sergey.vfx@gmail.com>
Mon, 24 Oct 2016 12:18:22 +0000 (14:18 +0200)
committerSergey Sharybin <sergey.vfx@gmail.com>
Mon, 24 Oct 2016 12:18:22 +0000 (14:18 +0200)
This will confuse hell of a guarded allocators because it is possible
to have allocation happened prior to Blender's guarded allocator is
fully initialized.

This was causing crashes and assert failures when running blender
with fully guarded memory allocator.

intern/cycles/graph/node_type.h

index e89bb5b..1fb135f 100644 (file)
@@ -125,8 +125,8 @@ struct NodeType
 
        ustring name;
        Type type;
-       vector<SocketType> inputs;
-       vector<SocketType> outputs;
+       vector<SocketType, std::allocator<SocketType> > inputs;
+       vector<SocketType, std::allocator<SocketType> > outputs;
        CreateFunc create;
 
        static NodeType *add(const char *name, CreateFunc create, Type type = NONE);