Commit: 7025a1bd7830c3bb58ea7f6a3dba8089869591eb
Author: Sergey Sharybin
Date:   Thu Dec 26 16:34:57 2013 +0600
https://developer.blender.org/rB7025a1bd7830c3bb58ea7f6a3dba8089869591eb

Fix T37945: Crash after undo

Issue was caused by some typos in readfile.c made in
original commit of image cache rewrite.

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

M       source/blender/blenloader/intern/readfile.c

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

diff --git a/source/blender/blenloader/intern/readfile.c 
b/source/blender/blenloader/intern/readfile.c
index 97e11d5..ac69394 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -1354,7 +1354,13 @@ void blo_end_image_pointer_map(FileData *fd, Main 
*oldmain)
        }
        
        for (; ima; ima = ima->id.next) {
-               ima->cache = newmclipadr(fd, ima->cache);
+               ima->cache = newimaadr(fd, ima->cache);
+               if (ima->cache == NULL) {
+                       ima->bindcode = 0;
+                       ima->tpageflag &= ~IMA_GLBIND_IS_DATA;
+                       ima->gputexture = NULL;
+                       ima->rr = NULL;
+               }
                for (i = 0; i < IMA_MAX_RENDER_SLOT; i++)
                        ima->renders[i] = newimaadr(fd, ima->renders[i]);
                
@@ -3277,7 +3283,7 @@ static void direct_link_image(FileData *fd, Image *ima)
                ima->cache = NULL;
 
        /* if not restored, we keep the binded opengl index */
-       if (!fd->imamap) {
+       if (!ima->cache) {
                ima->bindcode = 0;
                ima->tpageflag &= ~IMA_GLBIND_IS_DATA;
                ima->gputexture = NULL;

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to