I just want to mention that your change may not be identical to original code if drawFunc internally calls "draw_path" multiple times. AFAIK, all the drawFunc in matplolib calls a single "draw_path", so this is okay for now. In fact, my personal preference is that we refactor the Line2D.draw method so that there is a single point where the draw_path is called.