diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2013-05-29 15:49:39 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2013-05-29 15:49:39 +0400 |
commit | 9e05f6571f824bd4a99bb4fe5af5ec15688a9649 (patch) | |
tree | 258cb4a162bdcad89b4cdbf5d5f86ad352ebd999 /source/blender/editors/space_view3d/view3d_fly.c | |
parent | e99801dc706b7ff4cea0656e408c20835638dd6b (diff) |
Make sure bool will always have the same size in C and C++
There were an issues with data structures defined in headers
and being used by both C and C++ on systems with stdbool
unavailable.
This happened because bool in this case will be defined as
unsigned int, which is 4 bytes. But C++'s bool is only 1
byte and this lead to alignment issues.
Now bool is always 1 byte, also made sure there's no situation
like bool foo = BitField & BitFlag, which could give overflow
issues. Use (BitField & BitFlag) != 0 instead.
Fixes #35553: Compositor broken (Backdrop & Preview)
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_fly.c')
-rw-r--r-- | source/blender/editors/space_view3d/view3d_fly.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/editors/space_view3d/view3d_fly.c b/source/blender/editors/space_view3d/view3d_fly.c index 5957f743665..642b1b936c4 100644 --- a/source/blender/editors/space_view3d/view3d_fly.c +++ b/source/blender/editors/space_view3d/view3d_fly.c @@ -1086,7 +1086,7 @@ static int flyApply_ndof(bContext *C, FlyInfo *fly) #if 0 bool do_rotate = (flag & NDOF_SHOULD_ROTATE) && (fly->pan_view == false); - bool do_translate = (flag & (NDOF_SHOULD_PAN | NDOF_SHOULD_ZOOM)); + bool do_translate = (flag & (NDOF_SHOULD_PAN | NDOF_SHOULD_ZOOM)) != 0; #endif bool do_rotate = (fly->pan_view == false); |