For match photos, scroll to Photostream above.
Titus Bramble denied Danny Graham an injury-time winner as Sunderland and Swansea City played out a goalless stalemate.
Defender Bramble blocked a shot from Graham, who was introduced as a 74th-minute replacement for Leon Britton, in the third minute of stoppage time to rescue a point.
In a classic game of two halves, the visitors failed to make the most of their dominance during the opening 45 minutes while Sunderland were equally unable to capitalise on a much-improved display after the break.
Midfielder Nathan Dyer passed up a glorious opportunity to win it for the visitors nine minutes from time when he fired wide and both sides ultimately had to settle for a point at the Stadium of Light.
Swansea's passing and movement was on show in the opening period and they created much of what was to be admired in the first half, although without troubling goalkeeper Simon Mignolet unduly.
His one save of note came with 17 minutes played when he had to get down smartly at the foot of his near post to turn away a snapshot from central defender Chico.
Striker Itay Shechter had already had appeals for a fifth-minute penalty waved away by referee Andre Marriner when Michu saw a shot deflected wide by Craig Gardner.
That was to become something of a theme with Dyer, who had earlier curled an effort high and wide, seeing a 15th-minute strike deflected out for a corner and, in the closing minutes of the half, O'Shea threw himself into the path of another Michu strike to protect his keeper.
Sunderland offered little in response, although goalkeeper Gerhard Tremmel had to be on his toes to beat away Sebastian Larsson's 21st-minute free-kick as it sped across his penalty area.
Gardner had a chance to test the German with a free-kick 25 yards out five minutes before the break but he uncharacteristically hit it high and wide.
Sunderland resumed after the break in determined mood and Chico had to hack away Larsson's cross as Sessegnon, who had been moved from a wide position in behind Fletcher before the break, prepared to pull the trigger.
Martin O'Neill's men had a far greater urgency about them with Gardner in particular causing problems down the right.
Jonathan de Guzman landed a curling free-kick on the roof of Mignolet's net with an hour gone but it took a timely interception by Ashley Williams to prevent David Vaughan picking out Fletcher in front of goal three minutes later.
But as substitute Ki Sung-yeung started to get to grips in the middle of the field, Swansea started to restore a measure of order and Mignolet had to field the midfielder's well-struck 69th-minute shot from distance.
Dyer could have snatched victory at the death, only to sidefoot wide after running onto Michu's intelligent pass.
Full-back Dwight Tiendalli whistled a shot across the face of goal in the final minute of normal time but Bramble had to get in a priceless block to deny Graham from point-blank range after Michu had headed down for him deep into injury time.
Sunderland manager Martin O’Neill: "We didn't play very well at all, the point was about as much as we deserved. We had no game at the weekend and I thought that would help us immensely, we rested up and got ourselves prepared.
"I thought Alfred [N'Diaye] was a little bit lost, overall we were second to the ball and allowed Swansea to dictate the pattern to the game and at home that wasn't good enough."
Swansea City manager Michael Laudrup: "In the first half we dominated completely, the only but was that we did not score. Second half was a little more 50/50 but without being dangerous.
"We had two huge chances with Nathan Dyer and in the last minute with Danny Graham, so maybe we should have won the game but my players' performance was a great reaction after the second leg against Chelsea.
"We play away against a good side and I didn't see one clear goal chance from Sunderland. [Danny Graham] did what he could [tonight] and that's all we can ask for. What is going to happen, I don't know."
|09 Feb 2013||v Arsenal (H)|
|02 Mar 2013||v Fulham (H)|
|02 Feb 2013||v Reading (A)|
|29 Apr 2013||v Aston Villa (A)|
|23 Feb 2013||v West Brom (A)|
|06 May 2013||v Stoke (H)|