NatronGitHub / Natron

Open-source video compositing software. Node-graph based. Similar in functionalities to Adobe After Effects and Nuke by The Foundry.
http://NatronGitHub.github.io
GNU General Public License v2.0
4.65k stars 338 forks source link

(Bug): Viewer/Merge out of bounds issue during playback #811

Open rodlie opened 2 years ago

rodlie commented 2 years ago

Make sure to follow our issue report guidelines

Natron version

Natron 2.1.9/2.2.5/2.2.6/2.2.9/2.3.0/2.4.3

Operating system

CentOS 7.9 / Windows 10/11

System specs

Not relevant.

Did you install Natron using the official installer?

Custom installation path

not relevant

What were you trying to do?

Move a rectangle over a solid, then press play in viewer.

What did you expect to happen? What happened instead?

I expect the viewer to play through the clip, but instead stops when the rectangle reaches a certain point (the frame where it stops is random).

Step-by-step reproduction instructions

Open attached project and press play. project.zip

Additional details

Works in 2.1.9, after that (2.2) I may stop, but in Natron 2.3.0+ it will always stop.

YakoYakoYokuYoku commented 2 years ago

Could replicate in RB-2.5 plus when I add a Writer node and I render this project under NatronRenderer it randomly halts on a frame. So this might be an issue with one of Rectangle, Transform, Merge or another component. I think this could be a logic deadlock as it shown from backtraces of many threads when I send a SIGINT in gdb

#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 76 (Thread 0x7ffeb6337640 (LWP 77417) "Parallel render"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 75 (Thread 0x7ffed4e02640 (LWP 77415) "Parallel render"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 74 (Thread 0x7ffedc463640 (LWP 77414) "Parallel render"):
#0  0x0000555555790857 in Natron::RectI Natron::minimalNonMarkedBbox_internal<1>(Natron::RectI const&, Natron::RectI const&, std::vector<char, std::allocator<char> > const&, bool*) ()
#1  0x000055555579120a in void Natron::minimalNonMarkedRects_internal<1>(Natron::RectI const&, Natron::RectI const&, std::vector<char, std::allocator<char> > const&, std::__cxx11::list<Natron::RectI, std::allocator<Natron::RectI> >&, bool*) ()
#2  0x0000555555787f25 in Natron::Bitmap::minimalNonMarkedRects_trimap(Natron::RectI const&, std::__cxx11::list<Natron::RectI, std::allocator<Natron::RectI> >&, bool*) const ()
#3  0x000055555575467f in Natron::Image::getRestToRender_trimap(Natron::RectI const&, std::__cxx11::list<Natron::RectI, std::allocator<Natron::RectI> >&, bool*) const ()
#4  0x0000555555752799 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 73 (Thread 0x7ffedcc64640 (LWP 77413) "Parallel render"):
#0  0x00007ffff690b30d in syscall () at /usr/lib/libc.so.6
#1  0x00007ffff72dfc16 in QBasicMutex::lockInternal() () at /usr/lib/libQt5Core.so.5
#2  0x00007ffff72eb7a2 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 72 (Thread 0x7ffedd465640 (LWP 77411) "Parallel render"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 71 (Thread 0x7ffeddc66640 (LWP 77410) "Parallel render"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 70 (Thread 0x7ffee6d10640 (LWP 77408) "Parallel render"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 40 (Thread 0x7fff50ff9640 (LWP 77377) "Parallel render"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688bc24 in pthread_cond_timedwait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb764 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00007ffff72f022c in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#4  0x0000555555752760 in Natron::EffectInstance::Implementation::waitForImageBeingRenderedElsewhere(Natron::RectI const&, boost::shared_ptr<Natron::Image> const&) ()
#5  0x0000555555771487 in Natron::ImageBitMapMarker_RAII::waitForPendingRegions() ()
#6  0x000055555576c089 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#7  0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#8  0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#9  0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#10 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#11 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#12 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#13 0x0000555555b6d0e3 in Natron::EffectInstance::treeRecurseFunctor(bool, boost::shared_ptr<Natron::Node> const&, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > > const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, bool, Natron::StorageModeEnum, unsigned int, double, Natron::ViewIdx, boost::shared_ptr<Natron::Node> const&, std::map<boost::shared_ptr<Natron::Node>, boost::shared_ptr<Natron::NodeFrameRequest>, std::less<boost::shared_ptr<Natron::Node> >, std::allocator<std::pair<boost::shared_ptr<Natron::Node> const, boost::shared_ptr<Natron::NodeFrameRequest> > > >*, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const*, bool, bool) ()
#14 0x000055555570b2ca in Natron::EffectInstance::renderInputImagesForRoI(Natron::FrameViewRequest const*, bool, Natron::StorageModeEnum, double, Natron::ViewIdx, Natron::RectD const&, Natron::RectD const&, boost::shared_ptr<std::map<int, Natron::InputMatrix, std::less<int>, std::allocator<std::pair<int const, Natron::InputMatrix> > > > const&, unsigned int, Natron::RenderScale const&, bool, bool, std::map<int, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > >, std::less<int>, std::allocator<std::pair<int const, std::map<Natron::ViewIdx, std::vector<OfxRangeD, std::allocator<OfxRangeD> >, std::less<Natron::ViewIdx>, std::allocator<std::pair<Natron::ViewIdx const, std::vector<OfxRangeD, std::allocator<OfxRangeD> > > > > > > > const&, std::map<int, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<Natron::ImagePlaneDesc, std::allocator<Natron::ImagePlaneDesc> > > > > const&, std::map<int, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::list<boost::shared_ptr<Natron::Image>, std::allocator<boost::shared_ptr<Natron::Image> > > > > >*, std::map<boost::shared_ptr<Natron::EffectInstance>, Natron::RectD, std::less<boost::shared_ptr<Natron::EffectInstance> >, std::allocator<std::pair<boost::shared_ptr<Natron::EffectInstance> const, Natron::RectD> > >*) ()
#15 0x000055555576a765 in Natron::EffectInstance::renderRoI(Natron::EffectInstance::RenderRoIArgs const&, std::map<Natron::ImagePlaneDesc, boost::shared_ptr<Natron::Image>, std::less<Natron::ImagePlaneDesc>, std::allocator<std::pair<Natron::ImagePlaneDesc const, boost::shared_ptr<Natron::Image> > > >*) ()
#16 0x0000555555b62788 in Natron::DefaultRenderFrameRunnable::renderFrame(int, std::vector<Natron::ViewIdx, std::allocator<Natron::ViewIdx> > const&, bool) ()
#17 0x0000555555b4ce5c in Natron::RenderThreadTask::run() ()
#18 0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#19 0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#20 0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 39 (Thread 0x7fff517fa640 (LWP 77376) "Scheduler threa"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688b920 in pthread_cond_wait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb7d4 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x0000555555b49370 in Natron::OutputSchedulerThread::threadLoopOnce(boost::shared_ptr<Natron::GenericThreadStartArgs> const&) ()
#4  0x00005555560f691c in Natron::GenericSchedulerThread::run() ()
#5  0x00007ffff72e438a in  () at /usr/lib/libQt5Core.so.5
#6  0x00007ffff688c54d in  () at /usr/lib/libc.so.6
#7  0x00007ffff6911874 in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7ffff6212e80 (LWP 77332) "NatronRenderer"):
#0  0x00007ffff6889119 in  () at /usr/lib/libc.so.6
#1  0x00007ffff688b920 in pthread_cond_wait () at /usr/lib/libc.so.6
#2  0x00007ffff72eb7d4 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#3  0x00005555560d33da in Natron::BlockingBackgroundRender::blockingRender(bool, int, int, int) ()
#4  0x00005555560a869c in Natron::AppInstancePrivate::startRenderingFullSequence(bool, Natron::RenderQueueItem const&) ()
#5  0x00005555560b2fde in boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>::operator()(Natron::AppInstancePrivate*, bool, Natron::RenderQueueItem const&) const ()
#6  0x00005555560b2f32 in void boost::_bi::list3<boost::_bi::value<Natron::AppInstancePrivate*>, boost::_bi::value<bool>, boost::arg<1> >::operator()<boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>, boost::_bi::rrlist1<Natron::RenderQueueItem&> >(boost::_bi::type<void>, boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>&, boost::_bi::rrlist1<Natron::RenderQueueItem&>&, int) ()
#7  0x00005555560b2e4c in void boost::_bi::bind_t<void, boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>, boost::_bi::list3<boost::_bi::value<Natron::AppInstancePrivate*>, boost::_bi::value<bool>, boost::arg<1> > >::operator()<Natron::RenderQueueItem&>(Natron::RenderQueueItem&) ()
#8  0x00005555560b25c5 in QtConcurrent::MapKernel<std::_List_iterator<Natron::RenderQueueItem>, boost::_bi::bind_t<void, boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>, boost::_bi::list3<boost::_bi::value<Natron::AppInstancePrivate*>, boost::_bi::value<bool>, boost::arg<1> > > >::runIteration(std::_List_iterator<Natron::RenderQueueItem>, int, void*) ()
#9  0x00005555560b2d1d in QtConcurrent::IterateKernel<std::_List_iterator<Natron::RenderQueueItem>, void>::whileThreadFunction() ()
#10 0x00005555560b2458 in QtConcurrent::IterateKernel<std::_List_iterator<Natron::RenderQueueItem>, void>::threadFunction() ()
#11 0x00007ffff7f6b4c5 in QtConcurrent::ThreadEngineBase::startBlocking() () at /usr/lib/libQt5Concurrent.so.5
#12 0x00005555560b31e3 in QtConcurrent::ThreadEngine<void>::startBlocking() ()
#13 0x00005555560b1fac in QtConcurrent::ThreadEngineStarter<void>::startBlocking() ()
#14 0x00005555560acaa6 in void QtConcurrent::blockingMap<std::__cxx11::list<Natron::RenderQueueItem, std::allocator<Natron::RenderQueueItem> >, boost::_bi::bind_t<void, boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>, boost::_bi::list3<boost::_bi::value<Natron::AppInstancePrivate*>, boost::_bi::value<bool>, boost::arg<1> > > >(std::__cxx11::list<Natron::RenderQueueItem, std::allocator<Natron::RenderQueueItem> >&, boost::_bi::bind_t<void, boost::_mfi::mf2<void, Natron::AppInstancePrivate, bool, Natron::RenderQueueItem const&>, boost::_bi::list3<boost::_bi::value<Natron::AppInstancePrivate*>, boost::_bi::value<bool>, boost::arg<1> > >) ()
#15 0x000055555609f4d1 in Natron::AppInstance::startWritersRendering(bool, std::__cxx11::list<Natron::AppInstance::RenderWork, std::allocator<Natron::AppInstance::RenderWork> > const&) ()
#16 0x00005555560a05a2 in Natron::AppInstance::startWritersRenderingFromNames(bool, bool, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::__cxx11::list<std::pair<int, std::pair<int, int> >, std::allocator<std::pair<int, std::pair<int, int> > > > const&) ()
#17 0x0000555556099804 in Natron::AppInstance::loadInternal(Natron::CLArgs const&, bool) ()
#18 0x0000555556098185 in Natron::AppInstance::load(Natron::CLArgs const&, bool) ()
#19 0x000055555562a737 in Natron::AppManager::newAppInstanceInternal(Natron::CLArgs const&, bool, bool) ()
#20 0x000055555562a41d in Natron::AppManager::newAppInstance(Natron::CLArgs const&, bool) ()
#21 0x0000555555629b57 in Natron::AppManager::loadInternalAfterInitGui(Natron::CLArgs const&) ()
#22 0x0000555555628f3d in Natron::AppManager::initGui(Natron::CLArgs const&) ()
#23 0x0000555555625f9f in Natron::AppManager::loadInternal(Natron::CLArgs const&) ()
#24 0x000055555562342d in Natron::AppManager::loadFromArgs(Natron::CLArgs const&) ()
#25 0x000055555562602d in Natron::AppManager::load(int, char**, Natron::CLArgs const&) ()
#26 0x0000555555622a16 in main ()

I don't have the debug symbols at hand as to build it again requires a bit of juggling locally with branches, but I hope that this shades a light over the issue.

Edit: Added output from thread apply all bt and removed irrelevant thread backtraces.

rodlie commented 2 years ago

Thanks for testing, I don't have access to a dev machine until tomorrow. It happened in a project I was working on today (issue with both the viewer and writer, though no crash here), I used images, but the issue can be replicated with a rectangle etc.