Work Text:
Frank lathers cold lube over the tip of his cock, air hissing between his teeth in a wince as the gel dribbles down his shaft. He probably should've warmed it up a little first, but he was in too much of a rush to think about it.
Though it was nowhere near as bad as it had been on previous tours, getting alone time was incredibly rare whilst on tour. There would always be someone hanging around you, making it nearly impossible to get off without being heard or walked in on by someone.
Your best bet would be hotel nights, but those were few and far between; and even then, it was risky. It’d been nearly two weeks, and to say Frank was pent up was an understatement.
But today, Frank had been blessed by the universe with an empty tour bus. He’d woken up around noon, with dappled beams of warm sunlight spilling in-between the gaps in the blinds and directly into his sleep-heavy eyes. Grumbling about not being woken up by his alarm, he’d found no trace of the others, except for a post-it note, Gerard’s scratchy handwriting explaining that they’d gone out to get food and would bring him back something.
Frank couldn’t think of anything better to do before they got back than to jerk off.
But it would have to be quick. The others could come back any minute, and the last thing he wanted was to be caught with his hand down his pants.
He’s already half-hard the moment he pulls his sweatpants down his thighs, his breath hitting the air in shallow, jagged puffs as he wraps his calloused fingers around himself.
Frank’s grip is a little too tight, overeager, as he drags his fist up and down his cock. Frank’s hips twitch involuntarily into the touch. His head rolls back further into his pillow. He’d barely even started and he was already feeling desperate.
“Ah, fuck.” he mutters, eyelids fluttering as he tries to focus on the sensation… but it’s not working. The friction of his palm was consistent, but his semi wouldn’t harden into a full erection no matter how much he tried. Frustrating and humiliating.
Frank lets out a soft, whiny groan, his free hand twisting around his blanket as he tries to up the momentum of his hand. He drags his thumb over his tip, squeezing around his glans rather desperately. “Come on.”
He shifts restlessly and pulls his thighs apart in an attempt to get a better angle, but it's no help. He’s just about to give up when an idea pops into his head.
Porn.
He could just watch porn.
Why did it take him so long to think of that?
Frank fucking loved porn—I mean, who doesn’t?
Frank wipes his wet hand on his sweatpants (gross!) and picks up his phone from beside his bunk; not even thinking as he opens his browser, types the name of a site, and clicks on the first raunchy title he sees.
He immediately flinches as the sound of a loud moan plays from his phone speakers—he’d forgotten that his volume was still on full. He really should put on headphones, but frustratingly, he’d forgotten them backstage at their last show. No one but him would hear it, though, so it was okay.
The moans of the man in the video send heat burning straight to his gut as Frank starts stroking himself again. He watches as the top in the video pressed the bottom’s hips down into the mattress, forehead resting between the other man’s shoulder blades as he sloppily thrusted into him. He has the leash collaring the bottom’s throat pulled taut, forcing the other’s head back sharply. Frank groans.
He feels his cock finally stiffen in his palm, already throbbing pathetically. That certainly did the trick. Frank grins to himself a little, readjusting his hold on his phone.
***
The sun glares down Gerard’s neck as he practically stomps down the sidewalk, boots thudding over the concrete. God, he hated how frustrated he was over what was only a minor inconvenience.
After he, Ray, and Mikey had gotten food, they’d decided to go for a small walk around the nearby mall. It’d been years since they’d last visited this city, so they’d hoped there’d be a few new stores for them to check out; Gerard hoped especially for a stationery store or two.
There was a new one right near the entrance of the mall, a store chain that Gerard was familiar with. They were rather hit or miss, but Gerard had been lucky with this one today. He’d found some of the most beautiful fountain pen inks; electric blue and scarlet red. He couldn’t resist.
But. Of course. He’d forgotten his fucking wallet in the van.
Ray had covered lunch, and he didn’t want to bother either him or Mikey with spending more money on him. So back to the tour bus he went.
He grumbles to himself, pushing his sunglasses further up his nose. He’d at least be able to bring Frank’s food back sooner and get that out the way.
He makes it there in no time, clumsily stumbling in the door to find that Frank still wasn’t up yet, the main room of the van looking completely untouched since they left. He frowns, shifting his weight from foot to foot. It wasn’t like Frank to sleep in this late—sure, every once in a while he’d have a bit of a lie-in, but not to this extent.
“I should probably wake him then,” he thinks, and just as he goes to shut the door behind himself, he hears a gasp float through from the other side of the vehicle. What the fuck?
Gerard knits his brows and walks further in, calling loosely, “Frank?”, but he doesn’t seem to notice. He can hear a muffled, tinny whine coming from the bunk beds, as well as the gruff voice of a man muttering something about a “good boy”. The noise that follows it (which he assumes comes from Frank) is nothing short of pathetic.
He had a pretty good idea of what Frank was up to, but his wallet was tucked under his bunk, and he needed it desperately. Besides, he had been trying to warn him of his presence. Gerard quickly decides he’s had enough of just listening and scuffles the last few paces into the bed quarters of the bus. “Frank!” He repeats.
The sight he walks into is one to behold.
Frank is sprawled out in his bunk, one foot on the floor whilst the other remains planted on the bed, his knee up and his legs spread. He’d completely kicked his sweatpants off, and though his shirt is still on, it’s ridden up just enough to reveal parts of his soft stomach, unintentionally showing off his dove tattoos.
Most importantly, he has his fist wrapped tightly around his cock, head tipped back into the pillows as he furiously pumps himself in rhythm with the pornography playing on his phone. And despite the amount of effort he’s clearly putting into it, he looks more frustrated than satisfied. Frank half shrieks when he finally notices Gee, quickly throwing the blanket over himself.
Gerard ignores the pang of disappointment in his chest.
“Jesus, dude! Warn a guy before just walking in?” Frank scoffs, muting the volume on his phone in a panic before another humiliating noise can play.
“Ah—I tried to!” He frowns, “Fuck, sorry Frankie.”
“I just need to get my wallet and I’ll be out.” Gee mutters, putting the bag with Frank’s sandwich down and going over to his bunk.
“Got you food, by the way.”
“Thanks,” Frank coughs, embarrassment crawling up his throat and burning crimson across his cheeks. Gerard picks up his black leather wallet from beneath a dirty t-shirt, flipping through to check his credit card was still in it, despite him only ever taking it out to use it. He finally hears the click of Frank switching his phone off, followed by his awkward shuffling in the blanket.
Gee can’t find any words to describe the sight he’s met with as he turns around as anything other than desperate.
Frank is all sweaty and hunched forward in shame with his legs still bent and spread. The tent of his dick is noticeable beneath his blanket, and he has need written all over his flushed face. It’s been years since he’s seen Frank this way—drunk out of their minds off shitty cheap liquor under dim motel lights before things with both him and the band had fallen through. Gerard hated to admit it, but he missed it.
The words tumble out of his mouth before he has the chance to stop them, “Do you want help?”
Frank noticeably pauses, blinking up at Gerard as though he were trying to gauge whether he was being serious or not. His eyes flit over his features, eyebrows furrowing. “Don’t joke about that stuff.”
Gerard shrugs casually, belying the arousal that’d begun to simmer in his gut. He moves closer to the edge of the bed, the mattress dipping beneath his weight as he settles beside Frank’s hip. “I’m not joking, Frank. I mean— unless you want me to be, but you look like you’re struggling… It’d be like old times, I guess. I interrupted you, and it's only fair I make it up to you.”
“You’re pretty quick to come, anyway,” he adds with a grin.
“Hey!” Frank laughs, fingers curling around his sheets, “That was years ago! I last a little longer now, you’ll see.”
“Is that a yes, then?” Gerard asks, awfully hopeful.
Frank doesn’t verbalize his answer but gives him a small nod, slowly drawing the duvet off himself once more. His dick had started softening in the time Gerard had been in the van, lying half limp against his thigh and still sticky with lube.
“Tell me if you want me to stop.” Gee hums, smoothing his hand over Frank’s exposed thighs. Frank’s breath hitches at the first touch of Gerard’s palm against his cock, the contrast between its warmth and the coldness of the lube mottling his skin with goosebumps.
Gerard starts off frustratingly slow, hand sliding up and down Frank's cock like they had all the time in the world. Frank seems thoroughly unamused.
“If this is your idea of helping…” Frank huffs, trying to roll his hips into Gee's hand only for Gerard to pin them to the mattress with his free hand, “You’re going so slow… doing it— hah— worse than I was…”
“Patience, Frankie,” he tuts. Gerard suddenly recalls the snippets he’d seen from the video Frank was watching, and how… familiar its contents were. Of course his guess on what was could be completely inaccurate considering he’d only watched a few seconds before Frank had switched it off, but it seemed to have been two men partaking in puppy play. Gerard swears he saw a leash, and the praise was unmistakable.
He and Frank used to do the same when they were together… considering what he’d been jacking off to, Gerard supposes it wasn’t too outlandish to assume Frank was still into it.
Gerard tries nervously, “If… If you want to be my good puppy, you need to ask nicely for what you want.”
Frank immediately chokes on his saliva, caught off guard. He coughs for a couple seconds; then mutters, “Faster?”
“You can do better than that,” Gee says, squeezing the base of his cock.
Frank practically whines, “Can you go faster, please?”
“Attaboy.” He does as Frank asks and jerks him off a little quicker, feeling his pants tighten at the sudden spew of delighted moans falling from Frank’s lips. Gerard wants to kiss him quiet, but knows that’d be going too far. Jacking off your ex was one thing; making out with them was another.
Gerard runs his fingers along the underside of Frank’s dick, dragging his fingernail along his tender slit just to hear his broken, tender gasp. “Fuck.” He breathes out, his body tensing up.
“‘S that better?” Gee asks, voice heavy with his New Jersey drawl. Frank nods frantically and buries half his face into the pillow to muffle his moans, having been a little too loud considering they were in the bus. Gerard smirks, petty power swelling in his chest. “Do you want me to turn your video back on? So you can imagine you’re there…”
Frank doesn’t even hesitate. “No, shit, don’t need it anymore. Do that again, please. Just… fuck, do that again.”
Gerard doesn’t need telling twice; he repeats the motion, teasingly circling his slit with his nail once again before sliding his palm down the shaft in one smooth motion. He can feel Frank’s hips twitch under his hold, aching to fuck up into his fist. A sticky bead of pre-cum wells up at his tip.
He can feel Frank’s rabbit-quick pulse throbbing against his palm. He whimpers, “Thank you, ah, thank you.”
He does it over, and over, hand pumping Frank’s cock furiously until he melts into an absolute mess beside him, squirming around on the mattress and hiccupping. “Such a pretty boy. My pretty puppy,” Gerard coos.
“I'm close,” Frank says, voice cracking, high and whiny in his throat. His hands scramble uselessly across the rumpled bedsheets for grip. “Can I come? I need to come, please, Gee. Please.”
“You can come.” Gee nods, grinding his thumb against the sensitive head of Frank’s cock until he’s spilling all over him with a muted cry. He strokes him through it.
He grimaces at the feeling of cooling cum on his hand as Frank pants to catch his breath. Gerard gets up and shuffles towards his own bunk and grabs a tissue from the small pack of them he kept, wiping himself clean. He really should wash his hands, but it would do for now.
“Hey,” Frank’s breathing gradually slowed back down from his shaky gasps. He turns his head toward Gerard, and his eyes were still glossy with residual lust. “Let me blow you? Return the favour and all…”
Gerard’s heart hammers behind his ribs. “We can’t… we’ll get caught. Ray and Mikey could come back looking for me any minute, and I’ve probably pushed my luck taking this long already…”
Frank shuffles closer to the edge of the bed, his expression earnest despite the mess he was in. “I’ll make it quick, I swear. Just five minutes.”
Gerard glances down at Frank’s lips, then towards the front of the tour bus. The risk was a little too high for Gerard’s liking, but the ache between his legs was becoming unbearable. Besides, having to walk out on the street with a full hard-on would be far more humiliating than getting caught by their bandmates.
“Alright,” he sighs.
Frank scrambles to his knees with urgency enough to make Gerard’s cock twitch. He was still a little shaky from his climax but managed to unzip Gee’s fly with surprising focus; tugging his underwear down just enough to free his cock.
“We need to be quiet as well, yeah? Quick ‘nd quiet, I mean it—” Gerard breathes, but Frank was already lowering his head. He doesn’t immediately take him into his mouth like Gerard had hoped he would, and instead takes his sweet, sweet time laving his tongue over his tip and tracing the vein running down his cock. Revenge for Gerard teasing him earlier…
Only after he’s satisfied with that does he go down on Gerard, sliding his mouth down the length of Gerard as far as he can comfortably take. Gee hisses and anxiously glances at the bus’s door once again. Frank’s mouth is warm and soft and oh so wet around him. His eyes flutter shut.
Frank does his best to keep his breathing carefully shallow as he swallows around him, bobbing his head leisurely. He gags as Gee’s tip hits the back of his throat, and the sensation of it sends a lightning bolt of electricity shooting straight up Gerard’s spine.
He moans, “Oh god, Frankie.”
He tangles his fingers in Frank’s hair and lightly tugs at it, guiding him, urging him to go harder, faster. He makes the mistake of opening his eyes and looking down at him.
Frank’s lips looked swollen and slick, glistening with spit where they’re wrapped tightly around Gerard’s cock. His hazel eyes brim with tears, pupils dilated. Frank’s throat works convulsively and every time he gags lightly around the thickness of him, a fresh wave of heat crashes over Gerard.
It was pathetic, really, how quickly Gerard came from the sight. He doesn’t even get the chance to warn Frank about it before he’s spilling down his throat. The sound that comes from is half groan, half whimper; he bites his bottom lip hard enough to taste copper to stop himself from crying out.
Frank seems surprised but doesn’t pull away, instead swallowing every drop of Gerard’s spend without fuss, his Adam’s apple bobbing. When he pulls off, he wipes his mouth with the back of his hand.
The silence that follows is heavy, thick with tension neither of them knew how to break. Gerard awkwardly tucks himself back into his pants and zips his jeans back up. Frank does the same, tugging the duvet back over himself and crossing his legs. He refuses to even glance at Gerard.
“...Listen” Frank says suddenly, voice flat. “This was a one-off thing, alright?”
Gee pauses, “Frank.”
“No, seriously, Gerard.” He finally looks at him, his expression guarded, almost clinical. “We can’t be doing this again. It’s messy, and risky, and— and just not good for either of us. It blew up in our faces last time, ‘nd it sure as hell will happen again.”
“...Thank you for the help and all, but um— I think it’d be best if we don’t talk about this again. Forget this ever happened.” Frank shrugs.
Gerard ignores the sharp sting in his chest as he leans down to fetch his wallet from where it’d fallen off Frank’s bed to the floor, shoving it in his pocket and tucking his hand beside it. He wants to argue. To ask why he couldn’t be something to Frank again. But the words die in his throat.
“Okay, yeah, sure. Forget this.” he nods and turns to leave, “...enjoy the sandwich, Frankie.”
Frank just hums. Gerard shuts the van door behind himself, chewing on his aching bottom lip as he heads back to the mall.
