RYAN Clarke made four terrific saves as Oxford United became the first team to take points off npower League Two leaders Gillingham, who had won all their previous away games.
The goalkeeper, dropped to the bench for the previous two games, made a spectacular double save early in the game and denied Deon Burton on two other occasions.
It kept United in the game during an opening 50 minutes which the Kent side largely controlled.
But after the break the home side did most of the pressing.
Alfie Potter, who hit the crossbar in the first half, saw one effort tipped over, while Tom Craddock wasted the best chance late on.
Although United might have taken all three points, the draw was another step forward after ending their losing streak with a victory against AFC Wimbledon on Tuesday.
United made four changes to their starting line-up. Three of them were enforced, with Wayne Brown, Lee Cox and Michael Raynes all failing to recover from injuries picked up in midweek.
Clarke, Adam Chapman and new signing Johnny Mullins took their places, while Simon Heslop came in for Tom Craddock, who dropped to the bench.
Gillingham arrived five points clear at the top of npower League Two and should have been ahead inside three minutes.
A cross from the left found top scorer Danny Kedwell in space. The striker's volley was parried by Clarke, who then tipped Adam Barrett's follow-up round the post to complete a stunning double save.
United spent much of the first half looking to contain the Gills and ended up playing more like an away side - putting men behind the ball and looking to break on the counter.
One such move on six minutes saw Deane Smalley released and when the striker teed up Sean Rigg the shot flew just wide.
The U's struggled to keep the dangerous Chris Whelpdale quiet. The midfielder glanced one header wide and had another effort cleared off the line by Jake Forster-Caskey.
Ten minutes before the break came the hosts' best chance of the half.
A quick break saw Rigg stand up a cross to the back post, which Potter headed on to the crossbar. With the rebound Smalley swivelled a volley over the top.
Damian Batt became the latest player to succumb to an injury, limping off with what looked like a groin injury late in the half. Daniel Boateng replaced the right back.
On the stroke of half time Clarke made another inspired save, keeping out Deon Burton's close range header. United recovered to block Matt Fish's rebound and keep the game scoreless.
Another injury, this time to Smalley, forced a change, with Craddock preferred to James Constable.
The replacement laid on a good chance for Potter, whose rising shot was tipped over the bar by Stuart Nelson. It was the U's first attempt on target, after 56 minutes.
But the longer the game wore on, the more United came into the game.
Heslop had, by some distance, his best game of the season, while Potter and Rigg looked threatening on the ball.
But despite forcing a host of corners they could not find a way through the meanest defence in the division.
Constable came on for the closing stages and the striker created a great chance within moments.
Chapman blocked a clearance straight to the substitute, who ran into the area and crossed for Craddock, whose shot was deflected over by the excellent Tom Flanagan.
It was the final clear opening and although United finished strongly, they could not find a breakthrough.
Gillingham's final scare was a penalty appeal for handball on Barrett, but the referee waved away the protests.
United: Clarke, Batt (Boateng 42), Mullins, Wright, O'Brien, Chapman, Heslop, Forster-Caskey, Potter (Constable 82), Smalley (Craddock ht), Rigg.
Unused subs: Crocombe, Capaldi, Leven, Worley.
Gillingham: Nelson, Fish, Barrett, Flanagan, Martin, Whelpdale, Wright (Montrose 55), Payne, Weston (Findley 60), Kedwell, Burton (Frampton 71).
Unused subs: Forecast, Davies, Dack, Strevens.
Referee: Iain Williamson.
Attendance: 6,690 (1,014 visitors).