[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33304] trunk/blender/source/blender/ blenkernel/intern/pointcache.c: Possible fix for the issue that came up in [#24890] Vector Blur node is Buggy
Janne Karhu
jhkarh at gmail.com
Thu Nov 25 12:38:57 CET 2010
Revision: 33304
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33304
Author: jhk
Date: 2010-11-25 12:38:55 +0100 (Thu, 25 Nov 2010)
Log Message:
-----------
Possible fix for the issue that came up in [#24890] Vector Blur node is Buggy
* Apparently some compilers don't respect proper operator precedence, so added some parentheses around to make inline conditionals unambiguous.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/pointcache.c
Modified: trunk/blender/source/blender/blenkernel/intern/pointcache.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/pointcache.c 2010-11-25 01:25:47 UTC (rev 33303)
+++ trunk/blender/source/blender/blenkernel/intern/pointcache.c 2010-11-25 11:38:55 UTC (rev 33304)
@@ -1230,7 +1230,7 @@
int i;
for(i=0; i<BPHYS_TOT_DATA; i++) {
- if(pf->data_types & (1<<i) && !ptcache_file_read(pf, pf->cur[i], 1, ptcache_data_size[i]))
+ if((pf->data_types & (1<<i)) && !ptcache_file_read(pf, pf->cur[i], 1, ptcache_data_size[i]))
return 0;
}
@@ -1241,7 +1241,7 @@
int i;
for(i=0; i<BPHYS_TOT_DATA; i++) {
- if(pf->data_types & (1<<i) && !ptcache_file_write(pf, pf->cur[i], 1, ptcache_data_size[i]))
+ if((pf->data_types & (1<<i)) && !ptcache_file_write(pf, pf->cur[i], 1, ptcache_data_size[i]))
return 0;
}
@@ -1295,14 +1295,14 @@
{
int data_types = pf->data_types;
- pf->cur[BPHYS_DATA_INDEX] = data_types & (1<<BPHYS_DATA_INDEX) ? &pf->data.index : NULL;
- pf->cur[BPHYS_DATA_LOCATION] = data_types & (1<<BPHYS_DATA_LOCATION) ? &pf->data.loc : NULL;
- pf->cur[BPHYS_DATA_VELOCITY] = data_types & (1<<BPHYS_DATA_VELOCITY) ? &pf->data.vel : NULL;
- pf->cur[BPHYS_DATA_ROTATION] = data_types & (1<<BPHYS_DATA_ROTATION) ? &pf->data.rot : NULL;
- pf->cur[BPHYS_DATA_AVELOCITY] = data_types & (1<<BPHYS_DATA_AVELOCITY) ? &pf->data.ave : NULL;
- pf->cur[BPHYS_DATA_SIZE] = data_types & (1<<BPHYS_DATA_SIZE) ? &pf->data.size : NULL;
- pf->cur[BPHYS_DATA_TIMES] = data_types & (1<<BPHYS_DATA_TIMES) ? &pf->data.times : NULL;
- pf->cur[BPHYS_DATA_BOIDS] = data_types & (1<<BPHYS_DATA_BOIDS) ? &pf->data.boids : NULL;
+ pf->cur[BPHYS_DATA_INDEX] = (data_types & (1<<BPHYS_DATA_INDEX)) ? &pf->data.index : NULL;
+ pf->cur[BPHYS_DATA_LOCATION] = (data_types & (1<<BPHYS_DATA_LOCATION)) ? &pf->data.loc : NULL;
+ pf->cur[BPHYS_DATA_VELOCITY] = (data_types & (1<<BPHYS_DATA_VELOCITY)) ? &pf->data.vel : NULL;
+ pf->cur[BPHYS_DATA_ROTATION] = (data_types & (1<<BPHYS_DATA_ROTATION)) ? &pf->data.rot : NULL;
+ pf->cur[BPHYS_DATA_AVELOCITY] = (data_types & (1<<BPHYS_DATA_AVELOCITY))? &pf->data.ave : NULL;
+ pf->cur[BPHYS_DATA_SIZE] = (data_types & (1<<BPHYS_DATA_SIZE)) ? &pf->data.size : NULL;
+ pf->cur[BPHYS_DATA_TIMES] = (data_types & (1<<BPHYS_DATA_TIMES)) ? &pf->data.times : NULL;
+ pf->cur[BPHYS_DATA_BOIDS] = (data_types & (1<<BPHYS_DATA_BOIDS)) ? &pf->data.boids : NULL;
}
static void ptcache_file_seek_pointers(int index, PTCacheFile *pf)
@@ -1329,7 +1329,7 @@
}
else {
for(i=0; i<BPHYS_TOT_DATA; i++)
- size += pf->data_types & (1<<i) ? ptcache_data_size[i] : 0;
+ size += (pf->data_types & (1<<i)) ? ptcache_data_size[i] : 0;
/* size of default header + data up to index */
fseek(pf->fp, 8 + 3*sizeof(int) + index * size, SEEK_SET);
@@ -1343,7 +1343,7 @@
int i;
for(i=0; i<BPHYS_TOT_DATA; i++)
- pm->cur[i] = data_types & (1<<i) ? pm->data[i] : NULL;
+ pm->cur[i] = ((data_types & (1<<i)) ? pm->data[i] : NULL);
}
void BKE_ptcache_mem_incr_pointers(PTCacheMem *pm)
@@ -1528,12 +1528,12 @@
if(pm) {
BKE_ptcache_mem_init_pointers(pm);
totpoint = pm->totpoint;
- index = pm->data_types & (1<<BPHYS_DATA_INDEX) ? pm->cur[BPHYS_DATA_INDEX] : &i;
+ index = ((pm->data_types & (1<<BPHYS_DATA_INDEX)) ? pm->cur[BPHYS_DATA_INDEX] : &i);
}
if(pm2) {
BKE_ptcache_mem_init_pointers(pm2);
totpoint2 = pm2->totpoint;
- index2 = pm2->data_types & (1<<BPHYS_DATA_INDEX) ? pm2->cur[BPHYS_DATA_INDEX] : &i;
+ index2 = ((pm2->data_types & (1<<BPHYS_DATA_INDEX)) ? pm2->cur[BPHYS_DATA_INDEX] : &i);
}
if(pf) {
if(ptcache_file_read_header_begin(pf)) {
@@ -1545,7 +1545,7 @@
else if(pid->read_header(pf)) {
ptcache_file_init_pointers(pf);
totpoint = pf->totpoint;
- index = pf->data_types & (1<<BPHYS_DATA_INDEX) ? &pf->data.index : &i;
+ index = ((pf->data_types & (1<<BPHYS_DATA_INDEX)) ? &pf->data.index : &i);
}
}
else {
@@ -1564,7 +1564,7 @@
else if(pid->read_header(pf2)) {
ptcache_file_init_pointers(pf2);
totpoint2 = pf2->totpoint;
- index2 = pf2->data_types & (1<<BPHYS_DATA_INDEX) ? &pf2->data.index : &i;
+ index2 = ((pf2->data_types & (1<<BPHYS_DATA_INDEX)) ? &pf2->data.index : &i);
}
}
else {
@@ -1608,14 +1608,14 @@
}
else {
if(pid->read_elem && (pm || ptcache_file_read_data(pf)))
- pid->read_elem(*index, pid->calldata, pm ? pm->cur : pf->cur, frs_sec, cfra1 ? (float)cfra1 : (float)cfrai, NULL);
+ pid->read_elem(*index, pid->calldata, (pm ? pm->cur : pf->cur), frs_sec, (cfra1 ? (float)cfra1 : (float)cfrai), NULL);
else if(pid->read_elem)
{ error = 1; break; }
}
if(pm) {
BKE_ptcache_mem_incr_pointers(pm);
- index = pm->data_types & (1<<BPHYS_DATA_INDEX) ? pm->cur[BPHYS_DATA_INDEX] : &i;
+ index = ((pm->data_types & (1<<BPHYS_DATA_INDEX)) ? pm->cur[BPHYS_DATA_INDEX] : &i);
}
}
}
@@ -1667,13 +1667,13 @@
if(pm2) {
BKE_ptcache_mem_incr_pointers(pm2);
- index2 = pm2->data_types & (1<<BPHYS_DATA_INDEX) ? pm2->cur[BPHYS_DATA_INDEX] : &i;
+ index2 = ((pm2->data_types & (1<<BPHYS_DATA_INDEX)) ? pm2->cur[BPHYS_DATA_INDEX] : &i);
}
}
}
if(pm || pf)
- ret = (pm2 || pf2) ? PTCACHE_READ_INTERPOLATED : PTCACHE_READ_EXACT;
+ ret = ((pm2 || pf2) ? PTCACHE_READ_INTERPOLATED : PTCACHE_READ_EXACT);
else if(pm2 || pf2) {
ret = PTCACHE_READ_OLD;
pid->cache->simframe = old_frame;
More information about the Bf-blender-cvs
mailing list