US runners took both men's and women's 400-meter sprints at the Diamond League meeting at Crystal Palace, as Jeremy Wariner beat Jamaican world leader Jermaine Gonzales and Allyson Felix added a one-lap win to her 200 victory from the day before. In cool, windy weather not suited to sprinting, the 24-year-old Felix won a close battle Saturday in 50.79 seconds to hold off new European champion Tatyana Firova and American Debbie Dunn. That followed a comfortable win in her specialty, the 200, the day before. Firova of Russia finished well to come second in 50.84 and Dunn, the world leader this year, was third, 0.05 further back. Firova came back strongly in the last 50 but could not pass Felix. The Russian, a winner in Stockholm last week, still beat Dunn, who clocked a world-best time for 2010 of 49.64 in June. Wariner lagged early but pushed past Gonzales in the second, final turn and held off a late challenge to win in 44.67. Gonzales finished in 44.80 but still has the world's fastest time this year at 44.40. World women's 100 leader Carmelita Jeter was upset by fellow American Marshevet Myers, finishing five hundredths behind Myer's 11.01 performance. The shifting winds at the stadium in southeast London kept on making things tricky for athletes Saturday, hindering 110m hurdler David Oliver in his push to become the first to go under 13 seconds on British soil. He fell short with a still-fast 13.06, slower than his 13.02 from the heats earlier in the day. Wallace Spearmon of the US clinched his first Diamond League victory of the season, clocking 20.12 to win a low-quality 200. The 2005 world silver medalist finished well clear of second-place Churandy Martina of Netherlands Antilles, who ran 20.42. Norway's Jaysuma Ndure was third with 20.43. Mariya Savinova of Russia timed her finish to perfection to ease to victory in the women's 800 in 1 minute, 58.64 seconds. The European champion came through strongly in the final 70 to finish clear of second-place Janeth Jepkosgei of Kenya (1:59.16). Jemma Simpson gave the home crowd something to cheer about in chilly conditions by coming third, 0.10 further back. Jamaica's Kaliese Spencer climbed into first place in the Diamond Race for the 400 hurdles, crossing the line in 53.78 to claim a third straight Diamond League victory after successes in Gateshead and Monaco. Milcah Chemos of Kenya posted a meeting record in winning the women's 3,000 steeplechase, finishing quickly to pass Russia's Yuliya Zarudneva in the final 10 and clock 9:22.49. South African 400-meter runner Oscar Pistorius got loud applause as he set a new world disability record of 47.04 for the event, running on his artificial legs in a separate race against other amputees. Pistorius ran 46.93 seconds against able-bodied runners on Friday, coming up short in his effort to meet the qualifying standard for October's Commonwealth Games in India. In field events, Christian Cantwell of the US lost his first shot put event of the season, ending a 20-meet unbeaten run stretching back to September last year. Cantwell had been looking to join high jumper Blanka Vlasic on six victories out of six in the Diamond Race but could only throw 20.78 meters to finish third. Compatriot Reese Hoffa won the event with a season's best throw of 21.44. Yargelis Savigne of Cuba leapt 14.86 to win the women's triple jump and stay in front in the Diamond Race.