Honesty, one of the weirdest things in this world. It's almost seen as impolite to be honest when a person asks you something.
First of all, let me get something straight. There is a difference between honesty and bluntness. When someone doesn't ask, don't say anything unless it's needed. If someone is wearing ugly clothes? Let them, it's their life.
Politeness is one of the greatest opposites of honesty it seems. If someone is wearing clothes that clash and hurt the eyes and he/she asks if they look good... Be honest. Though it may not be polite, I feel honesty is more important and more usefull in the long run. Also, the person asking the question should not hold you responsible for answering honestly. If you don't want to know, don't ask.
If only I could be less blunt about it though...