Fix uninitialized memory reads and memory leaks in StereoGC

(cherry picked from commit 7d8e5f623a)
This commit is contained in:
Roman Donchenko 2014-11-12 17:00:08 +03:00 committed by Alexander Smorkalov
parent 23bf3e337a
commit 1ccd64e102

View File

@ -157,7 +157,10 @@ static int64 icvGCMaxFlow( GCVtx* vtx, int nvtx, GCEdge* edges, GCVtx**& _orphan
v->t = v->weight < 0; v->t = v->weight < 0;
} }
else else
{
v->next = NULL;
v->parent = 0; v->parent = 0;
}
} }
first = first->next; first = first->next;
@ -396,6 +399,8 @@ void cvReleaseStereoGCState( CvStereoGCState** _state )
cvReleaseMat( &state->right ); cvReleaseMat( &state->right );
cvReleaseMat( &state->ptrLeft ); cvReleaseMat( &state->ptrLeft );
cvReleaseMat( &state->ptrRight ); cvReleaseMat( &state->ptrRight );
cvReleaseMat( &state->dispLeft );
cvReleaseMat( &state->dispRight );
cvReleaseMat( &state->vtxBuf ); cvReleaseMat( &state->vtxBuf );
cvReleaseMat( &state->edgeBuf ); cvReleaseMat( &state->edgeBuf );
cvFree( _state ); cvFree( _state );