[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56743] trunk/blender/source/blenderplayer /bad_level_call_stubs/stubs.c: BGE: I had the assert in stubs.c backwards.

Mitchell Stokes mogurijin at gmail.com
Mon May 13 06:08:17 CEST 2013


Revision: 56743
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56743
Author:   moguri
Date:     2013-05-13 04:08:16 +0000 (Mon, 13 May 2013)
Log Message:
-----------
BGE: I had the assert in stubs.c backwards. However, it looks like the Blenderplayer ends up making a bad level call on startup. So, I've added a way to easily turn the asserts on and off (default to off) to allow people to still hunt down bad level calls without interfering with other people's debug builds.

Modified Paths:
--------------
    trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c

Modified: trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c
===================================================================
--- trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c	2013-05-13 03:45:55 UTC (rev 56742)
+++ trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c	2013-05-13 04:08:16 UTC (rev 56743)
@@ -33,11 +33,19 @@
 
 #ifdef WITH_GAMEENGINE
 #include <stdlib.h>
-#include <assert.h>
 #include "DNA_listBase.h"
 #include "BLI_utildefines.h"
 #include "RNA_types.h"
 
+#define ASSERT_STUBS 0
+#if ASSERT_STUBS
+#include <assert.h>
+#define STUB_ASSERT(x) (assert(x))
+#else
+#define STUB_ASSERT(x)
+#endif
+
+
 struct ARegion;
 struct ARegionType;
 struct BMEditMesh;
@@ -130,435 +138,435 @@
 struct wmWindowManager;
 
 /*new render funcs */
-void EDBM_selectmode_set(struct BMEditMesh *em) {assert(true);}
-void EDBM_mesh_load(struct Object *ob) {assert(true);}
-void EDBM_mesh_make(struct ToolSettings *ts, struct Scene *scene, struct Object *ob) {assert(true);}
-void EDBM_mesh_normals_update(struct BMEditMesh *em) {assert(true);}
+void EDBM_selectmode_set(struct BMEditMesh *em) {STUB_ASSERT(0);}
+void EDBM_mesh_load(struct Object *ob) {STUB_ASSERT(0);}
+void EDBM_mesh_make(struct ToolSettings *ts, struct Scene *scene, struct Object *ob) {STUB_ASSERT(0);}
+void EDBM_mesh_normals_update(struct BMEditMesh *em) {STUB_ASSERT(0);}
 void *g_system;
 
-float *RE_RenderLayerGetPass(struct RenderLayer *rl, int passtype) {assert(true); return (float *) NULL;}
-float RE_filter_value(int type, float x) {assert(true); return 0.0f;}
-struct RenderLayer *RE_GetRenderLayer(struct RenderResult *rr, const char *name) {assert(true); return (struct RenderLayer *)NULL;}
+float *RE_RenderLayerGetPass(struct RenderLayer *rl, int passtype) {STUB_ASSERT(0); return (float *) NULL;}
+float RE_filter_value(int type, float x) {STUB_ASSERT(0); return 0.0f;}
+struct RenderLayer *RE_GetRenderLayer(struct RenderResult *rr, const char *name) {STUB_ASSERT(0); return (struct RenderLayer *)NULL;}
 
 /* zbuf.c stub */
-void antialias_tagbuf(int xsize, int ysize, char *rectmove) {assert(true);}
-void RE_zbuf_accumulate_vecblur(struct NodeBlurData *nbd, int xsize, int ysize, float *newrect, float *imgrect, float *vecbufrect, float *zbufrect) {assert(true);}
+void antialias_tagbuf(int xsize, int ysize, char *rectmove) {STUB_ASSERT(0);}
+void RE_zbuf_accumulate_vecblur(struct NodeBlurData *nbd, int xsize, int ysize, float *newrect, float *imgrect, float *vecbufrect, float *zbufrect) {STUB_ASSERT(0);}
 
 /* imagetexture.c stub */
-void ibuf_sample(struct ImBuf *ibuf, float fx, float fy, float dx, float dy, float *result) {assert(true);}
+void ibuf_sample(struct ImBuf *ibuf, float fx, float fy, float dx, float dy, float *result) {STUB_ASSERT(0);}
 
 /* texture.c */
-int multitex_thread(struct Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, struct TexResult *texres, short thread, short which_output) {assert(true); return 0;}
-int multitex_ext(struct Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, struct TexResult *texres) {assert(true); return 0;}
-int multitex_ext_safe(struct Tex *tex, float *texvec, struct TexResult *texres) {assert(true); return 0;}
-int multitex_nodes(struct Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, struct TexResult *texres, short thread, short which_output, struct ShadeInput *shi, struct MTex *mtex) {assert(true); return 0;}
+int multitex_thread(struct Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, struct TexResult *texres, short thread, short which_output) {STUB_ASSERT(0); return 0;}
+int multitex_ext(struct Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, struct TexResult *texres) {STUB_ASSERT(0); return 0;}
+int multitex_ext_safe(struct Tex *tex, float *texvec, struct TexResult *texres) {STUB_ASSERT(0); return 0;}
+int multitex_nodes(struct Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, struct TexResult *texres, short thread, short which_output, struct ShadeInput *shi, struct MTex *mtex) {STUB_ASSERT(0); return 0;}
 
-struct Material *RE_init_sample_material(struct Material *orig_mat, struct Scene *scene) {assert(true); return (struct Material *)NULL;}
-void RE_free_sample_material(struct Material *mat) {assert(true);}
+struct Material *RE_init_sample_material(struct Material *orig_mat, struct Scene *scene) {STUB_ASSERT(0); return (struct Material *)NULL;}
+void RE_free_sample_material(struct Material *mat) {STUB_ASSERT(0);}
 void RE_sample_material_color(struct Material *mat, float color[3], float *alpha, const float volume_co[3], const float surface_co[3],
-                              int face_index, short hit_quad, struct DerivedMesh *orcoDm, struct Object *ob) {assert(true);}
+                              int face_index, short hit_quad, struct DerivedMesh *orcoDm, struct Object *ob) {STUB_ASSERT(0);}
 
 /* nodes */
-struct RenderResult *RE_GetResult(struct Render *re) {assert(true); return (struct RenderResult *) NULL;}
-struct Render *RE_GetRender(const char *name) {assert(true); return (struct Render *) NULL;}
+struct RenderResult *RE_GetResult(struct Render *re) {STUB_ASSERT(0); return (struct RenderResult *) NULL;}
+struct Render *RE_GetRender(const char *name) {STUB_ASSERT(0); return (struct Render *) NULL;}
 
 /* blenkernel */
-void RE_FreeRenderResult(struct RenderResult *res) {assert(true);}
-void RE_FreeAllRenderResults(void) {assert(true);}
-struct RenderResult *RE_MultilayerConvert(void *exrhandle, int rectx, int recty) {assert(true); return (struct RenderResult *) NULL;}
-void RE_GetResultImage(struct Render *re, struct RenderResult *rr) {assert(true);}
-int RE_RenderInProgress(struct Render *re) {assert(true); return 0;}
-struct Scene *RE_GetScene(struct Render *re) {assert(true); return (struct Scene *) NULL;}
-void RE_Database_Free(struct Render *re) {assert(true);}
-void RE_FreeRender(struct Render *re) {assert(true);}
-void RE_DataBase_GetView(struct Render *re, float mat[4][4]) {assert(true);}
-int externtex(struct MTex *mtex, float *vec, float *tin, float *tr, float *tg, float *tb, float *ta) {assert(true); return 0;}
-float texture_value_blend(float tex, float out, float fact, float facg, int blendtype, int flip) {assert(true); return 0.0f;}
-void texture_rgb_blend(float *in, float *tex, float *out, float fact, float facg, int blendtype) {assert(true);}
+void RE_FreeRenderResult(struct RenderResult *res) {STUB_ASSERT(0);}
+void RE_FreeAllRenderResults(void) {STUB_ASSERT(0);}
+struct RenderResult *RE_MultilayerConvert(void *exrhandle, int rectx, int recty) {STUB_ASSERT(0); return (struct RenderResult *) NULL;}
+void RE_GetResultImage(struct Render *re, struct RenderResult *rr) {STUB_ASSERT(0);}
+int RE_RenderInProgress(struct Render *re) {STUB_ASSERT(0); return 0;}
+struct Scene *RE_GetScene(struct Render *re) {STUB_ASSERT(0); return (struct Scene *) NULL;}
+void RE_Database_Free(struct Render *re) {STUB_ASSERT(0);}
+void RE_FreeRender(struct Render *re) {STUB_ASSERT(0);}
+void RE_DataBase_GetView(struct Render *re, float mat[4][4]) {STUB_ASSERT(0);}
+int externtex(struct MTex *mtex, float *vec, float *tin, float *tr, float *tg, float *tb, float *ta) {STUB_ASSERT(0); return 0;}
+float texture_value_blend(float tex, float out, float fact, float facg, int blendtype, int flip) {STUB_ASSERT(0); return 0.0f;}
+void texture_rgb_blend(float *in, float *tex, float *out, float fact, float facg, int blendtype) {STUB_ASSERT(0);}
 char stipple_quarttone[1]; //GLubyte stipple_quarttone[128]
-double elbeemEstimateMemreq(int res, float sx, float sy, float sz, int refine, char *retstr) {assert(true); return 0.0f;}
-struct Render *RE_NewRender(const char *name) {assert(true); return (struct Render *) NULL;}
-void RE_SwapResult(struct Render *re, struct RenderResult **rr) {assert(true);}
-void RE_BlenderFrame(struct Render *re, struct Scene *scene, int frame) {assert(true);}
-int RE_WriteEnvmapResult(struct ReportList *reports, struct Scene *scene, struct EnvMap *env, const char *relpath, const char imtype, float layout[12]) {assert(true); return 0; }
+double elbeemEstimateMemreq(int res, float sx, float sy, float sz, int refine, char *retstr) {STUB_ASSERT(0); return 0.0f;}
+struct Render *RE_NewRender(const char *name) {STUB_ASSERT(0); return (struct Render *) NULL;}
+void RE_SwapResult(struct Render *re, struct RenderResult **rr) {STUB_ASSERT(0);}
+void RE_BlenderFrame(struct Render *re, struct Scene *scene, int frame) {STUB_ASSERT(0);}
+int RE_WriteEnvmapResult(struct ReportList *reports, struct Scene *scene, struct EnvMap *env, const char *relpath, const char imtype, float layout[12]) {STUB_ASSERT(0); return 0; }
 
 /* rna */
-float *give_cursor(struct Scene *scene, struct View3D *v3d) {assert(true); return (float *) NULL;}
-void WM_menutype_free(void) {assert(true);}
-void WM_menutype_freelink(struct MenuType *mt) {assert(true);}
-int WM_menutype_add(struct MenuType *mt) {assert(true); return 0;}
-int WM_operator_props_dialog_popup(struct bContext *C, struct wmOperator *op, int width, int height) {assert(true); return 0;}
-int WM_operator_confirm(struct bContext *C, struct wmOperator *op, const struct wmEvent *event) {assert(true); return 0;}
-struct MenuType *WM_menutype_find(const char *idname, int quiet) {assert(true); return (struct MenuType *) NULL;}
-void WM_operator_stack_clear(struct bContext *C) {assert(true);}
-void WM_operator_handlers_clear(struct bContext *C, struct wmOperatorType *ot) {assert(true);}
+float *give_cursor(struct Scene *scene, struct View3D *v3d) {STUB_ASSERT(0); return (float *) NULL;}
+void WM_menutype_free(void) {STUB_ASSERT(0);}
+void WM_menutype_freelink(struct MenuType *mt) {STUB_ASSERT(0);}
+int WM_menutype_add(struct MenuType *mt) {STUB_ASSERT(0); return 0;}
+int WM_operator_props_dialog_popup(struct bContext *C, struct wmOperator *op, int width, int height) {STUB_ASSERT(0); return 0;}
+int WM_operator_confirm(struct bContext *C, struct wmOperator *op, const struct wmEvent *event) {STUB_ASSERT(0); return 0;}
+struct MenuType *WM_menutype_find(const char *idname, int quiet) {STUB_ASSERT(0); return (struct MenuType *) NULL;}
+void WM_operator_stack_clear(struct bContext *C) {STUB_ASSERT(0);}
+void WM_operator_handlers_clear(struct bContext *C, struct wmOperatorType *ot) {STUB_ASSERT(0);}
 

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list