Substitute Nicky Adams rescued a point for high-flying Rotherham against 10-man Walsall as the Millers extended their unbeaten run to 12 games.

Milan Lalkovic put the visitors ahead, lifting a shot over Adam Collin.

Kari Arnason headed an excellent chance to equalise over the bar before Walsall had Ben Purkiss sent off for collecting two yellow cards.

And Adams made the Saddlers pay, firing in off the bar from Alex Revell's flick with two minutes left.

Rotherham boss Steve Evans told BBC Radio Sheffield:

"I think overall we're disappointed, aren't we? We probably lacked a yard, in the first half I think we lacked a little bit of quality, we lacked a little bit of composure.

"I think we had that in the second half. I think we laid siege to the box and normally we should have had a goal.

"But my biggest complaint of the afternoon is after five minutes in the first half. If that's not a penalty on Wes Thomas, we might as well give this game up.

"It's just like Kieran Agard's at Oldham - it's just a blatant penalty, but Rotherham United don't get penalties, as we know."

Walsall boss Dean Smith told BBC WM:

"Really good performance, deserved to win the game and a cruel deflection at the end has cost us, plus the sending off as well.

"A really well worked goal, I thought some of our football was terrific in the first half and opened them up from a great move and a really good finish.

"I thought we were excellent, nobody probably gave us a chance coming here with the run that they are on.

"They come thick and fast in this league but I'm pleased with what the players are doing, disappointed that we haven't got all three points especially with a deflected late goal, but pleased with the performance."

Lineup, Bookings (4) & Substitutions (5)

Rotherham United

  • 21 Collin
  • 02 Brindley (Adams - 77' )
  • 03 Skarz
  • 08 Frecklington
  • 04 Arnason
  • 20 Morgan
  • 22 Agard
  • 36 Smallwood Booked (O'Connor - 67' Booked )
  • 26 Thomas (Vuckic - 54' )
  • 09 Revell
  • 18 Pringle

Substitutes

  • 01 Shearer
  • 10 O'Connor
  • 15 Milsom
  • 25 Addison
  • 28 Vuckic
  • 35 Hitchcock
  • 37 Adams

Walsall

  • 01 O'Donnell
  • 02 Purkiss Dismissed after an earlier booking
  • 03 Taylor
  • 08 Mantom
  • 15 Chambers
  • 04 Butler
  • 29 Brandy
  • 07 Chambers
  • 10 Westcarr (Ngoo - 88' )
  • 25 Sawyers
  • 09 Lalkovic (Downing - 78' )

Substitutes

  • 06 Featherstone
  • 12 Downing
  • 16 Baxendale
  • 22 Roberts
  • 24 Hewitt
  • 26 McQuilkin
  • 30 Ngoo
Ref: Andy Woolmer
Att: 8,212

Match Stats

Shots

13 5

On target

3 3

Corners

8 1

Fouls

15 12

Live Text Commentary

Full time

Full Time Match ends, Rotherham United 1, Walsall 1.

90:00 +4:29 Full time

Full Time Second Half ends, Rotherham United 1, Walsall 1.

90:00 +2:54

Michael O'Connor (Rotherham United) wins a free kick in the defensive half.

90:00 +2:54

Foul by Romaine Sawyers (Walsall).

90:00 +2:09

Attempt saved. Lee Frecklington (Rotherham United) right footed shot from outside the box is saved in the top centre of the goal.

89:04 Booking

Booking Michael O'Connor (Rotherham United) is shown the yellow card.

88:50

Foul by Michael O'Connor (Rotherham United).

88:50

Febian Brandy (Walsall) wins a free kick in the defensive half.

88:26 Goal scored

Goal! Goal! Rotherham United 1, Walsall 1. Nicky Adams (Rotherham United) right footed shot from the right side of the box to the high centre of the goal. Assisted by Alex Revell.

87:10 Substitution

Substitution Substitution, Walsall. Michael Ngoo replaces Craig Westcarr.

85:54

Attempt missed. Nicky Adams (Rotherham United) header from the centre of the box is close, but misses to the left.

81:06

Michael O'Connor (Rotherham United) wins a free kick in the attacking half.

81:06

Foul by Sam Mantom (Walsall).

80:15

Foul by Alex Revell (Rotherham United).

80:15

(Walsall) wins a free kick in the attacking half.

80:00

Corner, Rotherham United. Conceded by Andrew Butler.

79:54

Attempt blocked. Alex Revell (Rotherham United) left footed shot from the centre of the box is blocked.

77:03 Substitution

Substitution Substitution, Walsall. Paul Downing replaces Milan Lalkovic.

76:32 Substitution

Substitution Substitution, Rotherham United. Nicky Adams replaces Richard Brindley.

73:55

Attempt saved. Michael O'Connor (Rotherham United) right footed shot from outside the box is saved in the top centre of the goal.

72:46 Dismissal

Dismissal Second yellow card to Ben Purkiss (Walsall).

72:37

Ben Pringle (Rotherham United) wins a free kick in the attacking half.

72:37

Foul by Ben Purkiss (Walsall).

71:54

Attempt saved. Romaine Sawyers (Walsall) right footed shot from the right side of the six yard box is saved in the centre of the goal.

70:00

Ben Purkiss (Walsall) wins a free kick on the left wing.

69:59

Foul by Alex Revell (Rotherham United).

69:40

Attempt blocked. Romaine Sawyers (Walsall) right footed shot from outside the box is blocked.

66:38 Substitution

Substitution Substitution, Rotherham United. Michael O'Connor replaces Richard Smallwood.

65:05

Attempt missed. Lee Frecklington (Rotherham United) right footed shot from outside the box misses to the right.

64:44

Corner, Rotherham United. Conceded by Andy Taylor.

63:29

Attempt missed. Romaine Sawyers (Walsall) right footed shot from the right side of the box misses to the left.

60:47

Kári Arnason (Rotherham United) wins a free kick in the defensive half.

60:47

Foul by Craig Westcarr (Walsall).

57:35

Corner, Rotherham United. Conceded by Ben Purkiss.

55:40

Attempt missed. Lee Frecklington (Rotherham United) right footed shot from more than 35 yards is too high.

53:41 Substitution

Substitution Substitution, Rotherham United. Haris Vuckic replaces Wes Thomas.

51:56

Attempt blocked. Joe Skarz (Rotherham United) left footed shot from the left side of the box is blocked.

51:16

Foul by Richard Smallwood (Rotherham United).

51:16

Romaine Sawyers (Walsall) wins a free kick in the defensive half.

47:44

Attempt missed. Kári Arnason (Rotherham United) header from the centre of the box is just a bit too high following a set piece situation.

47:11

Alex Revell (Rotherham United) wins a free kick on the left wing.

47:11

Foul by Sam Mantom (Walsall).

46:42 Booking

Booking Ben Purkiss (Walsall) is shown the yellow card.

45:00

Second Half begins Rotherham United 0, Walsall 1.

45:00 +3:00 Half time

Half Time First Half ends, Rotherham United 0, Walsall 1.

45:00 +1:07

Foul by Craig Morgan (Rotherham United).

45:00 +1:07

Febian Brandy (Walsall) wins a free kick in the defensive half.

42:00

Corner, Rotherham United. Conceded by Romaine Sawyers.

39:22

Corner, Rotherham United. Conceded by Milan Lalkovic.

38:45

Foul by Milan Lalkovic (Walsall).

38:45

Richard Brindley (Rotherham United) wins a free kick on the left wing.

36:34

Alex Revell (Rotherham United) wins a free kick in the defensive half.

36:34

Foul by Andrew Butler (Walsall).

35:13

Corner, Rotherham United. Conceded by James Chambers.

33:59

Corner, Walsall. Conceded by Richard Brindley.

33:00

Febian Brandy (Walsall) wins a free kick in the defensive half.

32:54

Foul by Lee Frecklington (Rotherham United).

32:08

Kieran Agard (Rotherham United) wins a free kick on the right wing.

32:08

Foul by Febian Brandy (Walsall).

31:14

Attempt missed. Lee Frecklington (Rotherham United) left footed shot from outside the box is too high.

31:06

Attempt blocked. Ben Pringle (Rotherham United) left footed shot from outside the box is blocked.

30:21

Corner, Rotherham United. Conceded by Andrew Butler.

29:46

Alex Revell (Rotherham United) wins a free kick in the defensive half.

29:46

Foul by Andrew Butler (Walsall).

29:31

Attempt saved. Andy Taylor (Walsall) right footed shot from outside the box is saved in the top centre of the goal.

28:54

Craig Westcarr (Walsall) wins a free kick in the defensive half.

28:54

Foul by Richard Smallwood (Rotherham United).

27:04

Foul by Kieran Agard (Rotherham United).

27:04

(Walsall) wins a free kick in the attacking half.

26:28

Ben Pringle (Rotherham United) wins a free kick on the left wing.

26:28

Foul by Adam Chambers (Walsall).

24:11 Booking

Booking Richard Smallwood (Rotherham United) is shown the yellow card.

24:00

Febian Brandy (Walsall) wins a free kick in the defensive half.

23:32

Foul by Richard Smallwood (Rotherham United).

20:32

Corner, Rotherham United. Conceded by Andrew Butler.

20:09

Richard Brindley (Rotherham United) wins a free kick in the defensive half.

20:09

Foul by Milan Lalkovic (Walsall).

19:14

Foul by Richard Smallwood (Rotherham United).

19:14

Romaine Sawyers (Walsall) wins a free kick in the attacking half.

18:36 Goal scored

Goal! Goal! Rotherham United 0, Walsall 1. Milan Lalkovic (Walsall) right footed shot from the centre of the box to the bottom left corner. Assisted by Romaine Sawyers.

17:40

Foul by Lee Frecklington (Rotherham United).

17:40

Romaine Sawyers (Walsall) wins a free kick in the defensive half.

16:48

Foul by Joe Skarz (Rotherham United).

16:48

Craig Westcarr (Walsall) wins a free kick on the right wing.

12:43

Attempt missed. Alex Revell (Rotherham United) right footed shot from outside the box is too high.

12:03

Foul by Richard Smallwood (Rotherham United).

12:03

Febian Brandy (Walsall) wins a free kick in the attacking half.

8:17

Foul by Wes Thomas (Rotherham United).

8:17

James Chambers (Walsall) wins a free kick in the defensive half.

6:40

Attempt missed. Alex Revell (Rotherham United) header from the centre of the box is close, but misses to the left.

3:01

Ben Pringle (Rotherham United) wins a free kick on the right wing.

3:01

Foul by Febian Brandy (Walsall).

0:37

Foul by Craig Morgan (Rotherham United).

0:37

Andrew Butler (Walsall) wins a free kick in the attacking half.

0:00

First Half begins.

0:00

Lineups are announced and players are warming up.

Live data and text provided by our data suppliers