VB6でファイルを操作するときのエラー処理について質問します。

あるメソッドで、ファイルのオープン時にエラーが発生する可能性と、その他のコードでエラーが発生する
可能性があるとします。このとき、On Error Gotoを使ってエラーハンドリングする場合、次のように書きました。

Sub Foo()
 Dim fn as Integer
 Dim fileOpened as boolean
 fn = freefile
 On Error Goto MyExit
 open "filename" for input as #fn
 fileOpened = true
 ' エラートラップされる可能性のあるコード
MyExit:
 if fileOpened then
  close #fn
 end if
End Sub

これを次のように書くと何か問題あるでしょうか?
Sub Foo()
 Dim fn as Integer
 fn = freefile
 On Error Goto MyExit
 open "filename" for input as #fn
 ' エラートラップされる可能性のあるコード
MyExit:
 close #fn
End Sub

長々と書きましたが、つまりは「close #0を実行すると何が起こるのか?」がわからないということなんです。