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:
authorAntonioya <blendergit@gmail.com>2018-06-21 17:10:52 +0300
committerAntonio Vazquez <blendergit@gmail.com>2018-06-21 17:11:29 +0300
commitc45a3b80e2356a952248eaafaeeec48b28bcb0fd (patch)
treed82b50aa93606afb66ecf8df6ebe0d8adacb604e /source/blender/render
parentb350edc20750929ee132e5b78fa25221e893ffc3 (diff)
Fix T55555: Crash when select material properties
This error is only in Windows and Mac when select in properties the material tab. This commit revert dc856be8399242f4ee3a2ce0450b7ac5a20b35f6 Preview: Add own opengl context to render preview images.
Diffstat (limited to 'source/blender/render')
-rw-r--r--source/blender/render/extern/include/RE_pipeline.h2
-rw-r--r--source/blender/render/intern/include/render_types.h1
-rw-r--r--source/blender/render/intern/source/pipeline.c19
3 files changed, 1 insertions, 21 deletions
diff --git a/source/blender/render/extern/include/RE_pipeline.h b/source/blender/render/extern/include/RE_pipeline.h
index bde3c1c8cb3..a51e7af9d9d 100644
--- a/source/blender/render/extern/include/RE_pipeline.h
+++ b/source/blender/render/extern/include/RE_pipeline.h
@@ -312,10 +312,8 @@ void RE_draw_lock_cb (struct Render *re, void *handle, void (*f)(void *handle,
void RE_test_break_cb (struct Render *re, void *handle, int (*f)(void *handle));
void RE_current_scene_update_cb(struct Render *re, void *handle, void (*f)(void *handle, struct Scene *scene));
-/* TODO replace by a simple set and get draw manager. */
void RE_gl_context_create(Render *re);
void RE_gl_context_destroy(Render *re);
-void RE_gl_context_set(Render *re, void *gl_context);
void *RE_gl_context_get(Render *re);
void *RE_gwn_context_get(Render *re);
diff --git a/source/blender/render/intern/include/render_types.h b/source/blender/render/intern/include/render_types.h
index 134fa56f01c..34535fba1e0 100644
--- a/source/blender/render/intern/include/render_types.h
+++ b/source/blender/render/intern/include/render_types.h
@@ -161,7 +161,6 @@ struct Render {
/* TODO replace by a whole draw manager. */
void *gl_context;
void *gwn_context;
- bool gl_context_ownership;
};
/* **************** defines ********************* */
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index 14ef7a3cb94..361324bf07c 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -1030,13 +1030,10 @@ void RE_test_break_cb(Render *re, void *handle, int (*f)(void *handle))
/* ********* GL Context ******** */
-/* Create the gl context of the Render.
- * It will be free by the render itself. */
void RE_gl_context_create(Render *re)
{
/* Needs to be created in the main ogl thread. */
re->gl_context = WM_opengl_context_create();
- re->gl_context_ownership = true;
}
void RE_gl_context_destroy(Render *re)
@@ -1048,22 +1045,11 @@ void RE_gl_context_destroy(Render *re)
re->gwn_context = NULL;
}
if (re->gl_context) {
- if (re->gl_context_ownership) {
- WM_opengl_context_dispose(re->gl_context);
- }
+ WM_opengl_context_dispose(re->gl_context);
re->gl_context = NULL;
}
}
-/* Manually set the gl context of the Render.
- * It won't be free by the render itself. */
-void RE_gl_context_set(Render *re, void *gl_context)
-{
- BLI_assert(gl_context); /* Cannot set NULL */
- re->gl_context = gl_context;
- re->gl_context_ownership = false;
-}
-
void *RE_gl_context_get(Render *re)
{
return re->gl_context;
@@ -2646,9 +2632,6 @@ void RE_PreviewRender(Render *re, Main *bmain, Scene *sce)
RE_SetCamera(re, camera);
do_render_3d(re);
-
- /* Destroy the opengl context in the correct thread. */
- RE_gl_context_destroy(re);
}
/* note; repeated win/disprect calc... solve that nicer, also in compo */