diff --git a/vcl/unx/inc/saldata.hxx b/vcl/unx/inc/saldata.hxx index 4164a0f..da5880c 100644 --- a/vcl/unx/inc/saldata.hxx +++ b/vcl/unx/inc/saldata.hxx @@ -88,8 +88,7 @@ public: inline void StopTimer(); void Timeout() const; - const rtl::OUString& GetLocalHostName() const - { return maLocalHostName; } + const rtl::OUString& GetLocalHostName(); static int XErrorHdl( Display*, XErrorEvent* ); static int XIOErrorHdl( Display* ); diff --git a/vcl/unx/source/app/saldata.cxx b/vcl/unx/source/app/saldata.cxx index bfe96f7..3840844 100644 --- a/vcl/unx/source/app/saldata.cxx +++ b/vcl/unx/source/app/saldata.cxx @@ -272,7 +272,13 @@ X11SalData::X11SalData() m_pPlugin = NULL; hMainThread_ = pthread_self(); - osl_getLocalHostname( &maLocalHostName.pData ); +} + +const rtl::OUString& X11SalData::GetLocalHostName() +{ + if (!maLocalHostName.getLength()) + osl_getLocalHostname( &maLocalHostName.pData ); + return maLocalHostName; } X11SalData::~X11SalData()