Merged changes in the trunk up to revision 44612.

Conflicts resolved:
source/blender/blenloader/intern/readfile.c
source/blender/bmesh/bmesh.h
This commit is contained in:
2012-03-03 01:43:44 +00:00
381 changed files with 3130 additions and 3541 deletions

View File

@@ -2040,12 +2040,15 @@ static void bpy_bmesh_dealloc(BPy_BMesh *self)
{
BMesh *bm = self->bm;
BM_data_layer_free(bm, &bm->vdata, CD_BM_ELEM_PYPTR);
BM_data_layer_free(bm, &bm->edata, CD_BM_ELEM_PYPTR);
BM_data_layer_free(bm, &bm->pdata, CD_BM_ELEM_PYPTR);
BM_data_layer_free(bm, &bm->ldata, CD_BM_ELEM_PYPTR);
/* have have been freed by bmesh */
if (bm) {
BM_data_layer_free(bm, &bm->vdata, CD_BM_ELEM_PYPTR);
BM_data_layer_free(bm, &bm->edata, CD_BM_ELEM_PYPTR);
BM_data_layer_free(bm, &bm->pdata, CD_BM_ELEM_PYPTR);
BM_data_layer_free(bm, &bm->ldata, CD_BM_ELEM_PYPTR);
bm->py_handle = NULL;
bm->py_handle = NULL;
}
PyObject_DEL(self);
}
@@ -2384,6 +2387,7 @@ PyObject *BPy_BMesh_CreatePyObject(BMesh *bm)
else {
self = PyObject_New(BPy_BMesh, &BPy_BMesh_Type);
self->bm = bm;
bm->py_handle = self; /* point back */
BM_data_layer_add(bm, &bm->vdata, CD_BM_ELEM_PYPTR);
BM_data_layer_add(bm, &bm->edata, CD_BM_ELEM_PYPTR);

View File

@@ -2470,7 +2470,7 @@ static int pyrna_prop_collection_type_check(BPy_PropertyRNA *self, PyObject *val
}
/* note: currently this is a copy of 'pyrna_prop_collection_subscript' with
* large blocks commented, we may support slice/key indicies later */
* large blocks commented, we may support slice/key indices later */
static int pyrna_prop_collection_ass_subscript(BPy_PropertyRNA *self, PyObject *key, PyObject *value)
{
PYRNA_PROP_CHECK_INT(self);
@@ -6500,15 +6500,17 @@ static int deferred_register_prop(StructRNA *srna, PyObject *key, PyObject *item
py_ret = PyObject_Call(py_func, args_fake, py_kw);
Py_DECREF(args_fake); /* free's py_srna_cobject too */
if (py_ret) {
Py_DECREF(py_ret);
Py_DECREF(args_fake); /* free's py_srna_cobject too */
}
else {
/* _must_ print before decreffing args_fake */
PyErr_Print();
PyErr_Clear();
Py_DECREF(args_fake); /* free's py_srna_cobject too */
// PyC_LineSpit();
PyErr_Format(PyExc_ValueError,
"bpy_struct \"%.200s\" registration error: "