MILAN, Italy -- Roma narrowly won 1-0 at Fiorentina after extra time in the Italian Cup quarterfinals, after the home side hit the woodwork three times on Wednesday.
Mattia Destro, who missed several earlier chances, scored the only goal seven minutes into extra time. Teammate Daniele De Rossi had an earlier strike ruled out.
Alberto Aquilani, Borja Valero and Juan Cuadrado hit the woodwork for Fiorentina.
Roma midfielder Rodrigo Taddei was sent off three minutes from the end of extra time.
Fiorentina's Cuadrado and Roma's Dodo were also dismissed as a brawl broke out at the death. The fight continued as they walked down the tunnel.
Roma will meet Inter Milan in the semifinals. The winner will face either Juventus or Lazio in the final.
Both sides were eager to get back to winning ways after losing two Serie A games on the trot.
Roma had the better of the opening exchanges and De Rossi, who was given a rare start, headed a corner just wide in the seventh minute.
Destro went even closer for Roma on the half hour as he gathered Michael Bradley's pass and raced past three Fiorentina players before unleashing a diagonal effort which scraped the outside of the far post.
Fiorentina, which had barely had a sight of goal, could have taken the lead five minutes from halftime as former Roma midfielder Aquilani crashed a free kick off the crossbar.
Roma had a great chance immediately after the restart when Nenad Tomovic lost the ball and Destro released Alessandro Florenzi, but Fiorentina goalkeeper Neto pulled off a stunning save to spare his defender's blushes.
De Rossi thought he scored in the 79th but his effort was ruled out for offside.
Fiorentina had been guilty of poor defending all night and it again almost cost the home side when Gonzalo Rodriguez gave the ball away on the edge of his area but Destro blazed over the bar.
Both Fiorentina and Roma could have won it in stoppage time as first Valero hit the post before the visitors went down the other side of the pitch and Stefan Savic headed Destro's lob off the line with the last touch of normal time.
The deadlock was finally broken when Miralem Pjanic cut back Michael Bradley's pass for Destro to tap home from close range.
Fiorentina poured forward and almost equalized when Cuadrado volleyed off the post and then attempted to tap home the rebound only to see it parried by Roma goalkeeper Mauro Goicoechea.
There was an unseemly end to the match as first Taddei was sent off for a second yellow card after reacting following a clash with Valero.
Minutes later Cuadrado and Dodo got into a brawl and both were sent off. However, the fight continued as they walked off down the tunnel and they had to be separated again by officials and teammates.