Commit: 9787183e00a7cfd96e990ab7580c210bd096a58b
Author: Nicholas Bishop
Date:   Mon Feb 9 16:30:42 2015 +0100
Branches: cycles-ptex-49
https://developer.blender.org/rB9787183e00a7cfd96e990ab7580c210bd096a58b

Improve error handling and comment for Ptex resize

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

M       source/blender/blenkernel/BKE_ptex.h
M       source/blender/blenkernel/intern/bke_ptex.c
M       source/blender/editors/mesh/mesh_data.c

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

diff --git a/source/blender/blenkernel/BKE_ptex.h 
b/source/blender/blenkernel/BKE_ptex.h
index fa36b48..9fa1271 100644
--- a/source/blender/blenkernel/BKE_ptex.h
+++ b/source/blender/blenkernel/BKE_ptex.h
@@ -52,7 +52,10 @@ size_t BKE_ptex_bytes_per_texel(const MPtexTexelInfo 
texel_info);
 MPtexDataType BKE_ptex_texel_data_type(const MPtexTexelInfo texel_info);
 MPtexDataType BKE_loop_ptex_texel_data_type(const MLoopPtex *loop_ptex);
 
-void BKE_loop_ptex_resize(MLoopPtex *loop_ptex, const MPtexLogRes logres);
+/* Resize loop_ptex to the new logres
+ *
+ * Return true if successful, false otherwise. */
+bool BKE_loop_ptex_resize(MLoopPtex *loop_ptex, const MPtexLogRes logres);
 
 /* Copy regions from the image into loop_ptex
  *
diff --git a/source/blender/blenkernel/intern/bke_ptex.c 
b/source/blender/blenkernel/intern/bke_ptex.c
index 71b2a92..9676ac0 100644
--- a/source/blender/blenkernel/intern/bke_ptex.c
+++ b/source/blender/blenkernel/intern/bke_ptex.c
@@ -669,7 +669,7 @@ MPtexDataType BKE_loop_ptex_texel_data_type(const MLoopPtex 
*loop_ptex)
        return loop_ptex->texel_info.data_type;
 }
 
-void BKE_loop_ptex_resize(MLoopPtex *loop_ptex, const MPtexLogRes dst_logres)
+bool BKE_loop_ptex_resize(MLoopPtex *loop_ptex, const MPtexLogRes dst_logres)
 {
        MPtexRes src_res = bke_ptex_res_from_logres(loop_ptex->logres);
        MPtexRes dst_res = bke_ptex_res_from_logres(dst_logres);
@@ -711,9 +711,11 @@ void BKE_loop_ptex_resize(MLoopPtex *loop_ptex, const 
MPtexLogRes dst_logres)
                MEM_freeN(loop_ptex->rect);
                loop_ptex->rect = dst_rect;
                loop_ptex->logres = dst_logres;
+
+               return true;
        }
        else {
-               BLI_assert(!"TODO: BKE_loop_ptex_resize");
+               return false;
        }
 }
 
@@ -1091,10 +1093,10 @@ struct Image *BKE_ptex_mesh_image_get(struct Object 
*UNUSED(ob),
        return NULL;
 }
 
-// TODO: should return error
-void BKE_loop_ptex_resize(MLoopPtex *UNUSED(loop_ptex),
+bool BKE_loop_ptex_resize(MLoopPtex *UNUSED(loop_ptex),
                                                  const MPtexLogRes 
UNUSED(dst_logres))
 {
+       return false;
 }
 
 bool BKE_ptex_import(struct Mesh *UNUSED(me), const char *UNUSED(filepath))
diff --git a/source/blender/editors/mesh/mesh_data.c 
b/source/blender/editors/mesh/mesh_data.c
index 3ed4ef9..8fb8748 100644
--- a/source/blender/editors/mesh/mesh_data.c
+++ b/source/blender/editors/mesh/mesh_data.c
@@ -889,7 +889,10 @@ static int mesh_ptex_res_change_exec(bContext *C, 
wmOperator *op)
                                const MPtexLogRes new_logres =
                                        mesh_ptex_new_logres_calc(mode, 
lp->logres);
 
-                               BKE_loop_ptex_resize(lp, new_logres);
+                               if (!BKE_loop_ptex_resize(lp, new_logres)) {
+                                       /* TODO */
+                                       BLI_assert(!"Ptex resize failed");
+                               }
                        }
                }
        }

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

Reply via email to