Fix memory leaks appearing when cvOpenFileStorage throws
cvOpenFileStorage: reduce the scope of xml_buf and make sure it's freed...

... before any exceptions occur.
Merge pull request #3497 from SpecLad:fs-open-fail-leak