A good effort, but just not good enough.
That’s one way of describing a defeat that left Doncaster clinging on for their Championship lives.
Worryingly, this time next week, it might also be the most fitting way to sum up not just 90 minutes’ work - but an entire season’s worth.
For Rovers’ fate is no longer in their hands. They are reliant on favours elsewhere.
There is even a frightful scenario in which they could win at newly crowned champions Leicester City next week and still go down. It really doesn’t bare thinking about.
But the sad truth is that Doncaster, who having dragged themselves clear of danger have only taken one point from the last possible 18, are now staring down the barrel of an instant return to League One.
It could have been so different.
Rovers were well worth their goal lead at the break - courtesy of James Coppinger’s composed finish - as they executed Paul Dickov’s pass and press gameplan to the letter.
They were forceful, competent and they completely suffocated the life out of a Reading team that were failing dreadfully to live up to their reputation as one of the division’s most dynamic attacking teams.
At half time Rovers were three points and four places clear of the drop zone. Everything was going to plan.
But there was to be a horrible sting in the tail - the sort Doncaster fans have become accustomed to at this level - as another refereeing decision turned this game completely on its head and turned out to be the springboard for Rovers’ fourth straight home defeat.
When Rovers have scored the first goal in games this season, they have generally been pretty good at turning that into three points.
But on this occasion there was almost a sense of inevitability that Reading would go on and win the game after Adam Le Fondre earned and then scored the equalising penalty.
And so it proved, as Pavel Pogrebnyak popped in the winner in the dying moments and then rubbed salt in the wounds in stoppage time.
Rovers had given a decent account of themselves before the break, but they had been well and truly rumbled by the Royals in the second half.
It leaves them just one place and one point above the bottom three with just that trip to Leicester remaining, and now casting nervous glances towards third bottom Birmingham’s game in hand at home to Wigan tomorrow night.
Roared on by a higher than normal Keepmoat home crowd, Rovers settled first and created the only two clear cut chances of a tense, somewhat scrappy opening period - one of which they took.
Billy Sharp, willing and lively, a far cry from the player whose abject display against Derby saw him dropped for the draw at Millwall, found space in the left channel and squared it neatly for Coppinger to coolly slot past Alex McCarthy.
Coppinger then nearly returned the favour, crossing excellently from the right but this time McCarthy was equal to Sharp’s downward header.
Reading had not got out of second gear - and that was down to Doncaster’s obvious enthusiasm and determination to close down space.
But you had the feeling the Royals could not be as bad after the break, and sadly for Rovers that turned out to be the case.
Widemen Gareth McCleary and Jobi McAnuff were the most obvious threats as the visitors started the second period on the front foot, and got their break just after the hour mark when Le Fondre was bundled over in the box by Paul Quinn.
On this occasion there were few complaints with referee Anthony Taylor’s decision. Le Fondre dusted himself down and fired low, underneath the body of Sam Johnstone.
It proved to be a pivotal moment.
All of a sudden the Royals had the bit between their teeth and attacked in waves.
There were clear warning signs as Le Fondre mis-kicked with the goal at his mercy and Mikele Leigertwood fired just over from the edge of the area.
Dickov attempted to wrestle back the lost momentum by bringing on a half-fit Richie Wellens and replacing Sharp with Theo Robinson.
But it was hardly a surprise when the Royals grabbed the lead in the closing moments, Pogrebnyak pulling off his marker at the back stick to head home Jake Taylor’s cross, before striking again in stoppage time as Rovers committed bodies forward.
The defeat left Doncaster winded but not completely floored.
One more big effort is still required at Leicester - and this time they’ll have to hope it is enough, or face the very unpleasant consequences.