[Bf-committers] sequencer crash
ton at blender.org
Sun Mar 12 00:06:45 CET 2006
Thanks for the lecture. :)
I just spoke with Toni, and he said this issue only happens on his
system... a compile from another linux system in our studio runs fine
at his box. Seems like something else is wrong... not the code.
BTW; it happens for him on any exr file Blender writes, used in
sequencer. Quite simple to test. But I bet it will work fine on your
system too, sofar nobody was able to reproduce.
On 10 Mar, 2006, at 20:20, Peter Schlaile wrote:
> since I'm the only C++-coder around, I dived into the code:
> The interesting part of openexr_api.cpp is starting at line 625:
> I commented the code a little bit, to explain the crash:
> if (!(flags & IB_test))
> FrameBuffer frameBuffer; // here we construct a temporary
> // FrameBuffer object on the stack
> // there is a stl::map in it, that uses the
> // heap, which is later globbered...
> // ... here we add Slices to the frameBuffer, that tell
> // where to write the data...
> // (*)
> // Somewhere in here, most probably we added pointers / sizes
> // point outside the limits.
> file->setFrameBuffer (frameBuffer);
> // tell the input-object, where
> // we want to write the data
> file->readPixels (dw.min.y, dw.max.y);
> // read the data, probably thereby globbering the malloc-heap
> } // here frameBuffer loses scope and is destructed automatically
> // triggering the segmentation fault
> To investigate this further:
> - First try: please remove file->readPixels and see if it doesn't crash
> anymore. Yes -> then I'm right, we made something wrong with the
> Add it again and ...
> - then: There are several frameBuffer.insert - method calls located
> It is probably the best to remove these calls one by one and look,
> when the segfault goes away.
> The bug is most probably triggered by a specific openexr-file. It is
> likely a good idea to add some "fprintf-debug"-Statements, that show
> xstride, ystride, width, height, dw.min.x, dw.min.y etc.
> If that doesn't help, send me an email (or give me an account on the
> machine affected / send the openexr-file to me).
> Bf-committers mailing list
> Bf-committers at projects.blender.org
Ton Roosendaal Blender Foundation ton at blender.org
More information about the Bf-committers