I just ran into an issue where juce_getInternetFileContentLength returns an incorrect (too short) length , which causes that URL::readEntireTextStream to return a truncated content. The issue happens on Leopard, not on Snow Leopard. Forcing juce_getInternetFileContentLength to always return -1 fixes the issue. I’m not using the very latest git head, but my juce sources are not too old (1 month ago) and I don’t think anything relevant has changed since then. Looking at the raw http headers received with wireshark, it looks like I’m receiving gzipped content, and the content length reported is the length of the gzipped data, while the length that juce expects is the length of the ungzipped data .