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>2014-02-13 16:31:02 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2014-02-13 16:31:02 +0400
commit910f4df45d5096c3ce326860b4d919a1964468ac (patch)
treeabc5cfacf8116eaa3fd6b476d86a79ed2186daf7 /source/blender/blenkernel/tracking_private.h
parent83617d24d536ec234bbe53b8b0fbcb76e7b5b3ee (diff)
Fix race condition between tracking thread and tracks map sync
This might have been a reason of bug T38281.
Diffstat (limited to 'source/blender/blenkernel/tracking_private.h')
-rw-r--r--source/blender/blenkernel/tracking_private.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/tracking_private.h b/source/blender/blenkernel/tracking_private.h
index 3245fe5fbd5..981b7951097 100644
--- a/source/blender/blenkernel/tracking_private.h
+++ b/source/blender/blenkernel/tracking_private.h
@@ -35,6 +35,8 @@
#ifndef __TRACKING_PRIVATE_H__
#define __TRACKING_PRIVATE_H__
+#include "BLI_threads.h"
+
struct GHash;
struct MovieTracking;
struct MovieTrackingMarker;
@@ -54,6 +56,9 @@ typedef struct TracksMap {
struct GHash *hash;
int ptr;
+
+ /* Spin lock is used to sync context during tracking. */
+ SpinLock spin_lock;
} TracksMap;
struct TracksMap *tracks_map_new(const char *object_name, bool is_camera, int num_tracks, int customdata_size);