Reading DXF curves can result in corrupted edges (with 2 identical
vertex indices). Probably thats OK for autocad or so.. but it made
Blender crash on entering editmode.
This commit is contained in:
Ton Roosendaal 2006-04-09 11:10:11 +00:00
parent e804042c8e
commit 8bfe762927

@ -792,14 +792,17 @@ void make_editMesh()
/* make edges */ /* make edges */
for(a=0; a<me->totedge; a++, medge++) { for(a=0; a<me->totedge; a++, medge++) {
eed= addedgelist(evlist[medge->v1], evlist[medge->v2], NULL); eed= addedgelist(evlist[medge->v1], evlist[medge->v2], NULL);
eed->crease= ((float)medge->crease)/255.0; /* eed can be zero when v1 and v2 are identical, dxf import does this... */
if(eed) {
eed->crease= ((float)medge->crease)/255.0;
if(medge->flag & ME_SEAM) eed->seam= 1; if(medge->flag & ME_SEAM) eed->seam= 1;
if(medge->flag & SELECT) eed->f |= SELECT; if(medge->flag & SELECT) eed->f |= SELECT;
if(medge->flag & ME_FGON) eed->h= EM_FGON; // 2 different defines! if(medge->flag & ME_FGON) eed->h= EM_FGON; // 2 different defines!
if(medge->flag & ME_HIDE) eed->h |= 1; if(medge->flag & ME_HIDE) eed->h |= 1;
if(G.scene->selectmode==SCE_SELECT_EDGE) if(G.scene->selectmode==SCE_SELECT_EDGE)
EM_select_edge(eed, eed->f & SELECT); // force edge selection to vertices, seems to be needed ... EM_select_edge(eed, eed->f & SELECT); // force edge selection to vertices, seems to be needed ...
}
} }
/* make faces */ /* make faces */