diff -r bc84fd2b1476 -r 889b923bbb96 src/viewport.cpp --- a/src/viewport.cpp Sat Sep 27 22:19:34 2008 +0000 +++ b/src/viewport.cpp Sun Sep 28 12:38:56 2008 +0000 @@ -1333,15 +1333,12 @@ } } - /* Swap the two sprites ps and ps2 using bubble-sort algorithm. */ - ParentSpriteToDraw **psd3 = psd; - do { - ParentSpriteToDraw *temp = *psd3; - *psd3 = ps2; - ps2 = temp; - - psd3++; - } while (psd3 <= psd2); + /* Move ps2 in front of ps */ + ParentSpriteToDraw *temp = ps2; + for (ParentSpriteToDraw **psd3 = psd2; psd3 > psd; psd3--) { + *psd3 = *(psd3 - 1); + } + *psd = temp; } } }