Fixes "basic_string::_M_construct null not valid" exception
aborting program, because WCharToUtf8() returned NULL
in some cases, and NULL was being fed to string constructor.
Fixes memory leak because memory allocated with calloc()
in WCharToUtf8() was not being freed anywhere
Fixes undefined behavior because GetEnumeratorName() returns
pointer to stack memory, that goes outside of scope while
pointer still is being used.
Closes #381 Closes #382
Change-type: patch