It could be that your wav headers were non-canonical. Some sound editors use extra chunks added to the wav header as a storage area for internal purposes, and this causes problems for any app expecting a canonical header. Flac, being robust, doesn't assume canonical headers and is able to to find the audio chunk correctly. Shntool would tell you if the headers are non-canonical.