[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57116] tags/blender-2.67b-release/blender : svn merge ^/trunk/ blender -c56977 -c56982 -c56990 -c56991 -c56994 -c57004 -c57009 -c57027 -c57043

Campbell Barton ideasman42 at gmail.com
Wed May 29 17:56:09 CEST 2013


Revision: 57116
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57116
Author:   campbellbarton
Date:     2013-05-29 15:56:09 +0000 (Wed, 29 May 2013)
Log Message:
-----------
svn merge ^/trunk/blender -c56977 -c56982 -c56990 -c56991 -c56994 -c57004 -c57009 -c57027 -c57043

Modified Paths:
--------------
    tags/blender-2.67b-release/blender/source/blender/blenkernel/intern/material.c
    tags/blender-2.67b-release/blender/source/blender/bmesh/intern/bmesh_walkers_impl.c
    tags/blender-2.67b-release/blender/source/blender/bmesh/tools/bmesh_bevel.c
    tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_layout.c
    tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_templates.c
    tags/blender-2.67b-release/blender/source/blender/editors/space_image/image_draw.c
    tags/blender-2.67b-release/blender/source/blender/editors/space_view3d/view3d_project.c
    tags/blender-2.67b-release/blender/source/blender/freestyle/intern/system/PseudoNoise.cpp
    tags/blender-2.67b-release/blender/source/blender/imbuf/intern/colormanagement.c
    tags/blender-2.67b-release/blender/source/blender/render/intern/source/pipeline.c
    tags/blender-2.67b-release/blender/source/blender/windowmanager/intern/wm_event_system.c

Property Changed:
----------------
    tags/blender-2.67b-release/blender/


Property changes on: tags/blender-2.67b-release/blender
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/ge_harmony:42255,42279-42282,42286,42302,42338,42349,42616,42620,42698-42699,42739,42753,42773-42774,42832,44568,44597-44598,44793-44794
/branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037,48089,48092,48551-48552,48679,48790,48792-48793,49076,49087,49292,49294,49466,49894,50052,50126,52854-52856,54573
/trunk/blender:56529-56532,56534,56537-56539,56572,56577,56581,56601,56605-56606,56620,56639,56643,56647-56648,56650-56651,56653-56654,56661-56663,56668,56670-56674,56676,56678-56680,56682,56688-56689,56698,56700,56707,56711,56735,56745,56747-56749,56755-56756,56759-56760,56763,56766-56767,56773,56778,56783-56785,56790-56791,56793,56800,56806-56807,56809,56815-56816,56820,56823,56826,56828,56830,56833-56834,56836,56839,56851,56857,56863,56865,56867-56868,56871-56873,56879-56882,56885,56890,56892,56894,56896-56898,56901-56902,56905-56908,56912,56930,56935,56943,56956-56957,56960,56967-56968,56971
   + /branches/ge_harmony:42255,42279-42282,42286,42302,42338,42349,42616,42620,42698-42699,42739,42753,42773-42774,42832,44568,44597-44598,44793-44794
/branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037,48089,48092,48551-48552,48679,48790,48792-48793,49076,49087,49292,49294,49466,49894,50052,50126,52854-52856,54573
/trunk/blender:56529-56532,56534,56537-56539,56572,56577,56581,56601,56605-56606,56620,56639,56643,56647-56648,56650-56651,56653-56654,56661-56663,56668,56670-56674,56676,56678-56680,56682,56688-56689,56698,56700,56707,56711,56735,56745,56747-56749,56755-56756,56759-56760,56763,56766-56767,56773,56778,56783-56785,56790-56791,56793,56800,56806-56807,56809,56815-56816,56820,56823,56826,56828,56830,56833-56834,56836,56839,56851,56857,56863,56865,56867-56868,56871-56873,56879-56882,56885,56890,56892,56894,56896-56898,56901-56902,56905-56908,56912,56930,56935,56943,56956-56957,56960,56967-56968,56971,56977,56982,56990-56991,56994,57004,57009,57027,57043

Modified: tags/blender-2.67b-release/blender/source/blender/blenkernel/intern/material.c
===================================================================
--- tags/blender-2.67b-release/blender/source/blender/blenkernel/intern/material.c	2013-05-29 15:51:12 UTC (rev 57115)
+++ tags/blender-2.67b-release/blender/source/blender/blenkernel/intern/material.c	2013-05-29 15:56:09 UTC (rev 57116)
@@ -1597,7 +1597,15 @@
 		mtex = ma->mtex[a];
 		if (mtex) {
 			ma->mtex[a] = MEM_dupallocN(mtex);
-			if (mtex->tex) id_us_plus((ID *)mtex->tex);
+			if (mtex->tex) {
+				/* first check this is in main (we may have loaded another file) [#35500] */
+				if (BLI_findindex(&G.main->tex, mtex->tex) != -1) {
+					id_us_plus((ID *)mtex->tex);
+				}
+				else {
+					ma->mtex[a]->tex = NULL;
+				}
+			}
 		}
 	}
 

Modified: tags/blender-2.67b-release/blender/source/blender/bmesh/intern/bmesh_walkers_impl.c
===================================================================
--- tags/blender-2.67b-release/blender/source/blender/bmesh/intern/bmesh_walkers_impl.c	2013-05-29 15:51:12 UTC (rev 57115)
+++ tags/blender-2.67b-release/blender/source/blender/bmesh/intern/bmesh_walkers_impl.c	2013-05-29 15:56:09 UTC (rev 57116)
@@ -648,7 +648,7 @@
 			} while (true);
 		}
 
-		if (owalk.is_single == false && bm_edge_is_single(l->e)) {
+		if (owalk.is_single == false && l && bm_edge_is_single(l->e)) {
 			l = NULL;
 		}
 

Modified: tags/blender-2.67b-release/blender/source/blender/bmesh/tools/bmesh_bevel.c
===================================================================
--- tags/blender-2.67b-release/blender/source/blender/bmesh/tools/bmesh_bevel.c	2013-05-29 15:51:12 UTC (rev 57115)
+++ tags/blender-2.67b-release/blender/source/blender/bmesh/tools/bmesh_bevel.c	2013-05-29 15:56:09 UTC (rev 57116)
@@ -310,6 +310,19 @@
 	return bev_create_ngon(bm, varr, v4 ? 4 : 3, facerep);
 }
 
+/* Calculate coordinates of a point a distance d from v on e->e and return it in slideco */
+static void slide_dist(EdgeHalf *e, BMVert *v, float d, float slideco[3])
+{
+	float dir[3], len;
+
+	sub_v3_v3v3(dir, v->co, BM_edge_other_vert(e->e, v)->co);
+	len = normalize_v3(dir);
+	if (d > len)
+		d = len - (float)(50.0 * BEVEL_EPSILON_D);
+	copy_v3_v3(slideco, v->co);
+	madd_v3_v3fl(slideco, dir, -d);
+}
+
 /*
  * Calculate the meeting point between the offset edges for e1 and e2, putting answer in meetco.
  * e1 and e2 share vertex v and face f (may be NULL) and viewed from the normal side of
@@ -324,13 +337,14 @@
                         int on_right, float meetco[3])
 {
 	float dir1[3], dir2[3], norm_v[3], norm_perp1[3], norm_perp2[3],
-	      off1a[3], off1b[3], off2a[3], off2b[3], isect2[3];
+	      off1a[3], off1b[3], off2a[3], off2b[3], isect2[3], ang;
 
 	/* get direction vectors for two offset lines */
 	sub_v3_v3v3(dir1, v->co, BM_edge_other_vert(e1->e, v)->co);
 	sub_v3_v3v3(dir2, BM_edge_other_vert(e2->e, v)->co, v->co);
 
-	if (angle_v3v3(dir1, dir2) < 100.0f * BEVEL_EPSILON) {
+	ang = angle_v3v3(dir1, dir2);
+	if (ang < 100.0f * BEVEL_EPSILON) {
 		/* special case: e1 and e2 are parallel; put offset point perp to both, from v.
 		 * need to find a suitable plane.
 		 * if offsets are different, we're out of luck: just use e1->offset */
@@ -344,6 +358,12 @@
 		madd_v3_v3fl(off1a, norm_perp1, e1->offset);
 		copy_v3_v3(meetco, off1a);
 	}
+	else if (fabs(ang - (float)M_PI) < 100.0f * BEVEL_EPSILON) {
+		/* special case e1 and e2 are antiparallel, so bevel is into
+		 * a zero-area face.  Just make the offset point on the
+		 * common line, at offset distance from v. */
+		slide_dist(e2, v, e2->offset, meetco);
+	}
 	else {
 		/* get normal to plane where meet point should be */
 		cross_v3_v3v3(norm_v, dir2, dir1);
@@ -391,7 +411,7 @@
 {
 	float dir1[3], dir2[3], dirmid[3], norm_perp1[3], norm_perp2[3],
 	      off1a[3], off1b[3], off2a[3], off2b[3], isect2[3], co[3],
-	      f1no[3], f2no[3];
+	      f1no[3], f2no[3], ang;
 	int iret;
 
 	/* get direction vectors for two offset lines */
@@ -416,10 +436,14 @@
 	madd_v3_v3fl(off2a, norm_perp2, e2->offset);
 	add_v3_v3v3(off2b, off2a, dir2);
 
-	if (angle_v3v3(dir1, dir2) < 100.0f * BEVEL_EPSILON) {
+	ang = angle_v3v3(dir1, dir2);
+	if (ang < 100.0f * BEVEL_EPSILON) {
 		/* lines are parallel; off1a is a good meet point */
 		copy_v3_v3(meetco, off1a);
 	}
+	else if (fabs(ang - (float)M_PI) < 100.0f * BEVEL_EPSILON) {
+		slide_dist(e2, v, e2->offset, meetco);
+	}
 	else {
 		iret = isect_line_line_v3(off1a, off1b, off2a, off2b, meetco, isect2);
 		if (iret == 0) {
@@ -469,19 +493,6 @@
 	madd_v3_v3fl(r, fdir, e->offset);
 }
 
-/* Calculate coordinates of a point a distance d from v on e->e and return it in slideco */
-static void slide_dist(EdgeHalf *e, BMVert *v, float d, float slideco[3])
-{
-	float dir[3], len;
-
-	sub_v3_v3v3(dir, v->co, BM_edge_other_vert(e->e, v)->co);
-	len = normalize_v3(dir);
-	if (d > len)
-		d = len - (float)(50.0 * BEVEL_EPSILON_D);
-	copy_v3_v3(slideco, v->co);
-	madd_v3_v3fl(slideco, dir, -d);
-}
-
 /* Calculate the point on e where line (co_a, co_b) comes closest to and return it in projco */
 static void project_to_edge(BMEdge *e, const float co_a[3], const float co_b[3], float projco[3])
 {

Modified: tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_layout.c
===================================================================
--- tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_layout.c	2013-05-29 15:51:12 UTC (rev 57115)
+++ tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_layout.c	2013-05-29 15:56:09 UTC (rev 57116)
@@ -1328,6 +1328,7 @@
 			char name_ui[MAX_ID_NAME];
 
 #if 0       /* this name is used for a string comparison and can't be modified, TODO */
+			/* if ever enabled, make name_ui be MAX_ID_NAME+1 */
 			name_uiprefix_id(name_ui, id);
 #else
 			BLI_strncpy(name_ui, id->name + 2, sizeof(name_ui));

Modified: tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_templates.c
===================================================================
--- tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_templates.c	2013-05-29 15:51:12 UTC (rev 57115)
+++ tags/blender-2.67b-release/blender/source/blender/editors/interface/interface_templates.c	2013-05-29 15:56:09 UTC (rev 57116)
@@ -151,7 +151,10 @@
 					continue;
 
 			if (BLI_strcasestr(id->name + 2, str)) {
-				char name_ui[MAX_ID_NAME];
+				/* +1 is needed because name_uiprefix_id used 3 letter prefix
+				 * followed by ID_NAME-2 characters from id->name
+				 */
+				char name_ui[MAX_ID_NAME + 1];
 				name_uiprefix_id(name_ui, id);
 
 				iconid = ui_id_icon_get((bContext *)C, id, template->preview);

Modified: tags/blender-2.67b-release/blender/source/blender/editors/space_image/image_draw.c
===================================================================
--- tags/blender-2.67b-release/blender/source/blender/editors/space_image/image_draw.c	2013-05-29 15:51:12 UTC (rev 57115)
+++ tags/blender-2.67b-release/blender/source/blender/editors/space_image/image_draw.c	2013-05-29 15:56:09 UTC (rev 57116)
@@ -783,7 +783,7 @@
 	Image *ima;
 	ImBuf *ibuf;
 	float zoomx, zoomy;
-	int show_viewer, show_render;
+	bool show_viewer, show_render, show_paint;
 	void *lock;
 
 	/* XXX can we do this in refresh? */
@@ -810,8 +810,9 @@
 	ima = ED_space_image(sima);
 	ED_space_image_get_zoom(sima, ar, &zoomx, &zoomy);
 
-	show_viewer = (ima && ima->source == IMA_SRC_VIEWER);
-	show_render = (show_viewer && ima->type == IMA_TYPE_R_RESULT);
+	show_viewer = (ima && ima->source == IMA_SRC_VIEWER) != 0;

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list