SAN FRANCISCO — Andrew Cashner provided quite the thrilling warmup for his Tuesday start against San Francisco: a tiebreaking bunt as a pinch hitter in the 13th inning Monday night.

Will Venable made an incredible catch to save San Diego, Cashner drove in the go-ahead run with a perfect safety squeeze, and the Padres extended their season-best winning streak to seven games with a 5-3 victory over the San Francisco Giants.

"That was pretty cool," Cashner said. "I've never had a game-winning RBI. But if Will Venable doesn't have that catch ... it's one of the best catches I've ever seen."

Well, he didn't exactly see it live. Cashner was in the batting cage taking swings.

Venable's diving grab on the center-field warning track with his back to home plate ended the 12th and stole a game-winning hit from Juan Perez.

"The wind was funny tonight," Padres manager Bud Black said. "Off the bat, I thought Will was going to run back and catch it, and then it kept carrying."

Moments later, Alexi Amarista started the winning rally with a single and went to third on Chris Denorfia's single. Cashner came up to face Jose Mijares (0-1) and dropped a bunt single between the mound and third base for his sixth career hit and second RBI.

San Diego added another run on a bases-loaded walk from Jake Dunning. Giants manager Bruce Bochy had made a double switch to bring in Dunning and had intended to have a fresh Buster Posey lead off the next inning, but mistakenly put him in the seventh hole.

"I messed up the double switch. I got distracted," Bochy said. "I was out there arguing and I totally brain-cramped on that. Once I said it wrong, I was done. I knew that. That's a first. I probably should have stepped back and thought a little bit. ... Once I called it wrong I can't take it back. Got distracted, you're upset a little bit, that shouldn't happen but it did."

Nick Vincent (1-0) pitched two scoreless innings. Huston Street finished the 4-hour, 35-minute game for his 14th save in 15 chances. It was San Francisco's longest game of the year.

The Padres finally came through after they had two runners on and one out in the 11th and 12th, but Giants relievers Sandy Rosario and Javier Lopez got a pair of strikeouts to end each threat.

Chase Headley hit a tying single in the seventh against Jean Machi, who induced an inning-ending double play by Jesus Guzman to avoid further damage.

The Giants (35-34) couldn't hold a 3-1 lead for Barry Zito and dropped into fourth place in the NL West for the first time since April 8.

Logan Forsythe had his first three-hit game this year for San Diego, swept in San Francisco's waterfront ballpark April 19-21.

Joaquin Arias hit a sacrifice fly, Brandon Belt and Hector Sanchez each had an RBI single and Perez added two hits and a defensive gem on a night when the road-weary, injury-plagued Giants sent out a lineup largely of backups.

They landed in San Francisco about 3 a.m. Monday after a night game in Atlanta, showed up late to the ballpark and didn't take batting practice before the game. San Francisco just completed a grueling stretch with 14 of 18 games away from AT&T Park.

Zito struck out a season-high eight and got back on track at home where he pitches so well, but had nothing to show for it as the Padres rallied against the bullpen. The lefty walked off to a standing ovation from the sellout crowd with two outs in the sixth and runners on first and third.

Machi relieved and threw a wild pitch that allowed a run to score, then retired pinch-hitter Nick Hundley on a groundout. Machi has allowed a run in six straight outings and 10 of his last 11.

Zito had his most strikeouts since getting 10 against Atlanta on Aug. 6, 2010.

Padres starter Edinson Volquez struck out six in five innings. He doubled leading off the third and scored on Denorfia's double for San Diego's first run.

Volquez knew Venable was going to make the clutch catch.

"I said, 'That ball, it's not going to bounce,'" the pitcher recalled saying. "He can run. He said he let down the team down because he struck out."

San Francisco shortstop Brandon Crawford went 1 for 6 while batting third for the first time this season.

Bochy was asked before the game why he used Crawford there.

"Crawford asked me the same thing," Bochy said. "I just said, 'Maybe I got into the wine too much last night.'"

NOTES: San Diego is still waiting to determine whether SS Everth Cabrera and OF Carlos Quentin will need a stint on the disabled list. Cabrera came out of Sunday's game after the eighth inning with a left hamstring injury. Quentin missed his third straight game Monday because of left shoulder soreness. ... Giants 3B Pablo Sandoval (strained left foot) and CF Angel Pagan (strained left hamstring) are expected to be activated for the start of a series at Dodger Stadium beginning next Monday. Sandoval played catch and hit in the cage without a walking boot Monday. He is tentatively slated to begin a rehab assignment Friday with Class-A San Jose, and Pagan will likely go out on rehab soon, too. ... San Francisco reliever Santiago Casilla, who had right knee surgery, is expected to throw off a mound within a week. ... San Francisco hosted second-round draft pick INF-RHP Ryder Jones. His late grandfather, Ron Brown, who died last August of cancer, was a huge Giants fan. "This is so cool, because he would have loved this," said Jones' mother, Tiffani, fighting tears in the dugout. ... The Giants are 20-12 against the NL West. ... RHP Matt Cain (5-3) pitches Tuesday night for the Giants against Cashner (5-3).