base: File API

Is there a risk of an endless loop here?