Guy Bates struck a double as Glenavon fought back to secure a deserved Premiership win over Warrenpoint.
Town forward Daniel Hughes hit the woodwork before Stephen McCabe put the visitors ahead with a controversial penalty just before the break.
Glenavon's pressure was rewarded when Mark Patton headed in after 62 minutes and Bates made it 2-1 with a close-range finish seven minutes later.
Bates rounded the keeper to net a late third to seal the three points.
Glenavon dominated possession in the first half but the visitors were dangerous on the break and Hughes found a post with his 10th minute strike.
The penalty was awarded after a referee's assistant spotted an infringement in the area involving Glenavon defender Gareth McKeown.
The hosts protested but McCabe kept his cool to slot in the opener.
Player/manager Gary Hamilton and Bates were involved in the move which led to the equaliser, with Patton finishing from Andy McGrory's cross.
Bates met Patton's cross to net from a yard out to put the Lurgan Blues ahead before the striker ran from halfway to slip in the third a minute from time.
Glenavon are up to third in the standings and just a point off the top while Warrenpoint remain second bottom.