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
path: root/source
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2008-01-28 03:07:59 +0300
committerCampbell Barton <ideasman42@gmail.com>2008-01-28 03:07:59 +0300
commitb115bd677b1aed98f9534898dfaf09f8c6fc0adc (patch)
tree14ee641c1797e759979ddaaefacf3fbd5de36ad4 /source
parenta1f3af3d59a9063923ccd2632e8cefcf7fa6f681 (diff)
some bugs with previous renderlayer api
Diffstat (limited to 'source')
-rw-r--r--source/blender/python/api2_2x/sceneRender.c11
-rw-r--r--source/blender/python/api2_2x/sceneRender.h2
2 files changed, 7 insertions, 6 deletions
diff --git a/source/blender/python/api2_2x/sceneRender.c b/source/blender/python/api2_2x/sceneRender.c
index 224a3dc0d2b..1e0997630a1 100644
--- a/source/blender/python/api2_2x/sceneRender.c
+++ b/source/blender/python/api2_2x/sceneRender.c
@@ -1776,7 +1776,7 @@ PyObject *RenderData_getRenderLayers(BPy_RenderData * self)
list = PyList_New(0);
for(srl= self->renderContext->layers.first; srl; srl= srl->next) {
- layer = RenderLayer_CreatePyObject( srl );
+ layer = RenderLayer_CreatePyObject( self->scene, srl );
PyList_Append(list, layer);
Py_DECREF(layer);
}
@@ -1821,7 +1821,7 @@ PyObject *RenderData_removeRenderLayer(BPy_RenderData * self, BPy_RenderLayer *v
PyObject *RenderData_addRenderLayer(BPy_RenderData * self ) {
scene_add_render_layer(self->scene);
- return RenderLayer_CreatePyObject( self->renderContext->layers.last );
+ return RenderLayer_CreatePyObject( self->scene, self->renderContext->layers.last );
}
@@ -3209,9 +3209,9 @@ static int RenderLayer_setLayers( BPy_RenderLayer * self, PyObject * value, void
laymask = ( unsigned int )PyInt_AS_LONG( value );
- if( laymask <= 0 )
+ if((laymask < 0) || (!zlay && laymask == 0))
return EXPP_ReturnIntError( PyExc_ValueError,
- "layer value cannot be zero or below" );
+ "layer value too low" );
if (zlay) {
self->renderLayer->lay_zmask= laymask & ((1<<20) - 1);
@@ -3569,7 +3569,7 @@ PyTypeObject RenderLayer_Type = {
/* BPy_RenderData Callbacks */
/***************************************************************************/
-PyObject *RenderLayer_CreatePyObject( struct SceneRenderLayer * renderLayer )
+PyObject *RenderLayer_CreatePyObject( struct Scene * scene, struct SceneRenderLayer * renderLayer )
{
BPy_RenderLayer *py_renderlayer;
@@ -3581,6 +3581,7 @@ PyObject *RenderLayer_CreatePyObject( struct SceneRenderLayer * renderLayer )
return ( NULL );
}
py_renderlayer->renderLayer = renderLayer;
+ py_renderlayer->scene = scene;
return ( ( PyObject * ) py_renderlayer );
}
diff --git a/source/blender/python/api2_2x/sceneRender.h b/source/blender/python/api2_2x/sceneRender.h
index 5127c05e271..1200bb87af2 100644
--- a/source/blender/python/api2_2x/sceneRender.h
+++ b/source/blender/python/api2_2x/sceneRender.h
@@ -58,5 +58,5 @@ typedef struct {
PyObject *Render_Init( void );
PyObject *RenderData_CreatePyObject( struct Scene *scene );
-PyObject *RenderLayer_CreatePyObject( struct SceneRenderLayer * renderLayer );
+PyObject *RenderLayer_CreatePyObject( struct Scene *scene, struct SceneRenderLayer * renderLayer );
#endif /* EXPP_SCENERENDER_H */