Shouldn't use NULL to denote an invalid string, because the pointer will be passed to functions that will dereference it (Coverity).