[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12102] trunk/blender/source/blender: unwrapping would crash if there was no space image
Campbell Barton
cbarton at metavr.com
Fri Sep 21 16:34:29 CEST 2007
Revision: 12102
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12102
Author: campbellbarton
Date: 2007-09-21 16:34:29 +0200 (Fri, 21 Sep 2007)
Log Message:
-----------
unwrapping would crash if there was no space image
Modified Paths:
--------------
trunk/blender/source/blender/include/BIF_drawimage.h
trunk/blender/source/blender/include/BIF_editsima.h
trunk/blender/source/blender/src/drawimage.c
trunk/blender/source/blender/src/unwrapper.c
Modified: trunk/blender/source/blender/include/BIF_drawimage.h
===================================================================
--- trunk/blender/source/blender/include/BIF_drawimage.h 2007-09-21 13:34:19 UTC (rev 12101)
+++ trunk/blender/source/blender/include/BIF_drawimage.h 2007-09-21 14:34:29 UTC (rev 12102)
@@ -43,8 +43,8 @@
void do_imagebuts(unsigned short event);
void calc_image_view(struct SpaceImage *sima, char mode);
void drawimagespace(struct ScrArea *sa, void *spacedata);
-void draw_tfaces(void);
void image_changed(struct SpaceImage *sima, struct Image *image);
+void draw_uvs_sima(void);
void image_set_tile(struct SpaceImage *sima, int dotile);
void image_home(void);
void image_viewmove(int mode);
Modified: trunk/blender/source/blender/include/BIF_editsima.h
===================================================================
--- trunk/blender/source/blender/include/BIF_editsima.h 2007-09-21 13:34:19 UTC (rev 12101)
+++ trunk/blender/source/blender/include/BIF_editsima.h 2007-09-21 14:34:29 UTC (rev 12102)
@@ -39,26 +39,28 @@
#define TF_SEL_MASK(id) (TF_SEL1 << id)
-/* this checks weather a face is drarn without the local image check */
+/* this checks weather a face is drarn without the local image check
+ * - warning - no check for G.sima->flag, use SIMA_FACEDRAW_CHECK
+ */
#define SIMA_FACEDRAW_CHECK_NOLOCAL(efa) \
((G.sima->flag & SI_SYNC_UVSEL) ? (efa->h==0) : (efa->h==0 && efa->f & SELECT))
/* this check includes the local image check - (does the faces image match the space image?) */
#define SIMA_FACEDRAW_CHECK(efa, tf) \
- ((G.sima->flag & SI_LOCAL_UV) ? ((tf->tpage==G.sima->image) ? SIMA_FACEDRAW_CHECK_NOLOCAL(efa):0) : (SIMA_FACEDRAW_CHECK_NOLOCAL(efa)))
+ ((G.sima && G.sima->flag & SI_LOCAL_UV) ? ((tf->tpage==G.sima->image) ? SIMA_FACEDRAW_CHECK_NOLOCAL(efa):0) : (SIMA_FACEDRAW_CHECK_NOLOCAL(efa)))
#define SIMA_FACESEL_CHECK(efa, tf) \
- ((G.sima->flag & SI_SYNC_UVSEL) ? (efa->f & SELECT) : (!(~tf->flag & (TF_SEL1|TF_SEL2|TF_SEL3)) &&(!efa->v4 || tf->flag & TF_SEL4)))
+ ((G.sima && G.sima->flag & SI_SYNC_UVSEL) ? (efa->f & SELECT) : (!(~tf->flag & (TF_SEL1|TF_SEL2|TF_SEL3)) &&(!efa->v4 || tf->flag & TF_SEL4)))
#define SIMA_FACESEL_SET(efa, tf) \
- ((G.sima->flag & SI_SYNC_UVSEL) ? (EM_select_face(efa, 1)) : (tf->flag |= (TF_SEL1|TF_SEL2|TF_SEL3|TF_SEL4)))
+ ((G.sima && G.sima->flag & SI_SYNC_UVSEL) ? (EM_select_face(efa, 1)) : (tf->flag |= (TF_SEL1|TF_SEL2|TF_SEL3|TF_SEL4)))
#define SIMA_FACESEL_UNSET(efa, tf) \
- ((G.sima->flag & SI_SYNC_UVSEL) ? (EM_select_face(efa, 0)) : (tf->flag &= ~(TF_SEL1|TF_SEL2|TF_SEL3|TF_SEL4)))
+ ((G.sima && G.sima->flag & SI_SYNC_UVSEL) ? (EM_select_face(efa, 0)) : (tf->flag &= ~(TF_SEL1|TF_SEL2|TF_SEL3|TF_SEL4)))
-#define SIMA_UVSEL_CHECK(efa, tf, i) (G.sima->flag & SI_SYNC_UVSEL ? \
+#define SIMA_UVSEL_CHECK(efa, tf, i) ((G.sima && G.sima->flag & SI_SYNC_UVSEL) ? \
(G.scene->selectmode == SCE_SELECT_FACE ? efa->f & SELECT : ((*(&efa->v1 + i))->f & SELECT) ) : (tf->flag & TF_SEL_MASK(i) ))
-#define SIMA_UVSEL_SET(efa, tf, i) (G.sima->flag & SI_SYNC_UVSEL ? \
+#define SIMA_UVSEL_SET(efa, tf, i) ((G.sima && G.sima->flag & SI_SYNC_UVSEL) ? \
(G.scene->selectmode == SCE_SELECT_FACE ? EM_select_face(efa, 1) : ((*(&efa->v1 + i))->f |= SELECT) ) : (tf->flag |= TF_SEL_MASK(i) ))
-#define SIMA_UVSEL_UNSET(efa, tf, i) (G.sima->flag & SI_SYNC_UVSEL ? \
+#define SIMA_UVSEL_UNSET(efa, tf, i) ((G.sima && G.sima->flag & SI_SYNC_UVSEL) ? \
(G.scene->selectmode == SCE_SELECT_FACE ? EM_select_face(efa, 0) : ((*(&efa->v1 + i))->f &= ~SELECT) ) : (tf->flag &= ~TF_SEL_MASK(i) ))
struct Object;
Modified: trunk/blender/source/blender/src/drawimage.c
===================================================================
--- trunk/blender/source/blender/src/drawimage.c 2007-09-21 13:34:19 UTC (rev 12101)
+++ trunk/blender/source/blender/src/drawimage.c 2007-09-21 14:34:29 UTC (rev 12102)
@@ -453,7 +453,7 @@
EditMesh *em = G.editMesh;
EditFace *efa;
- char col1[4], col2[4], efaset = 0;
+ char col1[4], col2[4];
float pointsize= BIF_GetThemeValuef(TH_VERTEX_SIZE);
if (!G.obedit || !CustomData_has_layer(&em->fdata, CD_MTFACE))
Modified: trunk/blender/source/blender/src/unwrapper.c
===================================================================
--- trunk/blender/source/blender/src/unwrapper.c 2007-09-21 13:34:19 UTC (rev 12101)
+++ trunk/blender/source/blender/src/unwrapper.c 2007-09-21 14:34:29 UTC (rev 12102)
@@ -299,7 +299,7 @@
return;
/* select new UV's */
- if ((G.sima->flag & SI_SYNC_UVSEL)==0) {
+ if ((G.sima==0 || G.sima->flag & SI_SYNC_UVSEL)==0) {
EditFace *efa;
MTFace *tf;
for(efa=em->faces.first; efa; efa=efa->next) {
More information about the Bf-blender-cvs
mailing list