Ma ti sei assicurato che il file venga aperto dopo la

f.open(path);

?

Non controlli eventuali errori ...

E inoltre, cosa c'è dentro path esattamente prima della open?