From cf3d58512b524d98ce7d270889adaf9665ba4214 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sun, 19 Aug 2012 15:56:49 +0000 Subject: - fix for error in ndof patch. - ColorBalanceModifierData wasn't aligned on 32bit systems. - BM_vert_find_first_loop() was missing NULL check. --- source/blender/bmesh/intern/bmesh_queries.c | 4 +++ source/blender/editors/space_view3d/view3d_edit.c | 12 ++++---- .../editors/transform/transform_manipulator.c | 32 +++++++++++----------- source/blender/makesdna/DNA_sequence_types.h | 1 - 4 files changed, 27 insertions(+), 22 deletions(-) diff --git a/source/blender/bmesh/intern/bmesh_queries.c b/source/blender/bmesh/intern/bmesh_queries.c index a439eff36f6..a9f146e4962 100644 --- a/source/blender/bmesh/intern/bmesh_queries.c +++ b/source/blender/bmesh/intern/bmesh_queries.c @@ -202,6 +202,10 @@ BMLoop *BM_vert_find_first_loop(BMVert *v) return NULL; e = bmesh_disk_faceedge_find_first(v->e, v); + + if (!e) + return NULL; + return bmesh_radial_faceloop_find_first(e->l, v); } diff --git a/source/blender/editors/space_view3d/view3d_edit.c b/source/blender/editors/space_view3d/view3d_edit.c index b262819474b..e5730e0f69b 100644 --- a/source/blender/editors/space_view3d/view3d_edit.c +++ b/source/blender/editors/space_view3d/view3d_edit.c @@ -1022,9 +1022,10 @@ static int ndof_orbit_invoke(bContext *C, wmOperator *UNUSED(op), wmEvent *event /* tune these until everything feels right */ const float rot_sensitivity = 1.f; +#if 0 const float zoom_sensitivity = 1.f; +#endif const float pan_sensitivity = 1.f; - const int has_rotation = rv3d->viewlock != RV3D_LOCKED && !is_zero_v3(ndof->rvec); float view_inv[4]; @@ -1249,12 +1250,11 @@ static int ndof_all_invoke(bContext *C, wmOperator *op, wmEvent *event) View3D *v3d = CTX_wm_view3d(C); wmNDOFMotionData *ndof = (wmNDOFMotionData *) event->customdata; - ED_view3d_camera_lock_init(v3d, rv3d); - viewops_data_create(C, op, event); vod = op->customdata; rv3d = vod->rv3d; - + + ED_view3d_camera_lock_init(v3d, rv3d); if (ndof->progress != P_FINISHING) { @@ -1271,11 +1271,13 @@ static int ndof_all_invoke(bContext *C, wmOperator *op, wmEvent *event) float pan_vec[3]; const float rot_sensitivity = 1.f; +#if 0 const float zoom_sensitivity = 1.f; const float pan_sensitivity = 1.f; float rot[4]; - float axis[3]; float angle = rot_sensitivity * ndof_to_axis_angle(ndof, axis); + float axis[3]; +#endif if (U.ndof_flag & NDOF_PANX_INVERT_AXIS) pan_vec[0] = -lateral_sensitivity * ndof->tvec[0]; diff --git a/source/blender/editors/transform/transform_manipulator.c b/source/blender/editors/transform/transform_manipulator.c index a89ba06c1af..74a2292d74c 100644 --- a/source/blender/editors/transform/transform_manipulator.c +++ b/source/blender/editors/transform/transform_manipulator.c @@ -84,22 +84,22 @@ /* return codes for select, and drawing flags */ -#define MAN_TRANS_X 1 -#define MAN_TRANS_Y 2 -#define MAN_TRANS_Z 4 -#define MAN_TRANS_C 7 - -#define MAN_ROT_X 8 -#define MAN_ROT_Y 16 -#define MAN_ROT_Z 32 -#define MAN_ROT_V 64 -#define MAN_ROT_T 128 -#define MAN_ROT_C 248 - -#define MAN_SCALE_X 256 -#define MAN_SCALE_Y 512 -#define MAN_SCALE_Z 1024 -#define MAN_SCALE_C 1792 +#define MAN_TRANS_X (1 << 0) +#define MAN_TRANS_Y (1 << 1) +#define MAN_TRANS_Z (1 << 2) +#define MAN_TRANS_C (MAN_TRANS_X | MAN_TRANS_Y | MAN_TRANS_Z) + +#define MAN_ROT_X (1 << 3) +#define MAN_ROT_Y (1 << 4) +#define MAN_ROT_Z (1 << 5) +#define MAN_ROT_V (1 << 6) +#define MAN_ROT_T (1 << 7) +#define MAN_ROT_C (MAN_ROT_X | MAN_ROT_Y | MAN_ROT_Z | MAN_ROT_V | MAN_ROT_T) + +#define MAN_SCALE_X (1 << 8) +#define MAN_SCALE_Y (1 << 9) +#define MAN_SCALE_Z (1 << 10) +#define MAN_SCALE_C (MAN_SCALE_X | MAN_SCALE_Y | MAN_SCALE_Z) /* color codes */ diff --git a/source/blender/makesdna/DNA_sequence_types.h b/source/blender/makesdna/DNA_sequence_types.h index d6c59456bd0..e7ab6f66408 100644 --- a/source/blender/makesdna/DNA_sequence_types.h +++ b/source/blender/makesdna/DNA_sequence_types.h @@ -252,7 +252,6 @@ typedef struct ColorBalanceModifierData { StripColorBalance color_balance; float color_multiply; - int pad; } ColorBalanceModifierData; typedef struct CurvesModifierData { -- cgit v1.2.3