A controversial traveling violation against Rick Mahorn with eight seconds to play, with the Washington Bullets trailing by a point, proved costly last night and the Detroit Pistons eked out a 108-105 victory before 6,595 at Capital Centre.

The Pistons, who lead the Central Division with a 5-2 mark, had gone ahead, 106-105, after two free throws by Kelly Tripucka with 12 seconds remaining.

The Bullets (3-4) then called time out. Assistant Coach Bernie Bickerstaff, directing the team in place of Gene Shue who was ejected in the third period, called a play designed to get the ball to Jeff Ruland.

John Lucas took the in-bounds pass from Greg Ballard at midcourt and quickly eluded Isiah Thomas. Lucas drove down the lane and, when Bill Laimbeer picked him up, Lucas passed off to Mahorn.

Mahorn caught the ball and appeared to go straight up for a layup. Laimbeer batted the ball out of bounds, but referee Bennett Salvatore called Mahorn for traveling.

"We were going to Jeff, but Detroit's defense broke down right away, so Luke took the ball right to the basket, which is what he was supposed to do," said Bickerstaff. "When they picked him up, he passed it off to Ricky. It was a smart basketball play by Lucas. I didn't see any travel."

"Laimbeer hit me and I didn't have control of the ball," said Mahorn, "So how could I have traveled?"

A videotape of the play showed that Mahorn never moved his pivot foot on the play.

"The official says I traveled, though, so it's over," said Mahorn.

After that play, the Bullets were forced to foul to get the ball back, so Mahorn grabbed Kent Benson with four seconds remaining. Benson made both free throws to account for the margin of victory.

Frank Johnson missed a desperation three-point shot at the final buzzer.

Tripucka led the Pistons with 27 points, eight rebounds and eight assists. John Long had 21 and Thomas 19. Thomas was in foul trouble most of the game, but scored 10 of his points in the final quarter, including eight straight to give the Pistons a 102-95 lead with 5:10 remaining.

Ballard was high for the Bullets with 27 points. Ruland, starting for injured Spencer Haywood, had 19 points, 17 rebounds and three blocked shots.

Lucas had his second straight good game for the Bullets, as he scored 14 points and had four assists in 21 minutes in relief of the slumping Frank Johnson.

Johnson had 11 assists, but made only two of eight shots and scored four points. The other starting guard, Bryan Warrick, went scorelss.

Billy Ray Bates, Warrick's backup, turned on the crowd with a couple of spectacular dunks and finished with a season-high 17 points and Don Collins, splitting his time between guard and forward, had 14 points.

Ruland had eight points and five rebounds in the first quarter and the Bullets led by three. They led, 57-54, at halftime. The score was tied three times and changed sides five times in the third period.

The Pistons were ahead, 83-80, when Shue, angered virtually the entire game by the officiating of Salvatore and Jess Kersey, blew up at Salvatore after the official failed to call traveling -- the call Shue wanted -- when Vinnie Johnson slipped and slid out of bounds.

Kersey already had given Shue a technical foul four minutes earlier, so when Salvatore called the second one, it meant Shue's automatic ejection, his first of the season.

Laimbeer made the foul shot and then Tripucka made a layup for an 86-80 Detroit lead.

The Pistons led by seven after Thomas' splurge in the final quarter, but eight straight Bullets points, four of them by Bates, gave them a 103-102 lead with 1:14 remaining.

Johnson made two free throws after he was fouled by Bates to give the Pistons a 104-103 lead, but Lucas countered that with a 16-footer and the Bullets had a 105-104 advantage with 30 seconds left.

The Pistons isolated Tripucka against Ballard to the left of the basket. As Tripucka drove by him, Ballard fouled, setting up the game-winning free throws.

The Pistons had lost 14 straight at Capital Centre before last night.