[Paraview] Xdmf segfault

Paul Edwards paul.m.edwards at gmail.com
Mon Mar 8 11:21:57 EST 2010


Thanks - it works :)

On 8 March 2010 15:57, Utkarsh Ayachit <utkarsh.ayachit at kitware.com> wrote:
> Paul,
>
> I've committed a fix for this. Feel free to give it a try.
>
> /cvsroot/ParaView3/ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReader.cxx,v
> <--  Utilities/Xdmf2/vtk/vtkXdmfReader.cxx
> new revision: 1.74; previous revision: 1.73
> /cvsroot/ParaView3/ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReader.h,v
> <--  Utilities/Xdmf2/vtk/vtkXdmfReader.h
> new revision: 1.15; previous revision: 1.14
> /cvsroot/ParaView3/ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReaderInternal.h,v
>  <--  Utilities/Xdmf2/vtk/vtkXdmfReaderInternal.h
> new revision: 1.2; previous revision: 1.1
>
> Utkarsh
>
> On Mon, Mar 8, 2010 at 9:55 AM, Utkarsh Ayachit
> <utkarsh.ayachit at kitware.com> wrote:
>> Oops..I should really start reading what I type before hitting "send"
>> :). What I meant to say was this:
>>
>>      Good catch. I am looking into this. "Your" fix "doesn't" suffice since it
>>      would result in the block selection from the state totally being
>>      disregarded. I'll get back to you soon.
>>
>> Utkarsh
>>
>>
>>
>> On Mon, Mar 8, 2010 at 9:50 AM, Utkarsh Ayachit
>> <utkarsh.ayachit at kitware.com> wrote:
>>> Paul,
>>>
>>> Good catch. I am looking into this. You fix does suffice since it
>>> would result in the block selection from the state totally being
>>> disregarded. I'll get back to you soon.
>>>
>>> Utkarsh
>>>
>>> On Mon, Mar 8, 2010 at 8:06 AM, Paul Edwards <paul.m.edwards at gmail.com> wrote:
>>>> Here's a patch that will allow the state file to load:
>>>>
>>>> Index: ./Utilities/Xdmf2/vtk/vtkXdmfReader.cxx
>>>> ===================================================================
>>>> RCS file: /cvsroot/ParaView3/ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReader.cxx,v
>>>> retrieving revision 1.73
>>>> diff -r1.73 vtkXdmfReader.cxx
>>>> 427,429c427,432
>>>> <   this->XdmfDocument->GetActiveDomain()->GetGridSelection()->SetArrayStatus(
>>>> <     gridname, status !=0);
>>>> <   this->Modified();
>>>> ---
>>>>>   if(this->XdmfDocument->GetActiveDomain())
>>>>>     {
>>>>>     this->XdmfDocument->GetActiveDomain()->GetGridSelection()->SetArrayStatus(
>>>>>       gridname, status !=0);
>>>>>     this->Modified();
>>>>>     }
>>>> 458,460c461,466
>>>> <   this->XdmfDocument->GetActiveDomain()->GetPointArraySelection()->
>>>> <     SetArrayStatus(arrayname, status != 0);
>>>> <   this->Modified();
>>>> ---
>>>>>   if(this->XdmfDocument->GetActiveDomain())
>>>>>     {
>>>>>     this->XdmfDocument->GetActiveDomain()->GetPointArraySelection()->
>>>>>       SetArrayStatus(arrayname, status != 0);
>>>>>     this->Modified();
>>>>>     }
>>>>
>>>> There are other places where this it could be using a null pointer but
>>>> this is the enough to get my case loading...
>>>>
>>>> Regards,
>>>> Paul
>>>>
>>>> On 8 March 2010 12:45, Paul Edwards <paul.m.edwards at gmail.com> wrote:
>>>>> The problem is with vtkXdmfReader::SetGridStatus.  The offending line is:
>>>>>
>>>>> this->XdmfDocument->GetActiveDomain()->....
>>>>>
>>>>> Where GetActiveDomain() is returning a null pointer.
>>>>>
>>>>> Here is the stack trace:
>>>>>
>>>>> Program received signal SIGSEGV, Segmentation fault.
>>>>> 0x00007fffe80f4a82 in vtkXdmfDomain::GetGridSelection (this=0x0) at
>>>>> ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReaderInternal.h:298
>>>>> 298         { return this->Grids; }
>>>>> (gdb) bt
>>>>> #0  0x00007fffe80f4a82 in vtkXdmfDomain::GetGridSelection (this=0x0)
>>>>> at ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReaderInternal.h:298
>>>>> #1  0x00007fffe80fb311 in vtkXdmfReader::SetGridStatus
>>>>> (this=0x165a9a0, gridname=0x1e3facf "block0", status=1)
>>>>>    at ParaView3/Utilities/Xdmf2/vtk/vtkXdmfReader.cxx:428
>>>>> #2  0x00007fffebd5aac2 in vtkXdmfReader_SetGridStatus (msg=...,
>>>>> op=0x165a9a0, resultStream=...)
>>>>>    at /home/paul/DEV/ss02-tmp/paraview-build/Utilities/VTKClientServer/Xdmf2/vtkXdmfReaderClientServer.cxx:311
>>>>> #3  0x00007fffebd5c889 in vtkXdmfReaderCommand (arlu=0x982980,
>>>>> ob=0x165a9a0, method=0x1e3fab9 "SetGridStatus", msg=...,
>>>>> resultStream=...)
>>>>>    at /home/paul/DEV/ss02-tmp/paraview-build/Utilities/VTKClientServer/Xdmf2/vtkXdmfReaderClientServer.cxx:613
>>>>> #4  0x00007fffe838855e in
>>>>> vtkClientServerInterpreter::ProcessCommandInvoke (this=0x982980,
>>>>> css=..., midx=1)
>>>>>    at ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:394
>>>>> #5  0x00007fffe8387c27 in
>>>>> vtkClientServerInterpreter::ProcessOneMessage (this=0x982980, css=...,
>>>>> message=1)
>>>>>    at ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:217
>>>>> #6  0x00007fffe8387abf in vtkClientServerInterpreter::ProcessStream
>>>>> (this=0x982980, css=...)
>>>>>    at ParaView3/Utilities/VTKClientServer/vtkClientServerInterpreter.cxx:186
>>>>> #7  0x00007fffef90d307 in vtkSelfConnection::ProcessStreamLocally
>>>>> (this=0x1427500, stream=...)
>>>>>    at ParaView3/Servers/Common/vtkSelfConnection.cxx:120
>>>>> #8  0x00007fffef90d2c3 in vtkSelfConnection::SendStreamToClient
>>>>> (this=0x1427500, stream=...)
>>>>>    at ParaView3/Servers/Common/vtkSelfConnection.cxx:113
>>>>> #9  0x00007fffef894443 in vtkProcessModuleConnection::SendStream
>>>>> (this=0x1427500, servers=1, stream=...)
>>>>>    at ParaView3/Servers/Common/vtkProcessModuleConnection.cxx:242
>>>>> #10 0x00007fffef897d0c in
>>>>> vtkProcessModuleConnectionManager::SendStream (this=0xec3ac0,
>>>>> connectionID=5, serverFlags=1, stream=..., reset=1)
>>>>>    at ParaView3/Servers/Common/vtkProcessModuleConnectionManager.cxx:535
>>>>> ...
>>>>>
>>>>>
>>>>>
>>>>> On 8 March 2010 12:26, Paul Edwards <paul.m.edwards at gmail.com> wrote:
>>>>>>
>>>>>> ParaView segfaults when you try and reload a state file that contains a XDMF file.  To reproduce: open xdmf file, save state, then load it back in.
>>>>>> This is in the latest CVS version.
>>>>>> Regards,
>>>>>> Paul
>>>>>
>>>> _______________________________________________
>>>> Powered by www.kitware.com
>>>>
>>>> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>>>>
>>>> Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView
>>>>
>>>> Follow this link to subscribe/unsubscribe:
>>>> http://www.paraview.org/mailman/listinfo/paraview
>>>>
>>>
>>
>


More information about the ParaView mailing list