(svn r8276) -Fix

Change the signature of Swap() to be less error prone, i.e. pass the variables to be swapped by reference instead of passing pointers to the variables.
Just do Swap(x, y) instead of Swap(&x, &y). This prevents accidents when the variables are pointers.
This commit is contained in:
tron
2007-01-19 11:47:48 +00:00
parent 659adc7c42
commit 81e88a2a7c
6 changed files with 25 additions and 33 deletions

View File

@@ -932,11 +932,11 @@ start_at:
assert(tpf->nstack == 1 || tpf->nstack == 2 || tpf->nstack == 3);
if (tpf->nstack != 1) {
uint32 r = Random();
if (r&1) SwapT(&tpf->stack[0].track, &tpf->stack[1].track);
if (r & 1) Swap(tpf->stack[0].track, tpf->stack[1].track);
if (tpf->nstack != 2) {
TrackdirByte t = tpf->stack[2].track;
if (r&2) SwapT(&tpf->stack[0].track, &t);
if (r&4) SwapT(&tpf->stack[1].track, &t);
if (r & 2) Swap(tpf->stack[0].track, t);
if (r & 4) Swap(tpf->stack[1].track, t);
tpf->stack[2].first_track = tpf->stack[2].track = t;
}
tpf->stack[0].first_track = tpf->stack[0].track;