hetelek/Velocity — pull request #4 by landr0id (2012-11-13 06:19:26+00:00)
Title: Fixes issue #3

#### The Issue
Issue #3 was caused by the freeing of the `io` pointer in the `GameGPD` class. On [line 116](https://github.com/landr0id/Velocity/blob/master/Velocity/gpduploader.cpp#L116) of `gpduploader.cpp`, the `GameGPD::CleanGPD` method is called, which calls the `XDBF::Clean` method. In this method, the `io` pointer is freed, then is set to a newly allocated `FileIO` instance.

When the `io` is set, it doesn't set the `io` instance in the class which called the `Clean` method (`GameGPD`), resulting in `GameGPD` referencing `io` referencing a bad memory address.

#### The Solution
By making `XDBF`'s `io` public, we can then [reset](https://github.com/landr0id/Velocity/blob/6bde8e65c0c4a47889ed933a489de0785d27a2bf/Velocity/GPD/GameGPD.cpp#L17) the `GameGPD` `io` after calling `XDBF::Clean`.