FilterSearchAgain(): Avoid running into an invalid pointer access, when the physical deletion of "del" conflicts with following the next link in the cmdList in the loop's increment statement (only iff del == cmdList). Re-organized for into a while loop, to avoid redundant code.