diff options
author | Ton Roosendaal <ton@blender.org> | 2006-03-12 02:10:13 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2006-03-12 02:10:13 +0300 |
commit | 4e4cd9407d57c3fe31675eb2a2fbf8ea8472aa9a (patch) | |
tree | 49ec810502dd6e04408a38e969615fb47347c108 /source | |
parent | bad09bd2f91f07cc00bed5e59132efe038261fd0 (diff) |
Added security to vectorbuffer code... before it gets used, it checks
for leftover initialized max-speed values, and clears it. Also gives
a giant print then... I want to know when it happens, and howto redo!
(error print = "tsk tsk! PASS_VECTOR_MAX left in buffer...")
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/render/intern/source/zbuf.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/render/intern/source/zbuf.c b/source/blender/render/intern/source/zbuf.c index abc08ac24e1..4d6f0610ff5 100644 --- a/source/blender/render/intern/source/zbuf.c +++ b/source/blender/render/intern/source/zbuf.c @@ -2075,6 +2075,7 @@ void RE_zbuf_accumulate_vecblur(NodeBlurData *nbd, int xsize, int ysize, float * float *rectvz, *dvz, *dimg, *dvec1, *dvec2, *dz1, *dz2, *rectz, *minvecbufrect= NULL; float maxspeedsq= (float)nbd->maxspeed*nbd->maxspeed; int y, x, step, maxspeed=nbd->maxspeed, samples= nbd->samples; + int tsktsk= 0; char *rectmove, *dm; zbuf_alloc_span(&zspan, xsize, ysize); @@ -2091,6 +2092,16 @@ void RE_zbuf_accumulate_vecblur(NodeBlurData *nbd, int xsize, int ysize, float * rectdraw= MEM_mapallocT(sizeof(DrawBufPixel)*xsize*ysize, "rect draw"); zspan.rectp= (int *)rectdraw; + /* debug... check if PASS_VECTOR_MAX still is in buffers */ + dvec1= vecbufrect; + for(x= 4*xsize*ysize; x>0; x--, dvec1++) { + if(dvec1[0]==PASS_VECTOR_MAX) { + dvec1[0]= 0.0f; + tsktsk= 1; + } + } + if(tsktsk) printf("tsk tsk! PASS_VECTOR_MAX left in buffer...\n"); + /* min speed? then copy speedbuffer to recalculate speed vectors */ if(nbd->minspeed) { float minspeed= (float)nbd->minspeed; |