• Michael Stahl's avatar
    Revert "remove ugly operator* in DynamicErrorInfo" · 653e181f
    Michael Stahl yazdı
    This reverts commit b5e3f8a5.
    
    The problem is this:
    
    ==24217== Conditional jump or move depends on uninitialised value(s)
    ==24217==    at 0x29A25FCE: SfxObjectShell::SetError(unsigned int, rtl::OUString const&) (objmisc.cxx:220)
    ==24217==    by 0x29A35E6E: SfxObjectShell::ImportFrom(SfxMedium&, com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&) (objstor.cxx:2300)
    ==24217==    by 0x29A3705C: SfxObjectShell::DoLoad(SfxMedium*) (objstor.cxx:765)
    ==24217==    by 0x29A6BC48:
    SfxBaseModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (sfxbasemodel.cxx:1802)
    
    The commit is bogus because it introduces a
    DynamicErrorInfo::GetErrorCode(), which overloads
    ErrorInfo::GetErrorCode(), which is used at least in
    DynamicErrorInfo_Impl::RegisterEDcr() and used to return a constructor
    argument of DynamicErrorInfo but now returns pImpl->lErrId,
    which is what this statement is trying to initialize.
    
    Ultimately this causes my clang+ASAN build to fail because the
    uninitialized error code happens to be detected as a mere Warning:
    
    Test name: testMathMalformedXml::Import
    assertion failed
    - Expression: !xComponent.is()
    - loading succeeded: sw/qa/extras/ooxmlimport/data/math-malformed_xml.docx
    
    Change-Id: I9141144e0bc356ee54279948f2fce036d1831a86
    653e181f
fuinsert.cxx 30.9 KB