openBezierPath returns None

I have a function that does stuff on a copy of the active layer and returns that copy.
I’m drawing the content of the returned layer using resultLayer.bezierPath, but if the paths I’m working with are opened, calling openBezierPath returns None.
Is this intended behavior?

edit: adding an example

def do_stuff(layer):
  copy = layer.copy()
  """for p in copy.paths:
    for n in p.nodes:
      n.x += 10"""
  return copy
print do_stuff(Layer).openBezierPath

this function will return a GSSaveBezierPath object unless I do anything to the layer, ex: moving some nodes like in the commented part in which case it’ll return None.