diff options
Diffstat (limited to 'vcl/unx/generic/printer/cupsmgr.cxx')
-rw-r--r-- | vcl/unx/generic/printer/cupsmgr.cxx | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/vcl/unx/generic/printer/cupsmgr.cxx b/vcl/unx/generic/printer/cupsmgr.cxx index 92abca9a634c..a38c01a7b029 100644 --- a/vcl/unx/generic/printer/cupsmgr.cxx +++ b/vcl/unx/generic/printer/cupsmgr.cxx @@ -913,13 +913,14 @@ namespace { class RTSPWDialog : public ModalDialog { - FixedText* m_pText; - Edit* m_pUserEdit; - Edit* m_pPassEdit; + VclPtr<FixedText> m_pText; + VclPtr<Edit> m_pUserEdit; + VclPtr<Edit> m_pPassEdit; public: RTSPWDialog(const OString& rServer, const OString& rUserName, vcl::Window* pParent); - + virtual ~RTSPWDialog(); + virtual void dispose() SAL_OVERRIDE; OString getUserName() const; OString getPassword() const; }; @@ -938,6 +939,19 @@ namespace m_pUserEdit->SetText( OStringToOUString(rUserName, osl_getThreadTextEncoding())); } + RTSPWDialog::~RTSPWDialog() + { + dispose(); + } + + void RTSPWDialog::dispose() + { + m_pText.clear(); + m_pUserEdit.clear(); + m_pPassEdit.clear(); + ModalDialog::dispose(); + } + OString RTSPWDialog::getUserName() const { return OUStringToOString( m_pUserEdit->GetText(), osl_getThreadTextEncoding() ); |