I think there's something to be said for telling people hurtful truths that can be quickly remedied. If broached appropriately and with a right-minded heart, I think a comment about your haircut would have been taken just fine - because of the temporarily and ability to instantly or quickly be solved, it's not as offensive, and actually, it ends up being quite helpful. Like having body odor in one moment or a huge stain on our shirt.
However, if that solution takes time to be alleviated, such as being grossly overweight, ugly or simply stupid, these kinds of "honest truths" will cause true harm because they will cause strong self-esteem hits that will linger over time. I for one would be happy and want with these kind of "temporary hurtful truths" told to me. I would like to say I would be the same for the long-term ones, but I'm sure I would be truly hurt just the same.