PORTLAND, Ore. -- Brandon Roy immediately started looking for an opportunity to redeem himself after he made a big mistake Thursday night.
He didn't have to wait very long.
LaMarcus Aldridge had 27 points and nine rebounds for the Blazers, who snapped a five-game losing streak to the Rockets in a game that featured three dramatic shots in the final 1.9 seconds.
Roy first hit a turnaround 21-footer that put the Blazers up 98-96 and sent a sold-out Rose Garden into a frenzy. But Yao Ming scored and drew a foul against Roy on the other end with 0.8 seconds left, then made the free throw to give Houston the lead.
"I was so disappointed with myself over that foul I just told Steve [Blake] to give me a chance to make up for it," Roy said.
Portland called timeout and Blake inbounded the ball to Roy, who swished the winner to send a charge through the delirious crowd.
"I saw it fall in the net and I was like, 'Wow, that was an unbelievable show," Roy said. "It was a blessing from above."
Roy finished 6-for-18 from the field and had 17 points for Portland, which last beat the Rockets on Dec. 20, 2006.
"We have to move on. We have a schedule to be played," Houston guard Rafer Alston said.
Portland led by as many as 10 in the fourth quarter but McGrady rallied the Rockets, and both teams had a chance to win it in regulation. Roy drove to the basket with 10.1 seconds left but Ron Artest got in front of him, causing him to kick the ball. McGrady couldn't convert an alley-oop inbound pass at the buzzer, sending the game to overtime tied at 90.
Blazers fans didn't get to see a long-awaited meeting between prized rookie center Greg Oden and Yao. Oden has been out since the first game with a sprained foot.
Yao, who was just 4-of-14 in Houston's 103-99 home loss to Boston on Tuesday, continued to struggle. He mad just four of 13 shots and had 14 points.
Rudy Fernandez scored five straight points in the fourth quarter to help Portland open an 81-71 lead.
But Artest hit a 3 at 7:02 and McGrady scored five straight points to cut the Trail Blazer's lead to 84-83.
Fernandez had 15 points for the Blazers. Aaron Brooks scored 14 for Houston.
Former Blazers star Jerome Kersey took to center court and told the crowd the team will dedicate the season to Kevin Duckworth, who played for Portland from 1987-93 and died Aug. 25 at age 44. The Rockets have been one of the best road teams in the league over the past two seasons, with back-to-back 24-17 records.