CALGARY, Alberta (AP) Logan Couture's long, frustrating wait for his first goal of the season is finally over.
After averaging 27 goals over the last five years, Couture had just four assists in his previous nine games and hadn't scored since April 3 last season.
''It was good for me to score and get some confidence back,'' said Couture, who missed 23 games with a broken leg, then another seven after suffering an injury in his second game back. ''It's been a long time since I've scored a goal in this league. I would have taken it any way - empty net, anything. Just to see the puck go over the red line is a big confidence booster for me.''
Couture's goal made it a 3-1 game early in the second. It came off a centering pass that deflected in off a Calgary player's skate.
''It doesn't matter how. He's worked so hard to come back,'' Sharks coach Peter Deboer said. ''There's some frustration in the fact he hasn't scored yet. For him to get one, it's big for him personally and it was a big goal for us.''
However, the Sharks retook the lead on Brent Burns' power-play goal 5:12 into the third.
Joel Ward scored the eventual winner five minutes later.
Thornton and Joonas Donskoi also scored for San Jose, which improved to 14-6-2 on the road.
Sean Monahan and Michael Ferland had the other goals for Calgary, which has lost four of its last five at home after a franchise-record 11-game winning streak at the Saddledome.
''We had way too many turnovers in the neutral zone and at the blue lines, and it seemed like the majority of them were ending up in the back of our net,'' Flames center Matt Stajan said. ''We've got to clean that up.''
Sharks goalie Martin Jones made 31 saves, including 15 in the third period.
''We've played well on the road,'' Jones said. ''We've gotten some bounces and we've been able to score some timely goals. That's probably been the biggest thing.''
Karri Ramo, making his 12th start in a row for Calgary, gave up all five goals on just 18 shots.
The Flames got within one with 3:41 left when Ferland scored with the goalie pulled to give the Flames a 6-on-4, but San Jose held off Calgary's last-ditch effort in the final seconds.
''We just didn't have it tonight,'' Wideman said. ''We were sloppy, we were guilty of turning it over a little bit too much and we gave them really good chances.''
Sharks defenseman Justin Braun was hit near the top of his visor by Kris Russell's slap shot early in the third period. Braun left a trail of blood as he was helped off the ice but he later returned to the game.
''Shows you his character and his commitment to try and help us win,'' Deboer said of Braun.
NOTES: Sharks forward Tommy Wingels (upper body) left the game in the first period. ... Bennett got in his first NHL fight with Marc-Edouard Vlasic after the final buzzer. ... San Jose's Patrick Marleau played in his 500th consecutive game. He has the NHL's third-longest active ironman streak behind Anaheim's Andrew Cogliano (663) and the New York Rangers' Keith Yandle (510).