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:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-08-01 18:48:46 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2012-08-01 18:48:46 +0400
commit6e208ee887b003d0480a298812f279af525b1d0a (patch)
treec9a4d325386bc6adb2801d84ad06688fb409cc16 /source/blender/compositor/operations
parentbfbda2d2846ef7f1be601938dd425fe73c87502e (diff)
Replace scene pointer with scene name to prevent possible misusages
of scene in node in future.
Diffstat (limited to 'source/blender/compositor/operations')
-rw-r--r--source/blender/compositor/operations/COM_CompositorOperation.cpp6
-rw-r--r--source/blender/compositor/operations/COM_CompositorOperation.h5
2 files changed, 7 insertions, 4 deletions
diff --git a/source/blender/compositor/operations/COM_CompositorOperation.cpp b/source/blender/compositor/operations/COM_CompositorOperation.cpp
index 600ee5e1d7e..be9989fe2ab 100644
--- a/source/blender/compositor/operations/COM_CompositorOperation.cpp
+++ b/source/blender/compositor/operations/COM_CompositorOperation.cpp
@@ -49,6 +49,8 @@ CompositorOperation::CompositorOperation() : NodeOperation()
this->m_imageInput = NULL;
this->m_alphaInput = NULL;
this->m_depthInput = NULL;
+
+ this->m_sceneName[0] = '\0';
}
void CompositorOperation::initExecution()
@@ -68,7 +70,7 @@ void CompositorOperation::initExecution()
void CompositorOperation::deinitExecution()
{
if (!isBreaked()) {
- Render *re = RE_GetRender(this->m_scene->id.name);
+ Render *re = RE_GetRender(this->m_sceneName);
RenderResult *rr = RE_AcquireResultWrite(re);
if (rr) {
@@ -164,7 +166,7 @@ void CompositorOperation::determineResolution(unsigned int resolution[], unsigne
// check actual render resolution with cropping it may differ with cropped border.rendering
// FIX for: [31777] Border Crop gives black (easy)
- Render *re = RE_GetRender(this->m_scene->id.name);
+ Render *re = RE_GetRender(this->m_sceneName);
if (re) {
RenderResult *rr = RE_AcquireResultRead(re);
if (rr) {
diff --git a/source/blender/compositor/operations/COM_CompositorOperation.h b/source/blender/compositor/operations/COM_CompositorOperation.h
index 51a31105d5c..435e06152a6 100644
--- a/source/blender/compositor/operations/COM_CompositorOperation.h
+++ b/source/blender/compositor/operations/COM_CompositorOperation.h
@@ -25,13 +25,14 @@
#include "COM_NodeOperation.h"
#include "DNA_scene_types.h"
#include "BLI_rect.h"
+#include "BLI_string.h"
/**
* @brief Compositor output operation
*/
class CompositorOperation : public NodeOperation {
private:
- const Scene *m_scene;
+ char m_sceneName[MAX_ID_NAME];
/**
* @brief local reference to the scene
@@ -65,7 +66,7 @@ private:
public:
CompositorOperation();
void executeRegion(rcti *rect, unsigned int tileNumber);
- void setScene(const Scene *scene) { this->m_scene = scene; }
+ void setSceneName(const char *sceneName) { BLI_strncpy(this->m_sceneName, sceneName, sizeof(this->m_sceneName)); }
void setRenderData(const RenderData *rd) { this->m_rd = rd; }
bool isOutputOperation(bool rendering) const { return true; }
void initExecution();