Gunnar Henderson couldn’t believe it.

The shortstop, who’s homered in three of his past four games, nearly — should have — had another. A line drive to center field with two on in the fourth inning was tracking to clear the wall and give the Orioles their first lead of the game.

But Jose Siri timed his leap to perfection, snatched the ball out of the sky and pulled it back. All Henderson could do was stare and tilt his helmet in admiration as his team’s best chance to pull ahead vanished: “It’s definitely not fun whenever a three-run homer turns into an out,” he later said.

Baltimore never threatened again Saturday in a 7-1 loss to the Tampa Bay Rays.

“Just kind of a struggle all around today, honestly,” manager Brandon Hyde said. “We wasted opportunities offensively, and we made a mistake defensively and gave up too many runs.”

Cedric Mullins led off the sixth inning with his second home run in his past five games for the Orioles’ first, and only, run.

The center fielder has been one of Baltimore’s top sluggers across his scorching second half — he’s hitting .284 with a .863 OPS since June 8 and has the third most FanGraphs wins above replacement on the team over that span behind only Henderson and rookie Colton Cowser. On Saturday, Mullins’ long ball was the only bright spot in another sluggish performance.

Tampa Bay right-hander Ryan Pepiot stymied the Orioles’ lineup until then. Baltimore (82-61) had just two hits through three innings and squandered prime scoring chances. Cowser, Mullins and Jackson Holliday loaded the bases in the second before eight- and nine-hole hitters Emmanuel Rivera and James McCann stranded all three.

Henderson nearly got his team on the board in the fourth before Siri took away his would-be go-ahead, three-run shot. The Orioles finished 1-for-6 with runners in scoring position and left nine men on base.

“It’s bound to flip around at some point,” Henderson said.

Zach Eflin faced a unique test in his second start following a brief stint on the injured list: his old team.

The right-hander’s former teammates leaned on their inherent advantage and got to Eflin, who failed to post a quality start for the first time in six outings with the Orioles.

Tampa Bay tagged him for a pair of home runs in the first three innings, the most he’s allowed in a start since June 16. Eflin pitched scoreless fourth and fifth frames before stumbling in the sixth, as three singles chased him before he finished the inning.

“I felt like for the most part the stuff was good,” Eflin said. “Maybe command of the pitches was a little off. But for the most part they did well on my mistakes and kind of made me pay for those. At the end of the day I kind of fell behind a lot of guys and I really just feel like I couldn’t hit the corners like I normally did.”

His eight hits allowed are the most since his first outing after joining the team at the trade deadline. He struck out just four batters, his second-fewest in a start with his new team. That Eflin’s worst start with the Orioles is three runs allowed over 5 2/3 innings is a testament to how impressive the deadline acquisition has been. They’ll be thrilled if he remains this good.

Eflin’s replacements, however, didn’t contain the damage. The Rays added two more runs in the seventh, including one that was charged to Gregory Soto to end his scoreless outing streak at 10 and the other unearned on a throwing error by first baseman Ryan O’Hearn. Burch Smith allowed another run, and ex-closer Craig Kimbrel let one more score on a wild pitch to put the finishing touches on the six-run defeat.

With the New York Yankees’ win over the Chicago Cubs earlier in the day, the Orioles fell a half-game back of the American League East lead.

“There’s no lack of energy or effort or anything,” Eflin said. “It’s more so just getting the job done. I’m not worried at all. I think we’re gonna be just fine.”

Around the horn

The Orioles signed infielder Terrin Vavra to a minor league deal Saturday. Baltimore designated Vavra for assignment last month, and he recently opted out of his minor league contract with the Seattle Mariners.

Sunday’s series finale against Tampa Bay, starting at 12:05 p.m., will stream exclusively on Roku. The game is available for free on Roku devices or anywhere The Roku Channel can be found. It will not be broadcast on the Mid Atlantic Sports Network, but in- or out-of-market blackouts won‘t apply.