diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2014-08-22 11:55:42 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2014-08-22 11:55:42 +0200 |
commit | 3584d4b47c4e6db479eee6735df8d56831d09638 (patch) | |
tree | d711aa0cc7798f718715a7c062ebe761636cdcb4 /svx | |
parent | 2a7119021edea8346e4673d57cac3f051a5d0968 (diff) |
Avoid invalid downcasts
Change-Id: Iea1688213cc0ebb8fcb3d3e3c862fd31275b9b38
Diffstat (limited to 'svx')
-rw-r--r-- | svx/source/svdraw/svdotxln.cxx | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/svx/source/svdraw/svdotxln.cxx b/svx/source/svdraw/svdotxln.cxx index 1cc6bc406036..8fad6e3b27dc 100644 --- a/svx/source/svdraw/svdotxln.cxx +++ b/svx/source/svdraw/svdotxln.cxx @@ -248,16 +248,17 @@ bool SdrTextObj::LoadText(const OUString& rFileName, const OUString& /*rFilterNa ImpSdrObjTextLinkUserData* SdrTextObj::GetLinkUserData() const { - ImpSdrObjTextLinkUserData* pData=NULL; sal_uInt16 nAnz=GetUserDataCount(); - for (sal_uInt16 nNum=nAnz; nNum>0 && pData==NULL;) { + for (sal_uInt16 nNum=nAnz; nNum>0;) { nNum--; - pData=(ImpSdrObjTextLinkUserData*)GetUserData(nNum); - if (pData->GetInventor()!=SdrInventor || pData->GetId()!=SDRUSERDATA_OBJTEXTLINK) { - pData=NULL; + SdrObjUserData * pData=GetUserData(nNum); + if (pData->GetInventor() == SdrInventor + && pData->GetId() == SDRUSERDATA_OBJTEXTLINK) + { + return static_cast<ImpSdrObjTextLinkUserData *>(pData); } } - return pData; + return 0; } void SdrTextObj::ImpLinkAnmeldung() |