Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2006-04-09 15:10:11 +0400
committerTon Roosendaal <ton@blender.org>2006-04-09 15:10:11 +0400
commit8bfe7629271497382e907d9551ee6fc8b82db8a2 (patch)
treed7bf7803e55670f4beba1e2d6b587b90400d696d /source/blender/src/editmesh.c
parente804042c8eb18f61dbd0a2b6285a975a65ace284 (diff)
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.
Diffstat (limited to 'source/blender/src/editmesh.c')
-rw-r--r--source/blender/src/editmesh.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/source/blender/src/editmesh.c b/source/blender/src/editmesh.c
index f2766b9574d..8206373611e 100644
--- a/source/blender/src/editmesh.c
+++ b/source/blender/src/editmesh.c
@@ -792,14 +792,17 @@ void make_editMesh()
/* make edges */
for(a=0; a<me->totedge; a++, medge++) {
eed= addedgelist(evlist[medge->v1], evlist[medge->v2], NULL);
- eed->crease= ((float)medge->crease)/255.0;
-
- if(medge->flag & ME_SEAM) eed->seam= 1;
- if(medge->flag & SELECT) eed->f |= SELECT;
- if(medge->flag & ME_FGON) eed->h= EM_FGON; // 2 different defines!
- if(medge->flag & ME_HIDE) eed->h |= 1;
- if(G.scene->selectmode==SCE_SELECT_EDGE)
- EM_select_edge(eed, eed->f & SELECT); // force edge selection to vertices, seems to be needed ...
+ /* 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 & SELECT) eed->f |= SELECT;
+ if(medge->flag & ME_FGON) eed->h= EM_FGON; // 2 different defines!
+ if(medge->flag & ME_HIDE) eed->h |= 1;
+ if(G.scene->selectmode==SCE_SELECT_EDGE)
+ EM_select_edge(eed, eed->f & SELECT); // force edge selection to vertices, seems to be needed ...
+ }
}
/* make faces */