CALGARY -- Filip Zadina had an NHL career-high four points to help the San Jose Sharks to a 6-3 win against the Calgary Flames at Scotiabank Saddledome on Thursday.

Zadina had two goals and two assists, Justin Bailey had a goal and two assists, and Luke Kunin scored twice for the Sharks (15-33-5), who have won five of their past eight (5-2-1). Mackenzie Blackwood made 31 saves.

"Things haven't been easy for us as a group, but I think it's the one thing that's been a staple throughout the whole year, we maintain a positive attitude and we've maintained trust and belief in the system of what we're doing," Bailey said. "Nights like tonight when all things seem to kind of go in your favor, it feels good as a group."

SJS@CGY: Zadina fires home a slick shot for his second goal

Nazem Kadri, Andrei Kuzmenko and Mikael Backlund scored, and Dustin Wolf made 25 saves for the Flames (25-24-5), who have lost two in a row after a four-game winning streak.

"Disappointing," Calgary defenseman MacKenzie Weegar said. "And I thought we thought it was going to be an easy game, and then we just got outworked and outcompeted. That's not normally like us."

Kadri put the Flames up 1-0 at 4:19 of the first period when a rebound off Martin Pospisil's initial shot deflected in off his skate in front.

Mikael Granlund tied it 1-1 at 4:52 of the second period. He took a centering pass from Zadina, cut through the slot and beat Wolf with a wrist shot from the left circle after a defensive-zone turnover by Noah Hanifin.

"Anytime you're able to get the puck in his hands in a scoring opportunity, obviously [Zadina]'s a high pick and a skill player for a reason, and you saw that showcased tonight," Bailey said of the forward, who was the No. 6 pick by the Detroit Red Wings in the 2018 NHL Draft.

Bailey put San Jose ahead 2-1 at 7:50 when he shot a return pass from Zadina past a sprawling Wolf following an errant defensive-zone pass by Weegar.

"Just not playing hard with the puck, not executing," Weegar said. "Trying to force plays that aren't there when you can make the simple play. That kind of led to the downfall as well, making plays that weren't there thinking it was going to be an easy game. That starts on the back end with myself included. Got to be better, for sure."

SJS@CGY: Bailey fires a return pass into the cage to grab the lead

Kunin made it 3-1 at 12:30 on the power play when his one-timer from below the right circle was pushed across the goal line by Flames defenseman Chris Tanev after Wolf’s initial save.

Backlund cut the lead to 3-2 at 19:40 with a wrist shot from the right circle through traffic that deflected in off Sharks defenseman Calen Addison.

Zadina put the Sharks ahead 4-2 at 4:38 of the third when he redirected a Nico Sturm shot that looped over Wolf into the net. He scored again 37 seconds later with a wrist shot over Wolf's glove to make it 5-2 at 5:15.

"It felt pretty good, obviously," said Zadina, who had three points (one goal, two assists) in his previous 18 games. "We haven't scored as a line in a little bit, but we got rewarded for the work we've done recently."

Kunin scored a wrist shot from the bottom of the right circle on a breakaway following a Blake Coleman turnover to push it to 6-2 at 15:30.

Kuzmenko tipped a Tanev point shot past Blackwood for the 6-3 final at 16:40.

"You think it's going to be easier than other games, and it's not," Flames forward Jonathan Huberdeau said. "At the end of the day, they're still a good team, they're in the NHL. They came out and had a bad start, but they can play. They worked hard tonight, and we just weren't ready to play."

NOTES: Bailey’s three points are an NHL career high. … San Jose matched its season high for goals. ... The Sharks are 17-for-17 on the penalty kill in the past six games. ... Blackwood is 5-1-1 with a 2.25 goals-against average and .931 save percentage in his past seven starts. ... San Jose's Marc-Edouard Vlasic had an assist and played 18:34 in his 1,270th NHL game, tying Rob Blake for 25th in League history among defensemen. ... Huberdeau had an assist on Kuzmenko's goal for his 700th NHL point. Huberdeau, who has 221 goals and 479 assists in 803 games, is the third player from the 2011 NHL Draft class to reach the mark (Nikita Kucherov, 822; Johnny Gaudreau, 718).