Edges of Polygon

How can we look the Edges of a polygon (in black color) and a color in this polygon ?

draw it twice. One with GL_FILL and once with GL_LINE. Never tried it but does pixel offset work in this case? Otherwise sort out your own offset, be aware of z fighting in situations like this though.