xbmc/xbmc — comment on commit bfd5673a698d2f80f6d32e3b5efdf47737d3260f
File:  line 0
By Montellese:

There was a memory leak in the = operator and m_data.string which before was a pointer and the pointer was simply overwritten by the m_data.string pointer of the assigned value. The same applied to m_data.array and m_data.map. So we lost at least 4 bytes everytime a CVariant was assigned using the = operator.

This solution is based on a proposal/discussion with spiff.