forked from bartvdbraak/blender
Bugfix #3840
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:
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 */
|
||||||
|
Loading…
Reference in New Issue
Block a user