remove weird check

After allocation of new_screen, we should check the allocation of this
variable, and return if we cannot allocate.

CID 1100647
don't write to NULL buffer

If we have checked for allocation failure, no need to write to buffer.

CID 1100648
return after failed memory allocation

CID 1100649
remove dead code

We make sure that arg >= 0 before this line, so check is redundant.

CID 1100658
fix overflow issue

(1 << (1 + 6 + 6 + 6 + 6 + 6)) is signed -2147483648 and unsigned
2147483648. We want to check against the unsigned value, and since g is
signed we need to cast.

CID 1100656, 1100660
use a bit more Eina_Unicode
we can't be sure of the signedness of Eina_Unicode
please clang-analyzer with false unintialized arguments
let's try to recover from malloc failure: ahah
fix possible NULL issues
initialize some variables
fix wrong assignement