Match ends, Swansea City 0, West Ham United 0.
Swansea City remain in the Premier League relegation zone after they were held by a West Ham side who recorded a third straight goalless draw.
The managerless Swans dominated the first half as Ki Sung-yueng and Andre Ayew missed good chances.
Jack Cork had a spectacular volley saved by Adrian after the break, while Swansea appealed in vain for a penalty for a James Collins handball.
Swansea stay 18th, two points from safety, while West Ham remain eighth.
The Hammers had to settle for a fifth draw from six Premier League games, but the result will have been frustrating for the Swans, who have now won only one of their last 13 league matches.
Swans managerless but improving
With Swansea still searching for a successor to sacked manager Garry Monk, caretaker boss Alan Curtis was in charge for a second time.
Despite losing five of their previous six games, his side started with a pace and purpose belying their lowly league standing.
Swansea seemed to have recaptured their passing mastery of old but, with Ki's low drive blocked by Adrian and Ayew firing wide, they were guilty of a familiar failure to make their dominance count.
While Swansea's recent poor form had led to Monk's dismissal, West Ham were enduring a wobble of their own, having failed to win their last six league games.
Both their previous outings had ended 0-0, and Slaven Bilic's side lacked an attacking threat as they spent the majority of the match in their own half.
The Hammers were limited to two long-range attempts at goal from Mauro Zarate, both saved by Lukasz Fabianski.
Bodies on the line
Although West Ham lacked inspiration in attack, they defended stoutly.
Adrian made a fine save to push away Cork's whistling 20-yard volley, while centre-back Collins made a brave block to deny Ki.
Swansea's players thought the Wales defender had handled the ball, but referee Lee Mason dismissed their protests.
Man of the match - James Collins
What they said
Swansea City caretaker-manager Alan Curtis:
"I thought we played well. In terms of the possession we looked like the kind of Swansea team we've seen over the last couple of seasons, but we possibly lacked a cutting edge up front.
"We said the season started last week for us. At Manchester City we were a lot better, and that today was certainly better than the last few home games.
"I don't think we are a bottom three side. We are there, but in the quality of the last two performances, whoever does come in will be confident they can lift us up the table.
"For now, we have to prepare as normal. We will carry on until the chairman and the board tell us otherwise."
West Ham manager Slaven Bilic:
"It's a good point for us. I want to praise my team because they showed great spirit.
"It was a good collective performance. Exactly what I said when those injuries hit us big time a few weeks ago, the only way we can compensate is with teamwork.
"That is exactly what we've done in the last three games. Three clean sheets and three points. I really want to praise the guys."
The stats you need to know
- Swansea kept a clean sheet for the first time since September in the Premier League, ending a run of 10 games without one.
- West Ham have drawn three successive league games 0-0 for the first time in their history.
- The last Premier League team to do that were Burnley in September 2014 (also three games).
- The Swans have won none of their last seven Premier League home games at Liberty Stadium (D4 L3), failing to score in five of those matches.
- West Ham have won three and lost none of their last six Premier League games against Swansea.
- West Ham managed just 239 passes in total in this match, the lowest total they've mustered this campaign.
Swansea host West Brom on 26 December, with Albion just five points above the Swans, while West Ham are at bottom-of-the-table Aston Villa.
- 22RangelSubstituted forNaughtonat 69'minutes
- 24CorkSubstituted forShelveyat 73'minutes
- 4Ki Sung-yueng
- 23G Sigurdsson
- 10A AyewSubstituted forBarrowat 83'minutes
- 4SongSubstituted forObiangat 73'minutes
- 30AntonioSubstituted forJenkinsonat 85'minutesBooked at 87mins
- 10ZárateSubstituted forE Valenciaat 60'minutes
- 11E Valencia
- Lee Mason
- Shots on Target
Second Half ends, Swansea City 0, West Ham United 0.
Attempt blocked. Jonjo Shelvey (Swansea City) right footed shot from the centre of the box is blocked. Assisted by Kyle Naughton with a cross.
Delay over. They are ready to continue.
Delay in match Cheikhou Kouyaté (West Ham United) because of an injury.
Attempt missed. Enner Valencia (West Ham United) right footed shot from outside the box misses to the right. Assisted by Cheikhou Kouyaté.
Neil Taylor (Swansea City) wins a free kick in the attacking half.
Foul by Cheikhou Kouyaté (West Ham United).
Offside, West Ham United. Adrián tries a through ball, but Cheikhou Kouyaté is caught offside.
Carl Jenkinson (West Ham United) is shown the yellow card.
Attempt missed. James Collins (West Ham United) header from the centre of the box misses to the left. Assisted by Enner Valencia with a cross following a corner.
Substitution, West Ham United. Carl Jenkinson replaces Michail Antonio.
Corner, West Ham United. Conceded by Ashley Williams.
Attempt blocked. James Tomkins (West Ham United) left footed shot from the centre of the box is blocked.
Substitution, Swansea City. Modou Barrow replaces André Ayew.
Offside, West Ham United. Pedro Obiang tries a through ball, but Michail Antonio is caught offside.
Foul by Jonjo Shelvey (Swansea City).
Angelo Ogbonna (West Ham United) wins a free kick in the defensive half.
Attempt blocked. Leon Britton (Swansea City) right footed shot from outside the box is blocked.
Corner, Swansea City. Conceded by Michail Antonio.