summaryrefslogtreecommitdiff
path: root/src/gravity.c
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2011-12-20 01:07:46 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2011-12-20 01:07:46 (GMT)
commitb1532d64332661cc119aec3da1c8254014044e9e (patch)
tree3decbdc3321f3e8d82455522be826038bbfe52a2 /src/gravity.c
parent138fa2f590e3a7eaa62dc54cf1149e912fb82ce8 (diff)
downloadpowder-b1532d64332661cc119aec3da1c8254014044e9e.zip
powder-b1532d64332661cc119aec3da1c8254014044e9e.tar.gz
Fix legacy grav_diff not being updated correctly
Diffstat (limited to 'src/gravity.c')
-rw-r--r--src/gravity.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gravity.c b/src/gravity.c
index 3af3e7a..7e7b37c 100644
--- a/src/gravity.c
+++ b/src/gravity.c
@@ -96,6 +96,11 @@ void gravity_update_async()
if(th_gravchanged)
{
+ #if !defined(GRAVFFT) && defined(GRAV_DIFF)
+ memcpy(gravy, th_gravy, (XRES/CELL)*(YRES/CELL)*sizeof(float));
+ memcpy(gravx, th_gravx, (XRES/CELL)*(YRES/CELL)*sizeof(float));
+ memcpy(gravp, th_gravp, (XRES/CELL)*(YRES/CELL)*sizeof(float));
+ #else
tmpf = gravy;
gravy = th_gravy;
th_gravy = tmpf;
@@ -107,6 +112,7 @@ void gravity_update_async()
tmpf = gravp;
gravp = th_gravp;
th_gravp = tmpf;
+ #endif
}
tmpf = gravmap;
@@ -121,6 +127,7 @@ void gravity_update_async()
//Apply the gravity mask
membwand(gravy, gravmask, (XRES/CELL)*(YRES/CELL)*sizeof(float), (XRES/CELL)*(YRES/CELL)*sizeof(unsigned));
membwand(gravx, gravmask, (XRES/CELL)*(YRES/CELL)*sizeof(float), (XRES/CELL)*(YRES/CELL)*sizeof(unsigned));
+ memset(gravmap, 0, (XRES/CELL)*(YRES/CELL)*sizeof(float));
}
}
@@ -344,7 +351,6 @@ void update_grav()
th_gravchanged = 0;
}
memcpy(th_ogravmap, th_gravmap, (XRES/CELL)*(YRES/CELL)*sizeof(float));
- memset(th_gravmap, 0, (XRES/CELL)*(YRES/CELL)*sizeof(float));
}
#else
@@ -404,7 +410,6 @@ void update_grav(void)
}
fin:
memcpy(th_ogravmap, th_gravmap, (XRES/CELL)*(YRES/CELL)*sizeof(float));
- memset(th_gravmap, 0, (XRES/CELL)*(YRES/CELL)*sizeof(float));
}
#endif