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:
authorCampbell Barton <ideasman42@gmail.com>2011-10-26 07:26:52 +0400
committerCampbell Barton <ideasman42@gmail.com>2011-10-26 07:26:52 +0400
commit94f8e3198d713d4b27aff4594ee3ba7b8328691c (patch)
treeb8e8472b654eee407ef189099cb58229b656ca16 /source/blender
parent2e0d838bc9e7d787e59bdb2d7a7156e95dd6d647 (diff)
parent944b07f5b7339f45bfb0bded22f64458cca3980b (diff)
svn merge -r41266:41287 ^/trunk/blender
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/blenfont/intern/blf_lang.c1
-rw-r--r--source/blender/blenkernel/CMakeLists.txt9
-rw-r--r--source/blender/blenkernel/intern/mesh_validate.c51
-rw-r--r--source/blender/blenkernel/intern/writeffmpeg.c3
-rw-r--r--source/blender/blenlib/intern/string_utf8.c2
-rw-r--r--source/blender/editors/animation/keyingsets.c8
-rw-r--r--source/blender/editors/interface/interface_handlers.c20
-rw-r--r--source/blender/editors/space_text/text_ops.c2
-rw-r--r--source/blender/editors/space_view3d/drawmesh.c2
-rw-r--r--source/blender/ikplugin/CMakeLists.txt6
-rw-r--r--source/blender/ikplugin/SConscript5
-rw-r--r--source/blender/imbuf/CMakeLists.txt11
-rw-r--r--source/blender/makesrna/intern/rna_userdef.c1
13 files changed, 92 insertions, 29 deletions
diff --git a/source/blender/blenfont/intern/blf_lang.c b/source/blender/blenfont/intern/blf_lang.c
index 79610f9c10b..9548febab27 100644
--- a/source/blender/blenfont/intern/blf_lang.c
+++ b/source/blender/blenfont/intern/blf_lang.c
@@ -94,6 +94,7 @@ static const char *locales[] = {
"korean", "ko_KR",
"nepali", "ne_NP",
"persian", "fa_PE",
+ "indonesian", "id_ID"
};
void BLF_lang_init(void)
diff --git a/source/blender/blenkernel/CMakeLists.txt b/source/blender/blenkernel/CMakeLists.txt
index 83f9f014b0a..2f2811abd7e 100644
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@ -23,11 +23,6 @@
#
# ***** END GPL LICENSE BLOCK *****
-if(WITH_CODEC_FFMPEG)
- # FFMPEG gives warnigns which are hard to avoid across multiple versions.
- remove_strict_flags()
-endif()
-
set(INC
.
../avi
@@ -308,6 +303,10 @@ if(WITH_CODEC_FFMPEG)
${FFMPEG_INCLUDE_DIRS}
)
add_definitions(-DWITH_FFMPEG)
+
+ remove_strict_flags_file(
+ intern/writeffmpeg.c
+ )
endif()
if(WITH_PYTHON)
diff --git a/source/blender/blenkernel/intern/mesh_validate.c b/source/blender/blenkernel/intern/mesh_validate.c
index b3a9bf98d37..4fc843a3944 100644
--- a/source/blender/blenkernel/intern/mesh_validate.c
+++ b/source/blender/blenkernel/intern/mesh_validate.c
@@ -115,9 +115,10 @@ static int search_face_cmp(const void *v1, const void *v2)
}
+#define PRINT if(do_verbose) printf
+
int BKE_mesh_validate_arrays(Mesh *me, MVert *UNUSED(mverts), unsigned int totvert, MEdge *medges, unsigned int totedge, MFace *mfaces, unsigned int totface, const short do_verbose, const short do_fixes)
{
-# define PRINT if(do_verbose) printf
# define REMOVE_EDGE_TAG(_med) { _med->v2= _med->v1; do_edge_free= 1; }
# define REMOVE_FACE_TAG(_mf) { _mf->v3=0; do_face_free= 1; }
@@ -282,7 +283,6 @@ int BKE_mesh_validate_arrays(Mesh *me, MVert *UNUSED(mverts), unsigned int totve
PRINT("BKE_mesh_validate: finished\n\n");
-# undef PRINT
# undef REMOVE_EDGE_TAG
# undef REMOVE_FACE_TAG
@@ -303,12 +303,57 @@ int BKE_mesh_validate_arrays(Mesh *me, MVert *UNUSED(mverts), unsigned int totve
return (do_face_free || do_edge_free || do_edge_recalc);
}
+static int mesh_validate_customdata(CustomData *data, short do_verbose, const short do_fixes)
+{
+ int i= 0, has_fixes= 0;
+
+ while(i<data->totlayer) {
+ CustomDataLayer *layer= &data->layers[i];
+ int mask= 1 << layer->type;
+ int ok= 1;
+
+ if((mask&CD_MASK_MESH)==0) {
+ PRINT("CustomDataLayer type %d which isn't in CD_MASK_MESH is stored in Mehs structure\n", layer->type);
+
+ if(do_fixes) {
+ CustomData_free_layer(data, layer->type, 0, i);
+ ok= 0;
+ has_fixes= 1;
+ }
+ }
+
+ if(ok)
+ i++;
+ }
+
+ return has_fixes;
+}
+
+#undef PRINT
+
+int BKE_mesh_validate_all_customdata(CustomData *vdata, CustomData *edata, CustomData *fdata, short do_verbose, const short do_fixes)
+{
+ int vfixed= 0, efixed= 0, ffixed= 0;
+
+ vfixed= mesh_validate_customdata(vdata, do_verbose, do_fixes);
+ efixed= mesh_validate_customdata(edata, do_verbose, do_fixes);
+ ffixed= mesh_validate_customdata(fdata, do_verbose, do_fixes);
+
+ return vfixed || efixed || ffixed;
+}
+
int BKE_mesh_validate(Mesh *me, int do_verbose)
{
+ int layers_fixed= 0, arrays_fixed= 0;
+
if(do_verbose) {
printf("MESH: %s\n", me->id.name+2);
}
- return BKE_mesh_validate_arrays(me, me->mvert, me->totvert, me->medge, me->totedge, me->mface, me->totface, do_verbose, TRUE);
+
+ layers_fixed= BKE_mesh_validate_all_customdata(&me->vdata, &me->edata, &me->fdata, do_verbose, TRUE);
+ arrays_fixed= BKE_mesh_validate_arrays(me, me->mvert, me->totvert, me->medge, me->totedge, me->mface, me->totface, do_verbose, TRUE);
+
+ return layers_fixed || arrays_fixed;
}
int BKE_mesh_validate_dm(DerivedMesh *dm)
diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c
index bdca3c8e618..da1412dac0d 100644
--- a/source/blender/blenkernel/intern/writeffmpeg.c
+++ b/source/blender/blenkernel/intern/writeffmpeg.c
@@ -1102,7 +1102,7 @@ IDProperty *ffmpeg_property_add(RenderData *rd, char * type, int opt_index, int
idp_type = IDP_FLOAT;
break;
case FF_OPT_TYPE_STRING:
- val.str = " ";
+ val.str = (char *)" ";
idp_type = IDP_STRING;
break;
case FF_OPT_TYPE_CONST:
@@ -1377,4 +1377,3 @@ void ffmpeg_verify_image_type(RenderData *rd)
}
#endif
-
diff --git a/source/blender/blenlib/intern/string_utf8.c b/source/blender/blenlib/intern/string_utf8.c
index a9c28be6663..f8cdc3ec873 100644
--- a/source/blender/blenlib/intern/string_utf8.c
+++ b/source/blender/blenlib/intern/string_utf8.c
@@ -319,6 +319,8 @@ int BLI_str_utf8_size(const char *p)
UTF8_COMPUTE (c, mask, len);
+ (void)mask; /* quiet warning */
+
return len;
}
diff --git a/source/blender/editors/animation/keyingsets.c b/source/blender/editors/animation/keyingsets.c
index 95324554a06..3b65e777200 100644
--- a/source/blender/editors/animation/keyingsets.c
+++ b/source/blender/editors/animation/keyingsets.c
@@ -731,10 +731,10 @@ EnumPropertyItem *ANIM_keying_sets_enum_itemf (bContext *C, PointerRNA *UNUSED(p
* - these are listed in the order in which they were defined for the active scene
*/
if (scene->keyingsets.first) {
- for (ks= scene->keyingsets.first; ks; ks= ks->next) {
+ for (ks= scene->keyingsets.first; ks; ks= ks->next, i++) {
if (ANIM_keyingset_context_ok_poll(C, ks)) {
item_tmp.identifier= item_tmp.name= ks->name;
- item_tmp.value= i++;
+ item_tmp.value= i;
RNA_enum_item_add(&item, &totitem, &item_tmp);
}
}
@@ -745,11 +745,11 @@ EnumPropertyItem *ANIM_keying_sets_enum_itemf (bContext *C, PointerRNA *UNUSED(p
/* builtin Keying Sets */
i= -1;
- for (ks= builtin_keyingsets.first; ks; ks= ks->next) {
+ for (ks= builtin_keyingsets.first; ks; ks= ks->next, i--) {
/* only show KeyingSet if context is suitable */
if (ANIM_keyingset_context_ok_poll(C, ks)) {
item_tmp.identifier= item_tmp.name= ks->name;
- item_tmp.value= i--;
+ item_tmp.value= i;
RNA_enum_item_add(&item, &totitem, &item_tmp);
}
}
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 9d8e2f33f5c..e49cb4898d9 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -1944,18 +1944,26 @@ static void ui_do_but_textedit(bContext *C, uiBlock *block, uiBut *but, uiHandle
if((event->ascii || event->utf8_buf[0]) && (retval == WM_UI_HANDLER_CONTINUE)) {
char ascii = event->ascii;
+ const char *utf8_buf= event->utf8_buf;
/* exception that's useful for number buttons, some keyboard
numpads have a comma instead of a period */
- if(ELEM3(but->type, NUM, NUMABS, NUMSLI))
- if(event->type == PADPERIOD && ascii == ',')
+ if(ELEM3(but->type, NUM, NUMABS, NUMSLI)) { /* could use data->min*/
+ if(event->type == PADPERIOD && ascii == ',') {
ascii = '.';
+ utf8_buf= NULL; /* force ascii fallback */
+ }
+ }
- if(event->utf8_buf[0]) {
+ if(utf8_buf && utf8_buf[0]) {
+ int utf8_buf_len= BLI_str_utf8_size(utf8_buf);
/* keep this printf until utf8 is well tested */
- printf("%s: utf8 char '%.*s'\n", __func__, BLI_str_utf8_size(event->utf8_buf), event->utf8_buf);
- // strcpy(event->utf8_buf, "12345");
- changed= ui_textedit_type_buf(but, data, event->utf8_buf, BLI_str_utf8_size(event->utf8_buf));
+ if (utf8_buf_len != 1) {
+ printf("%s: utf8 char '%.*s'\n", __func__, utf8_buf_len, utf8_buf);
+ }
+
+ // strcpy(utf8_buf, "12345");
+ changed= ui_textedit_type_buf(but, data, event->utf8_buf, utf8_buf_len);
}
else {
changed= ui_textedit_type_ascii(but, data, ascii);
diff --git a/source/blender/editors/space_text/text_ops.c b/source/blender/editors/space_text/text_ops.c
index b200a6269f1..ffcf2606a04 100644
--- a/source/blender/editors/space_text/text_ops.c
+++ b/source/blender/editors/space_text/text_ops.c
@@ -2224,7 +2224,7 @@ static int scroll_invoke(bContext *C, wmOperator *op, wmEvent *event)
text_update_character_width(st);
tsc->old[0] = event->x;
- tsc->old[1] = event->x;
+ tsc->old[1] = event->y;
/* Sensitivity of scroll set to 4pix per line/char */
tsc->delta[0] = (event->x - event->prevx)*st->cwidth/4;
tsc->delta[1] = (event->y - event->prevy)*st->lheight/4;
diff --git a/source/blender/editors/space_view3d/drawmesh.c b/source/blender/editors/space_view3d/drawmesh.c
index ec114fbfcde..91088e35405 100644
--- a/source/blender/editors/space_view3d/drawmesh.c
+++ b/source/blender/editors/space_view3d/drawmesh.c
@@ -227,7 +227,7 @@ static int set_draw_settings_cached(int clearcache, MTFace *texface, Material *m
static int c_lit;
Object *litob = NULL; //to get mode to turn off mipmap in painting mode
- int backculled = 0;
+ int backculled = GEMAT_BACKCULL;
int alphablend = 0;
int textured = 0;
int lit = 0;
diff --git a/source/blender/ikplugin/CMakeLists.txt b/source/blender/ikplugin/CMakeLists.txt
index bde6f78df8b..87b0c6c671a 100644
--- a/source/blender/ikplugin/CMakeLists.txt
+++ b/source/blender/ikplugin/CMakeLists.txt
@@ -49,7 +49,7 @@ set(SRC
if(WITH_IK_ITASC)
add_definitions(-DWITH_IK_ITASC)
list(APPEND INC
- ../../../extern/Eigen2
+ ../../../extern/Eigen3
../../../intern/itasc
)
list(APPEND SRC
@@ -57,4 +57,8 @@ if(WITH_IK_ITASC)
)
endif()
+if(WIN32)
+ add_definitions(-DEIGEN_DONT_ALIGN_STATICALLY)
+endif()
+
blender_add_lib(bf_ikplugin "${SRC}" "${INC}" "${INC_SYS}")
diff --git a/source/blender/ikplugin/SConscript b/source/blender/ikplugin/SConscript
index f60c42f8dc9..4cff3399fdc 100644
--- a/source/blender/ikplugin/SConscript
+++ b/source/blender/ikplugin/SConscript
@@ -4,8 +4,11 @@ defs = []
sources = env.Glob('intern/*.c') + env.Glob('intern/*.cpp')
incs = '#/intern/guardedalloc #/intern/iksolver/extern ../makesdna ../blenlib'
-incs += ' ../blenkernel ../include ../ikplugin #/intern/itasc #/extern/Eigen2'
+incs += ' ../blenkernel ../include ../ikplugin #/intern/itasc #/extern/Eigen3'
defs.append('WITH_IK_ITASC')
+if env['PLATFORM'] == 'win32':
+ defs.append('EIGEN_DONT_ALIGN_STATICALLY')
+
env.BlenderLib ( 'bf_ikplugin', sources, Split(incs), defs, libtype=['core','player'], priority=[180, 190] )
diff --git a/source/blender/imbuf/CMakeLists.txt b/source/blender/imbuf/CMakeLists.txt
index 1b190ae96de..a03d6ce280d 100644
--- a/source/blender/imbuf/CMakeLists.txt
+++ b/source/blender/imbuf/CMakeLists.txt
@@ -23,11 +23,6 @@
#
# ***** END GPL LICENSE BLOCK *****
-if(WITH_CODEC_FFMPEG)
- # FFMPEG gives warnigns which are hard to avoid across multiple versions.
- remove_strict_flags()
-endif()
-
set(INC
.
../avi
@@ -160,6 +155,12 @@ if(WITH_CODEC_FFMPEG)
${FFMPEG_INCLUDE_DIRS}
)
add_definitions(-DWITH_FFMPEG)
+
+ remove_strict_flags_file(
+ intern/indexer.c
+ intern/util.c
+ intern/anim_movie.c
+ )
endif()
if(WITH_IMAGE_DDS)
diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c
index fbb8218bc85..898ee2b2623 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -2539,6 +2539,7 @@ static void rna_def_userdef_system(BlenderRNA *brna)
/*{25, "NEPALI", 0, "Nepali (नेपाली)", "ne_NP"},*/
/* using the utf8 flipped form of Persian (فارسی) */
{26, "PERSIAN", 0, "Persian (ﯽﺳﺭﺎﻓ)", "fa_PE"},
+ {27, "INDONESIAN", 0, "Indonesian (Bahasa indonesia)", "id_ID"},
{0, NULL, 0, NULL, NULL}};
srna= RNA_def_struct(brna, "UserPreferencesSystem", NULL);