This commit make E go crazy and use 100% all time. Reading the code,
we do check the returned value, but discard it without looking at it
in many case. A proper review of that piece of code to fix potential
memory leak and avoid reusing dead pointer would be a must.