[Bf-blender-cvs] [b4f0d524733] blender-v2.93-release: Fix: crash when creating GPU texture from image fails

Brecht Van Lommel noreply at git.blender.org
Thu Apr 29 19:16:14 CEST 2021


Commit: b4f0d52473382d5f2339d75a391be0871dd86747
Author: Brecht Van Lommel
Date:   Thu Apr 29 18:28:25 2021 +0200
Branches: blender-v2.93-release
https://developer.blender.org/rBb4f0d52473382d5f2339d75a391be0871dd86747

Fix: crash when creating GPU texture from image fails

===================================================================

M	source/blender/blenkernel/intern/image_gpu.c

===================================================================

diff --git a/source/blender/blenkernel/intern/image_gpu.c b/source/blender/blenkernel/intern/image_gpu.c
index 8847b88d6f2..bb7495437bb 100644
--- a/source/blender/blenkernel/intern/image_gpu.c
+++ b/source/blender/blenkernel/intern/image_gpu.c
@@ -408,17 +408,19 @@ static GPUTexture *image_get_gpu_texture(Image *ima,
                                   store_premultiplied,
                                   limit_gl_texture_size);
 
-    GPU_texture_wrap_mode(*tex, true, false);
+    if (*tex) {
+      GPU_texture_wrap_mode(*tex, true, false);
 
-    if (GPU_mipmap_enabled()) {
-      GPU_texture_generate_mipmap(*tex);
-      if (ima) {
-        ima->gpuflag |= IMA_GPU_MIPMAP_COMPLETE;
+      if (GPU_mipmap_enabled()) {
+        GPU_texture_generate_mipmap(*tex);
+        if (ima) {
+          ima->gpuflag |= IMA_GPU_MIPMAP_COMPLETE;
+        }
+        GPU_texture_mipmap_mode(*tex, true, true);
+      }
+      else {
+        GPU_texture_mipmap_mode(*tex, false, true);
       }
-      GPU_texture_mipmap_mode(*tex, true, true);
-    }
-    else {
-      GPU_texture_mipmap_mode(*tex, false, true);
     }
   }
 
@@ -427,7 +429,9 @@ static GPUTexture *image_get_gpu_texture(Image *ima,
     BKE_image_release_ibuf(ima, ibuf_intern, NULL);
   }
 
-  GPU_texture_orig_size_set(*tex, ibuf_intern->x, ibuf_intern->y);
+  if (*tex) {
+    GPU_texture_orig_size_set(*tex, ibuf_intern->x, ibuf_intern->y);
+  }
 
   return *tex;
 }



More information about the Bf-blender-cvs mailing list