SAN FRANCISCO -- Bengie Molina expected to have the day off, so San Francisco's veteran catcher didn't bother taking pregame batting practice.
He didn't need it.
"I was too tired for [batting practice]," said Molina, who started the Giants' first 13 games before Pablo Sandoval caught against the Padres. "I had a couple swings in the cage, I was warmed up and I was ready."
Molina's hit completed a two-game sweep of the Padres and gave the Giants a 4-1 record on their homestand after the team lost six straight on the road.
It came in front 26,593 fans, San Francisco's smallest crowd since moving into AT&T Park in 2000, and left the Giants in a much better mood as they packed for a three-game series at Arizona.
"Today was a perfect win we can build off of," closer Brian Wilson said. "Everyone contributed. I think it has to do with being at home. Every sports team plays better at home."
That includes San Diego, which ended its 10-day, eight-game road trip with a 4-4 record and three straight losses.
"We played three good teams and .500 isn't bad," said Chris Young, who allowed two hits over seven innings but didn't get a decision. "We'll take it, but we could have easily won a couple more of those games. So it was decent but not satisfying."
Torres hit a one-out single off Edwin Moreno (0-2) and stole second. After Eugenio Velez struck out, Moreno intentionally walked Fred Lewis before Molina hit a ground-rule double that bounced over the wall in left-center.
The Giants managed only four hits, but two came in the 10th. San Francisco won despite scoring fewer than three runs for the fifth time in six games.
"I figured they would go with Bengie, but he's been on the bench for 10 innings and pinch-hitting is such a tough job," Padres manager Bud Black said. "Edwin threw a good pitch and Bengie hit a high fly ball that we couldn't track down."
Wilson (1-0) pitched two shutout innings for the win.
Equally important as Molina's hit was the performance of starting pitcher Barry Zito, who threw seven shutout innings and lowered his ERA from 10.00 to 5.63.
Zito allowed just one runner past second base and kept the Padres off-balance with a mixture of snapping curves and a fastball that was his most effective of the young season. He struck out five and didn't walk a batter for the first time since June 25, 2008.
"I just wanted to be aggressive today and let the hitters on the other side earn it themselves instead of falling behind and giving them free passes," said Zito, winless in three starts. "As good a [rotation] that we have, we want to go out and help the team more than the last guy did. Some of these outings were pretty impressive, but I'm just glad to get a win today, too."
It didn't get easier for San Diego against San Francisco's bullpen.
Young retired 12 of his first 14 batters and didn't allow a hit until Travis Ishikawa's leadoff single in the fifth. He then walked Juan Uribe but got out of trouble by retiring the next three hitters in order.
The Giants got two runners on in the sixth but couldn't break through against Young, who had three strikeouts and four walks.
Because of Thursday's off day, the Giants will skip left-hander Jonathan Sanchez's turn in the rotation and instead start right-hander Tim Lincecum (0-1) against Arizona on Friday. Giants manager Bruce Bochy said Sanchez will be available to pitch out of the bullpen for the next few days. ... Padres outfielder Cliff Floyd will undergo an MRI on his right knee in San Diego on Thursday. Floyd had fluid drained from the knee last weekend. ... Giants outfielder Aaron Rowand got the day off.