George Thomas’ first-half goal condemned ten-man Walsall to a narrow defeat at already-relegated Coventry.
In a match of few chances, the decisive moment came on 39 minutes when Thomas side-footed home a short corner from the edge of the box.
Eoghan O'Connell saw a second-half header cleared off the line by Gael Bigirimana but the Celtic loanee was later sent off for two bookable offences.
The result keeps Walsall in 13th place.
In a match of few chances, the hosts threatened first on 12 minutes as Kevin Foley fired a right-footed drive straight at Craig MacGillivray after a Reuben Lameiras strike deflected into his path.
The Saddlers’ first attempt came from an unlikely source, Eoghan O’Connell venturing forward and playing a one-two with Andreas Makris before curling into the arms of Reice Charles-Cook.
Matt Preston perhaps should have given Walsall the lead just past the half-hour when he glanced a header wide from Joe Edwards’ dangerous free-kick.
Instead it was Coventry who broke the deadlock six minutes before the break, Thomas side-footing through a crowd of bodies and into the net from a short corner.
It could have been 2-0 moments later as Lameiras slipped in Sky Blues top scorer Thomas who could only shoot wide under pressure from the advancing MacGillivray.
Half-time: Coventry 1-0 Walsall
Unhappy with his team’s first-half display, Jon Whitney brought on Erhun Oztumer and George Dobson at half-time in an attempt to spark his stuttering side into life.
And the visitors improved momentarily, with O’Connell meeting Edwards’ 57th-minute corner with a powerful far-post header which Gael Bigirimana cleared off the line.
From another set-piece, Amadou Bakayoko sent an improvised effort straight into Charles-Cook’s midriff after good work from O’Connell.
At the other end, Marcus Tudgay volleyed wide and Thomas drilled well off target as Coventry looked to add to their slender lead.
Walsall’s hopes of a comeback were dealt a major blow on 70 minutes as O’Connell was sent off for two bookable offences – his second yellow for a foul on Thomas.
Although Edwards had penalty appeals waved away, the Saddlers struggled to create anything of note as Charles-Cook in the Coventry goal remained untroubled.
Vladimir Gadzhev scuffed a shot well wide late on but City comfortably held on for a fourth win in five home matches.
Full-time: Coventry 1-0 Walsall
Team: MacGillivray, O’Connor, O’Connell, Preston, McCarthy, Chambers, Osbourne (Dobson 45’), Morris (Candlin 69’), Edwards, Bakayoko, Makris (Oztumer 45’).
Subs not used: Ganley, Roberts, Hayles-Docherty, Jackson.
Attendance: 9,284 (932 Walsall supporters).