CALGARY, Alberta (AP) -- Shean Donovan made the most of his first penalty shot.
"I don't ever remember taking a penalty shot before at any level," he said.
Donovan should have good memories of this one as it lifted the Calgary Flames to a 3-1 victory Tuesday night that snapped the San Jose Sharks' five-game winning streak.
With the game tied 1-1 and 54 seconds left in the period, Donovan was awarded the penalty shot when defenseman Scott Hannan took out his feet as he skated in on Vesa Toskala.
On the penalty shot, Donovan faked to his backhand before pulling the puck to his right and slipping it under Toskala's left pad.
"I went to the other side and hit a little hole beside his pad and got lucky," Donovan said.
It was Donovan's fourth goal in three games, moving him into a tie with rookie Matthew Lombardi for the team lead with six. Donovan had only five goals in 65 games last season.
"That was a hell of a move he scored on," Flames assistant coach Jim Playfair said.
Jarome Iginla scored his first goal at home this season and Martin Gelinas added one into an empty net for Calgary, which earned 10 of a possible 12 points on a six-game homestand (4-0-1-1).
"That's a good homestand, and what I like is we played different styles of games," Iginla said. "We want to play our way but not every night it's going to go our way.
"We came from behind in some of the games, a couple were higher scoring than we're used to, but we found ways to stick with it and get points, get wins, and get ties."
Jonathan Cheechoo scored for the Sharks, who lost in regulation for the first time in 10 road games (5-1-3-1) and just the second time in 16 overall (7-2-5-2).
"Anytime a streak comes to an end, it's disappointing," forward Patrick Marleau said. "Calgary was jumping tonight. They came out and played their system, chipped pucks, and got their opportunities on some mistakes we made and capitalized on those."
After a scoreless first period, the Flames took the lead at 11:22 of the second.
Off a faceoff in Calgary's own end, Flames defenseman Jordan Leopold neatly banked the puck out to center ice off the boards. The loose puck was picked up by Iginla, who had bowled past flat-footed defenseman Rob Davison at the Calgary blue line.
On a breakaway, Iginla squeezed a shot through Toskala's pads.
San Jose tied it six minutes later when Marco Sturm stepped around defenseman Toni Lydman and set up Cheechoo in the slot for his seventh goal.
That was the only one allowed by Mikka Kiprusoff, a former Sharks goalie who won his third game in four starts since joining the Flames in a Nov. 16 trade.
His best save was a pad stop off Marleau on a two-on-one early in the third period after a set up by Sturm.
After selling out the previous home game against Vancouver on Saturday, the Flames drew only 13,059. That was nearly 800 fewer than their earlier attendance low of 13,839 against Minnesota on Nov. 7.