If the given string is not null-terminated, then strlen() will go out
of boundaries, we must limit the lookup to given 'n' parameter.
To do so use strnlen(), that is a strlen() bounded by a maximum size.
Summary:
setlocale() called itself because it was defined as a #define
so remove this #define from evil_locale.h and move it in another header file
To avoid future problem, move similar defines to this header file
Also clean all the header file mess in Evil
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3409