PORTLAND, Ore. (AP) -- Brandon Roy didn't want to know if he was running a temperature. Despite feeling feverish, he was going to play anyway.
Good thing for the Trail Blazers.
Roy scored 24 points, including the go-ahead free throw with 2.3 seconds left, and Portland erased a 19-point deficit to beat the Atlanta Hawks 94-93 on Sunday.
"I didn't even ask the doctor," Roy said about his fever. "I just said, 'It's fine and I'm going to play.' He said some guys have their best games when they're under the weather so I said I would try and use that tonight, and I was able to have a good fourth quarter."
The victory snapped a two-game losing streak for Portland, which improved its record at the Rose Garden to 18-4.
Roy's layup with 1:13 to go made it 93-91, and after Joe Johnson missed a short jumper on the other end, Roy made another layup to tie it.
Under relentless pressure by Roy, Johnson's long jumper with 8.3 seconds left fell short. Then Roy tried a fadeaway jumper, but was fouled by Johnson.
The crowd at the Rose Garden gasped when Roy missed his first free throw. He made the second for a 94-93 lead, and Johnson's jumper as time ran out missed.
Blazers coach Nate McMillan had considered keeping Roy out of the game entirely.
"People wouldn't know it, but he might not have played today," McMillan said. "He was running a fever, his eyes were watery and [trainer] Jay Jensen had to give him liquids during the game."
Johnson led the Hawks with 19 points. Marvin Williams and Smith each had 17.
"It's frustrating, we know we are better than that," Williams said. "That's a very good Portland team, I'll tell you that. Very well coached and very good players. But we were up 15 to 20 pretty much the whole game and we didn't take advantage of it and they capitalized."
Aldridge had 16 points and eight rebounds for the Blazers.
The Blazers were coming off a rare loss at home, where they had won 12 straight. Before the 89-79 loss to Houston on Friday night, Portland hadn't lost at the Rose Garden since Nov. 28.
The Hawks are just 6-13 on the road, but were coming off a 99-90 victory at Seattle. That snapped a four-game losing streak overall, and a six-game skid on the road.
Atlanta came out looking eager to avenge a loss at home to the Trail Blazers on Monday, when Portland's Travis Outlaw hit a 20-foot jumper with one second left in overtime for the 111-109 win.
The Hawks led by as many as 18 points in the first half, shooting 51 percent from the floor. Anthony Johnson's 3-pointer from the corner made it 49-34, and the Hawks extended the lead when Joe Johnson made a layup and free throw to make it 52-34.
The Hawks led 52-37 at the half, and the Blazers -- who were shooting just 37.5 percent -- were drawing boos from the home crowd.
"I was so disappointed in the first half in how we were playing. These fans fill this building up to see us play hard," Roy said. "I was disappointed in our effort and I think in the second half we did a better job of giving them a good show."
The Blazers appeared to get a momentum shift going into the fourth quarter, when Outlaw's 3-pointer and Channing Frye's long jumper closed the margin to 73-63
The momentum was snuffed when Zaza Pachulia dunked to make it 79-65.
The Blazers managed to keep up, even though Atlanta seemed to have an answer every time they closed in. Portland still trailed by 14 points with 6:47 left in the game.
Outlaw's 3-pointer from the corner narrowed it again for the Blazers, at 83-75, but Williams answered with a long jumper for the Hawks to put the lead back into double digits.
After Roy made a free throw and a layup to close the game to 85-78, Anthony Johnson made a 3-pointer for the Hawks.
The Blazers have won 12 of the last 13 games against the Hawks. They had won seven straight home games in the series until last season, when the Hawks won 107-96. ... Atlanta's Salim Stoudamire went to Lake Oswego High School, just outside of Portland. ... The Blazers are 6-0 in games decided three points or less.