freeRam() causes freeze

It only needs to call it once to crash. It's in a while(client.connected()) loop. So as long as the client is connected it keeps getting characters and adding them to that String, further fragmenting memory each time.