ToNewCString( const nsAReadableCString& aSource )
ToNewCString( const nsACString& aSource )
ToNewCString( const nsAReadableCString& aSource )  {    // no conversion needed, just allocate a buffer of the correct length and copy into it    char* result = AllocateStringCopy(aSource, (char*)0);    nsReadingIterator<char> fromBegin, fromEnd;    char* toBegin = result;    *copy_string(aSource.BeginReading(fromBegin), aSource.EndReading(fromEnd), toBegin) = char(0);    return result;  }