Match ends, Morton 1, St. Johnstone 3.
Scottish League Cup: Greenock Morton 1-3 St Johnstone
St Johnstone came from behind to secure a League Cup semi-final place and deny Morton their first last-four spot in the tournament in 36 years.
The Premiership visitors had the best of the first half but fell behind in 52 minutes to Denny Johnstone's 10-yard finish from Conor Pepper's cross.
But the Championship side conceded a penalty when Ross Forbes handled in the box and Steven MacLean rifled home.
Michael O'Halloran and Chris Kane completed Saints' Cappielow comeback.
The Perth side, who knocked Rangers out in the last round, go into the semi-final draw at Hampden on 9 November along with Ross County and the winners of the ties between Hearts and Celtic on Wednesday and next week's quarter-final between Hibernian and Dundee United.
Tommy Wright's side were first to threaten when, in the sixth minute, Graham Cummins headed a Liam Craig corner off the bar and right-back Joe Shaughnessy and Cummins both subsequently came close.
Morton looked dangerous on the break and midfielder Forbes strode forward before drilling a shot from 30 yards just past Alan Mannus' left-hand post.
Liam Craig's long-distance drive skimmed Derek Gaston's Morton crossbar in the 42nd minute but the Ton almost stung St Johnstone seconds before the break when Johnstone headed a Forbes free-kick inches wide.
Six minutes after the break, as the rain got heavier, Morton stole into the lead as the Perth defence slept.
Pepper picked out Johnstone and the 20-year-old striker, on loan from Birmingham City, flashed his shot first-time high past Mannus.
However, Forbes inexplicably handled a Simon Lappin corner, referee Craig Thomson pointed to the spot and MacLean slammed the ball under Gaston.
Two minutes later Saints were ahead when O'Halloran turned and twisted before sending a low drive from just inside the box past Gaston and into the far corner of the net.
The home side pushed forward in the final stages after Jon Scullion and Michael Tidser replace Pepper and Bobby Barr, but from a poor Morton corner St Johnstone broke brilliantly through O'Halloran and he set up Kane who curled the ball past Gaston to clinch the last-four spot.
Morton manager Jim Duffy: "We gave away a needless penalty and that gave St Johnstone the impetus to get back into the game. I don't know what Ross Forbes was thinking, you'll need to ask him. It was just one of those moments.
"Our energy and organisation was good but we have had lapses of concentration at key moments in games this season and that happened again tonight."
St Johnstone manager Tommy Wright: "We created a lot of chances and probably should have been up at half-time but I was pleased with the response [to going behind] - we didn't let our heads drop.
"We went on to finish the job and we were very professional in the end. We worked hard to limit them to a few opportunities and our quality shone through.
"I don't think there are many Scottish players playing better than Michael O'Halloran right now. The quality was always there, it was just getting him to believe in himself. We've given him an environment in which he can thrive and he's come out of his shell.
"A semi-final is a semi-final and we are looking forward to it but there's plenty of football to come before then."
- 15PepperSubstituted forTidserat 81'minutes
- 8ForbesSubstituted forOrrat 86'minutes
- 16BarrBooked at 34minsSubstituted forScullionat 80'minutes
- 29O'HalloranSubstituted forWotherspoonat 87'minutes
- 8DavidsonBooked at 37mins
- 18CumminsSubstituted forKaneat 76'minutes
- Craig Thomson
- Shots on Target
Second Half ends, Morton 1, St. Johnstone 3.
Substitution, St. Johnstone. David Wotherspoon replaces Michael O'Halloran.
Substitution, Morton. Thomas Orr replaces Ross Forbes.
Attempt missed. Denny Johnstone (Morton) header from the centre of the box is high and wide to the right following a corner.
Corner, Morton. Conceded by Steven Anderson.
Corner, Morton. Conceded by Simon Lappin.
Goal! Morton 1, St. Johnstone 3. Christopher Kane (St. Johnstone) right footed shot from the centre of the box to the high centre of the goal. Assisted by Michael O'Halloran.
Corner, Morton. Conceded by Simon Lappin.
Foul by Michael Miller (Morton).
Christopher Kane (St. Johnstone) wins a free kick on the right wing.
Substitution, Morton. Michael Tidser replaces Conor Pepper.
Substitution, Morton. Jon Scullion replaces Bobby Barr.
Bobby Barr (Morton) wins a free kick on the right wing.
Foul by Joe Shaughnessy (St. Johnstone).
Attempt saved. Simon Lappin (St. Johnstone) left footed shot from outside the box is saved in the top right corner.
Foul by Luca Gasparotto (Morton).
Christopher Kane (St. Johnstone) wins a free kick in the defensive half.
Corner, St. Johnstone. Conceded by Lee Kilday.
Foul by Ross Forbes (Morton).