Bugfix: saved game engine runtimes failed to load library .blend
[blender.git] / source / blender / blenloader / intern / readfile.c
index 91e17c42da8ff7e69d34b8525439a0ac9b203ce0..6b720851b0d49d5290403848541c0c2c4c31e831 100644 (file)
@@ -970,9 +970,11 @@ FileData *blo_openblenderfile(char *name, BlendReadError *error_r)
        } else {
                FileData *fd = filedata_new();
                fd->gzfiledes = gzfile;
-               BLI_strncpy(fd->filename, name, sizeof(fd->filename));  // now only in use by library append
                fd->read = fd_read_gzip_from_file;
 
+               /* needed for library_append and read_libraries */
+               BLI_strncpy(fd->filename, name, sizeof(fd->filename));
+
                return blo_decode_and_check(fd, error_r);
        }
 }
@@ -9125,7 +9127,7 @@ static void read_libraries(FileData *basefd, ListBase *mainlist)
 
 /* reading runtime */
 
-BlendFileData *blo_read_blendafterruntime(int file, int actualsize, BlendReadError *error_r) 
+BlendFileData *blo_read_blendafterruntime(int file, char *name, int actualsize, BlendReadError *error_r) 
 {
        BlendFileData *bfd = NULL;
        FileData *fd = filedata_new();
@@ -9133,6 +9135,9 @@ BlendFileData *blo_read_blendafterruntime(int file, int actualsize, BlendReadErr
        fd->buffersize = actualsize;
        fd->read = fd_read_from_file;
 
+       /* needed for library_append and read_libraries */
+       BLI_strncpy(fd->filename, name, sizeof(fd->filename));
+
        fd = blo_decode_and_check(fd, error_r);
        if (!fd)
                return NULL;