Glasgow won a gruelling Investec Champions Cup clash against Bulls to move into the quarter-finals.
With wet and windy conditions making life difficult for both teams, it was the hosts who eventually prevailed 25-21 after a nip-and-tuck contest.
Handre Pollard's penalty gave Bulls the first points but Glasgow grabbed the opening try in the 18th minute, Max Williamson barging his way over and Dan Lancaster converting.
Bulls retook the lead when Johan Grobbelaar ended a spell of pressure by going over in the corner, and a penalty from Pollard extended their advantage.
Back came Glasgow with a try through Jack Dempsey, but Bulls went in at half-time narrowly ahead thanks to another penalty from Pollard.
It was advantage Warriors after a try from Patrick Schickerling in the 57th minute and they looked to have wrapped things up when Stafford McDowall finished off a fine move, only for a converted try from Marco van Staden with three minutes left to reduce the deficit to a single point.
But a yellow card for Elrigh Louw allowed Adam Hastings to slot over a final penalty and clinch victory for Glasgow.
George Ford's goal-kicking proved the difference as his 16 points was enough to secure Sale a quarter-final spot in the Investec Champions Cup with a 26-17 victory at Harlequins.
His accuracy with the boot saw Sharks build up a 26-5 lead before Quins staged a late rally, but Sale's advantage was insurmountable.
Luke Cowan-Dickie scored Sale’s tries, with George Ford converting both and adding four penalties.
Alex Dombrandt scored two tries for Harlequins and Chandler Cunningham-South also crossed, with Marcus Smith adding a conversion.
Sale will face Leinster in the quarter-finals, should Leo Cullen's side navigate the challenge of Edinburgh in tomorrow's last-16 game in the Aviva Stadium on Sunday.
CHAMPIONS CUP RESULTS

Toulouse romped to a 59-26 victory over Bristol to reach the quarter-finals of the Investec Champions Cup.
The six-time champions ran in nine tries as the Bears were blown away in France despite a late fightback.
Bristol scored the first try in only the fifth minute through Fritz Harding but that kick-started a blitz from Toulouse, who crossed through Jack Willis, Peato Mauvaka twice and Kalvin Gourgues inside 20 minutes.
Matthis Lebel scored his first try in the 35th minute and teed up Gourgues to make it 40-7 at half-time before crossing again inside a minute of the restart.
Kalaveti Ravouvou took Bristol into double figures with their second try as Romain Ntamack was sent to the sin bin, but that did not stop Teddy Thomas scoring a quickfire brace to extend Toulouse's lead further.
Bristol could take some comfort from a rousing finish as James Williams sprinted away for an interception try before Noah Heward added a fourth late on.
Bath turned to a quartet of their England backs to turn the tide as they edged into the Champions Cup quarter-finals with a 31-22 victory over Saracens.
Trailing 10-0 at the interval at the Recreation Ground, the hosts burst into life with tries from Henry Arundell, Joe Cokanasiga, Ben Spencer and Ollie Lawrence as they set up a last-eight appointment at home against Northampton.
Spencer's 59th-minute finish of an audacious attack that began on their own try-line looked to be pivotal but determined Saracens refused to throw in the towel and were only truly beaten when Arundell ran in his second in the 80th minute.
Three-time champions Toulon held off Stormers to book a quarter-final date with Glasgow.
Pierre Mignoni's side are languishing in 11th spot in the Top 14 but they are headed for the last-eight in Europe after a one-point victory.
They led 14-13 at half-time, thanks to first half tries from Scotland scrum half Ben White and Gael Drean. A converted try from Adre Smith and a pair of penalties from Jurie Matthee kept the Stormers in touch.
The South Africans hit the front on the 54th minute mark, Evan Roos try putting them 20-14 ahead.
However, Toulon responded with a winning burst, tries from Mathis Ferte and Setariki Tuicuvu powering them to victory in the final quarter.
Imad Khan scored a late, late try for the visitors, the subsequent conversion bringing it back to a one-point game but they hadn't enough time to rustle up a winning score.