[Helpers] Read a file again if the read size is zero.

Some tests such as testChildProcessManager::test_createWithEnv()
sometimes fails due to empty of file contents. Although the clear
reason is unknown, we try to read repeatedly in order to avoid
the failure.

An example of the failure:
https://travis-ci.org/project-hatohol/hatohol/jobs/33042226
Memo: glib always set length (except fiename==NULL or &contents==NULL)