From 6aedad4bff8a455370d6319aafe4296859faee43 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 7 Oct 2013 16:48:26 +0000 Subject: [PATCH] fix for crash on load if the file was saved in editmesh, BKE_mesh_uv_cdlayer_rename_index was checking editmesh pointer before it was NULL'd by direct_link_mesh. --- CMakeLists.txt | 2 +- source/blender/blenloader/intern/readfile.c | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 831906e958d..8863c03bff4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -372,7 +372,7 @@ if(APPLE) endif() if(NOT CMAKE_OSX_DEPLOYMENT_TARGET) - set(CMAKE_OSX_DEPLOYMENT_TARGET "10.5" CACHE STRING "" FORCE) # 10.5 is our min. target, if you use higher sdk, weak linking happens + set(CMAKE_OSX_DEPLOYMENT_TARGET "10.5" CACHE STRING "" FORCE) # 10.5 is our min. target, if you use higher sdk, weak linking happens endif() if(NOT ${CMAKE_GENERATOR} MATCHES "Xcode") diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index fad0b709baf..b673246a38f 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -4164,12 +4164,6 @@ static void direct_link_mesh(FileData *fd, Mesh *mesh) direct_link_customdata(fd, &mesh->fdata, mesh->totface); direct_link_customdata(fd, &mesh->ldata, mesh->totloop); direct_link_customdata(fd, &mesh->pdata, mesh->totpoly); - - if (mesh->mloopuv || mesh->mtpoly) { - /* for now we have to ensure texpoly and mloopuv layers are aligned - * in the future we may allow non-aligned layers */ - BKE_mesh_cd_validate(mesh); - } mesh->bb = NULL; mesh->edit_btmesh = NULL; @@ -4179,6 +4173,12 @@ static void direct_link_mesh(FileData *fd, Mesh *mesh) mesh->totselect = 0; } + if (mesh->mloopuv || mesh->mtpoly) { + /* for now we have to ensure texpoly and mloopuv layers are aligned + * in the future we may allow non-aligned layers */ + BKE_mesh_cd_validate(mesh); + } + /* Multires data */ mesh->mr= newdataadr(fd, mesh->mr); if (mesh->mr) {