[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [15206] branches/blender-2.47/source/ blender: branches/blender-2.47
Diego Borghetti
bdiego at gmail.com
Thu Jun 12 05:01:14 CEST 2008
Revision: 15206
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15206
Author: bdiego
Date: 2008-06-12 05:00:24 +0200 (Thu, 12 Jun 2008)
Log Message:
-----------
branches/blender-2.47
Merge from trunk:
Revision: 15187
Revision: 15195
Revision: 15197
Revision: 15199
Modified Paths:
--------------
branches/blender-2.47/source/blender/blenkernel/intern/library.c
branches/blender-2.47/source/blender/blenlib/intern/util.c
branches/blender-2.47/source/blender/python/BPY_interface.c
branches/blender-2.47/source/blender/src/editmesh_lib.c
branches/blender-2.47/source/blender/src/space.c
Modified: branches/blender-2.47/source/blender/blenkernel/intern/library.c
===================================================================
--- branches/blender-2.47/source/blender/blenkernel/intern/library.c 2008-06-12 00:05:26 UTC (rev 15205)
+++ branches/blender-2.47/source/blender/blenkernel/intern/library.c 2008-06-12 03:00:24 UTC (rev 15206)
@@ -934,7 +934,7 @@
}
/* if result > 21, strncpy don't put the final '\0' to name. */
- if( result > 21 ) name[21]= 0;
+ if( result >= 21 ) name[21]= 0;
result = check_for_dupid( lb, id, name );
strcpy( id->name+2, name );
Modified: branches/blender-2.47/source/blender/blenlib/intern/util.c
===================================================================
--- branches/blender-2.47/source/blender/blenlib/intern/util.c 2008-06-12 00:05:26 UTC (rev 15205)
+++ branches/blender-2.47/source/blender/blenlib/intern/util.c 2008-06-12 03:00:24 UTC (rev 15206)
@@ -879,6 +879,15 @@
if (relabase) {
BLI_convertstringcode(dir, relabase);
}
+
+ /* Note
+ * memmove( start, eind, strlen(eind)+1 );
+ * is the same as
+ * strcpy( start, eind );
+ * except strcpy should not be used because there is overlap,
+ * so use memmove's slightly more obscure syntax - Campbell
+ */
+
#ifdef WIN32
if(dir[0]=='.') { /* happens for example in FILE_MAIN */
get_default_root(dir);
@@ -892,17 +901,18 @@
if (dir[a] == '\\') break;
a--;
}
- strcpy(dir+a,eind);
+ memmove( dir+a, eind, strlen(eind)+1 );
+
}
while ( (start = strstr(dir,"\\.\\")) ){
eind = start + strlen("\\.\\") - 1;
- strcpy(start,eind);
+ memmove( start, eind, strlen(eind)+1 );
}
while ( (start = strstr(dir,"\\\\" )) ){
eind = start + strlen("\\\\") - 1;
- strcpy(start,eind);
+ memmove( start, eind, strlen(eind)+1 );
}
if((a = strlen(dir))){ /* remove the '\\' at the end */
@@ -925,17 +935,17 @@
if (dir[a] == '/') break;
a--;
}
- strcpy(dir+a,eind);
+ memmove( dir+a, eind, strlen(eind)+1 );
}
while ( (start = strstr(dir,"/./")) ){
eind = start + strlen("/./") - 1;
- strcpy(start,eind);
+ memmove( start, eind, strlen(eind)+1 );
}
while ( (start = strstr(dir,"//" )) ){
eind = start + strlen("//") - 1;
- strcpy(start,eind);
+ memmove( start, eind, strlen(eind)+1 );
}
if( (a = strlen(dir)) ){ /* remove all '/' at the end */
Modified: branches/blender-2.47/source/blender/python/BPY_interface.c
===================================================================
--- branches/blender-2.47/source/blender/python/BPY_interface.c 2008-06-12 00:05:26 UTC (rev 15205)
+++ branches/blender-2.47/source/blender/python/BPY_interface.c 2008-06-12 03:00:24 UTC (rev 15206)
@@ -1154,14 +1154,18 @@
if( sl->spacetype == SPACE_SCRIPT ) {
SpaceScript *sc = ( SpaceScript * ) sl;
- if( sc->script == script ) {
+ if( sc->script == script ) {
sc->script = NULL;
- if( sc ==
- area->spacedata.first ) {
- scrarea_queue_redraw
- ( area );
+ if( sc == area->spacedata.first ) {
+ scrarea_queue_redraw( area );
}
+
+ if (sc->but_refs) {
+ BPy_Set_DrawButtonsList(sc->but_refs);
+ BPy_Free_DrawButtonsList();
+ sc->but_refs = NULL;
+ }
}
}
}
Modified: branches/blender-2.47/source/blender/src/editmesh_lib.c
===================================================================
--- branches/blender-2.47/source/blender/src/editmesh_lib.c 2008-06-12 00:05:26 UTC (rev 15205)
+++ branches/blender-2.47/source/blender/src/editmesh_lib.c 2008-06-12 03:00:24 UTC (rev 15206)
@@ -2199,18 +2199,25 @@
if(!selected || ((!efa->h) && (efa->f & SELECT)))
totuv += (efa->v4)? 4: 3;
- if(totuv==0)
+ if(totuv==0) {
+ if (do_face_idx_array)
+ EM_free_index_arrays();
return NULL;
-
+ }
vmap= (UvVertMap*)MEM_callocN(sizeof(*vmap), "UvVertMap");
- if (!vmap)
+ if (!vmap) {
+ if (do_face_idx_array)
+ EM_free_index_arrays();
return NULL;
+ }
vmap->vert= (UvMapVert**)MEM_callocN(sizeof(*vmap->vert)*totverts, "UvMapVert*");
buf= vmap->buf= (UvMapVert*)MEM_callocN(sizeof(*vmap->buf)*totuv, "UvMapVert");
if (!vmap->vert || !vmap->buf) {
free_uv_vert_map(vmap);
+ if (do_face_idx_array)
+ EM_free_index_arrays();
return NULL;
}
Modified: branches/blender-2.47/source/blender/src/space.c
===================================================================
--- branches/blender-2.47/source/blender/src/space.c 2008-06-12 00:05:26 UTC (rev 15205)
+++ branches/blender-2.47/source/blender/src/space.c 2008-06-12 03:00:24 UTC (rev 15206)
@@ -2077,15 +2077,16 @@
vgroup_operation_with_menu();
}
}
- else if((G.qual==LR_SHIFTKEY))
+ else if((G.qual==LR_SHIFTKEY)) {
if(G.obedit) {
if(G.obedit->type==OB_MESH)
select_mesh_group_menu();
}
else if(ob && (ob->flag & OB_POSEMODE))
pose_select_grouped_menu();
- else
+ else if (ob)
select_object_grouped_menu();
+ }
else if((G.obedit==0) && G.qual==LR_ALTKEY) {
if(okee("Clear location")) {
clear_object('g');
@@ -6331,7 +6332,10 @@
SpaceNode *snode= (SpaceNode *)sl;
snode->nodetree= NULL;
}
-
+ else if(sl->spacetype==SPACE_SCRIPT) {
+ SpaceScript *sc = ( SpaceScript * ) sl;
+ sc->but_refs = NULL;
+ }
sl= sl->next;
}
More information about the Bf-blender-cvs
mailing list