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-12-02 12:50:36 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2014-12-02 12:54:00 +0300
commita42638d265bbcd052dc61acc9fb403fc3d38c505 (patch)
tree7bc8008f8fd8ac1557f378b5b4f230bb79d40ea1
parenta5cd6a029ffc9d3e26f55ecf82da3ba5db2f63b8 (diff)
No need to free GPU images from BKE_image_free_buffers when in background mode
OpenGL in background mode is not used, so we can skip mutex lock and filling in the list which later is never used. This gives unmeasurable speedup by skipping mutex lock, plus solves memory leak in the background mode.
-rw-r--r--source/blender/blenkernel/intern/image.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c
index 5c4ebea7d78..36cd7e69601 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -273,7 +273,13 @@ void BKE_image_free_buffers(Image *ima)
ima->rr = NULL;
}
- GPU_free_image(ima);
+ if (!G.background) {
+ /* Background mode doesn't use opnegl,
+ * so we can avoid freeing GPU images and save some
+ * time by skipping mutex lock.
+ */
+ GPU_free_image(ima);
+ }
ima->ok = IMA_OK;
}