Don't use rstring on null values.

This change checks first if the arguments passed
to rstring are null. If so, it stores them as null
values instead of empty strings, which can later
invalidate valid strings.
Use null check instead of isNotEmpty().
Merge pull request #2427 from bpindelski/rebased/develop/12056-description

Don't use rstring on null values (fix #12056). (rebased onto develop)