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:
authorJulian Eisel <eiseljulian@gmail.com>2017-02-23 03:59:40 +0300
committerJulian Eisel <eiseljulian@gmail.com>2017-02-23 04:14:27 +0300
commit7359cc1060e43bf094d471d5a4bdbd56f672ddbf (patch)
tree612f1bd080941d7b0409de35b71c586302b12a6a /source/blender/editors/space_view3d/space_view3d.c
parent43299f9465aa7ae6ae66f70a70aaea455280e90a (diff)
Fix possible crash in various 3D View operators
Was actually harmeless and not crashing, but I'd say more or less only by luck: the NULL-check for region data would only evaluate to true for the correct 3D View region. However, if we were to add region data to a different region type in future, this would lead to undefined behavior if executed in the wrong region.
Diffstat (limited to 'source/blender/editors/space_view3d/space_view3d.c')
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index 964f4bcdd9c..e73cc507f3e 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -180,8 +180,8 @@ bool ED_view3d_context_user_region(bContext *C, View3D **r_v3d, ARegion **r_ar)
View3D *v3d = (View3D *)sa->spacedata.first;
if (ar) {
- RegionView3D *rv3d = ar->regiondata;
- if (rv3d && (rv3d->viewlock & RV3D_LOCKED) == 0) {
+ RegionView3D *rv3d;
+ if ((ar->regiontype == RGN_TYPE_WINDOW) && (rv3d = ar->regiondata) && (rv3d->viewlock & RV3D_LOCKED) == 0) {
*r_v3d = v3d;
*r_ar = ar;
return true;