Fix getting of enviroment strings in testlib
authorJason McDonald <jason.mcdonald@nokia.com>
Wed, 2 Nov 2011 08:39:20 +0000 (18:39 +1000)
committerQt by Nokia <qt-info@nokia.com>
Thu, 3 Nov 2011 01:42:56 +0000 (02:42 +0100)
commit65ece490a914bc56a9c92cac4ace329033832030
treea1d951aa6a1c308002152e7ab52dbe344275ea9f
parent8cb52795f1dc0bdc06ce4fa9dc49ac9e5141ab0f
Fix getting of enviroment strings in testlib

The standard C getenv() returns NULL if the requested environment
variable is not found.

In Qt4 and later, qgetenv() does not return a null pointer if the
requested environment string is not defined.  Instead it returns a
QByteArray containing an empty string.  If using qgetenv(), there is no
way to tell the difference between an undefined environment variable
and one which is defined to be the empty string.

In testlib, all calls to qgetenv() were checking whether the returned
QByteArray's constData() returned a null pointer, but that would never
happen.  These calls must instead check whether the QByteArray contains
a non-empty string.

Change-Id: I342f0e8b196896c26cccce3ff169fa1b9669b5ff
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
src/testlib/qtestcase.cpp