• Stephan Bergmann's avatar
    Avoid member call through null this pointer · 4a82543b
    Stephan Bergmann yazdı
    ...as seen with UBSan during newly introduced UITest_goalSeek (where eOldActive
    is 0 and all four members of pGridWin except for pGridWin[2] are null):
    
    > sc/source/ui/view/tabview3.cxx:1814:45: runtime error: member call on null pointer of type 'vcl::Window'
    >  #0 in ScTabView::SetTabNo(short, bool, bool, bool) at sc/source/ui/view/tabview3.cxx:1814:45 (instdir/program/../program/libsclo.so +0xb25dfca)
    >  #1 in ScTabViewShell::DoReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at sc/source/ui/view/tabvwsh4.cxx:500:5 (instdir/program/../program/libsclo.so +0xb2d27a5)
    >  #2 in ScTabViewShell::ReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at sc/source/ui/view/tabvwsh4.cxx:491:9 (instdir/program/../program/libsclo.so +0xb2d245a)
    >  #3 in SfxBaseController::ConnectSfxFrame_Impl(SfxBaseController::ConnectSfxFrame) at sfx2/source/view/sfxbasecontroller.cxx:1368:52 (instdir/program/libsfxlo.so +0x320c974)
    >  #4 in SfxBaseController::attachFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) at sfx2/source/view/sfxbasecontroller.cxx:550:13 (instdir/program/libsfxlo.so +0x32055f1)
    >  #5 in (anonymous namespace)::SfxFrameLoader_Impl::impl_createDocumentView(com::sun::star::uno::Reference<com::sun::star::frame::XModel2> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, comphelper::NamedValueCollection const&, rtl::OUString const&) at sfx2/source/view/frmload.cxx:593:18 (instdir/program/libsfxlo.so +0x319fcdd)
    >  #6 in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) at sfx2/source/view/frmload.cxx:710:13 (instdir/program/libsfxlo.so +0x319b263)
    >  #7 in framework::LoadEnv::impl_loadContent() at framework/source/loadenv/loadenv.cxx:1148:37 (instdir/program/../program/libfwklo.so +0xfa4cc8)
    >  #8 in framework::LoadEnv::startLoading() at framework/source/loadenv/loadenv.cxx:382:20 (instdir/program/../program/libfwklo.so +0xf9a76a)
    >  #9 in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/loadenv/loadenv.cxx:168:14 (instdir/program/../program/libfwklo.so +0xf97d15)
    >  #10 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/services/desktop.cxx:618:12 (instdir/program/../program/libfwklo.so +0x108e918)
    >  #11 in non-virtual thunk to framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/services/desktop.cxx (instdir/program/../program/libfwklo.so +0x108e9ca)
    >  #12 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77:5 (instdir/program/libgcc3_uno.so +0xba96d)
    >  #13 in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233:13 (instdir/program/libgcc3_uno.so +0xb6855)
    >  #14 in unoInterfaceProxyDispatch at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:420:13 (instdir/program/libgcc3_uno.so +0xb4663)
    >  #15 in binaryurp::IncomingRequest::execute_throw(binaryurp::BinaryAny*, std::__debug::vector<binaryurp::BinaryAny, std::allocator<binaryurp::BinaryAny> >*) const at binaryurp/source/incomingrequest.cxx:236:13 (instdir/program/libbinaryurplo.so +0x209ede)
    >  #16 in binaryurp::IncomingRequest::execute() const at binaryurp/source/incomingrequest.cxx:79:26 (instdir/program/libbinaryurplo.so +0x205f10)
    >  #17 in request at binaryurp/source/reader.cxx:85:9 (instdir/program/libbinaryurplo.so +0x2966d3)
    >  #18 in cppu_threadpool::JobQueue::enter(long, bool) at cppu/source/threadpool/jobqueue.cxx:107:17 (instdir/program/libuno_cppu.so.3 +0x17e863)
    >  #19 in cppu_threadpool::ORequestThread::run() at cppu/source/threadpool/thread.cxx:165:31 (instdir/program/libuno_cppu.so.3 +0x1977bb)
    >  #20 in threadFunc at include/osl/thread.hxx:185:15 (instdir/program/libuno_cppu.so.3 +0x1a0347)
    >  #21 in osl_thread_start_Impl(void*) at sal/osl/unx/thread.cxx:234:9 (instdir/program/libuno_sal.so.3 +0x2e6789)
    >  #22 in start_thread at /usr/src/debug/glibc-2.27-56-g50df56ca86/nptl/pthread_create.c:463:7 (/lib64/libpthread.so.0 +0x7593)
    >  #23 in __GI___clone at /usr/src/debug/glibc-2.27-56-g50df56ca86/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95 (/lib64/libc.so.6 +0xfa00e)
    
    Change-Id: I23fb29cdec429a1bbdba3c04f3c3c66ad744621e
    Reviewed-on: https://gerrit.libreoffice.org/56224Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
    Tested-by: 's avatarStephan Bergmann <sbergman@redhat.com>
    4a82543b
Adı
Son kayıt (commit)
Son güncelleme
..
inc Loading commit data...
qa Loading commit data...
res/xml Loading commit data...
sdi Loading commit data...
source Loading commit data...
uiconfig/scalc Loading commit data...
util Loading commit data...
workben Loading commit data...
AllLangMoTarget_sc.mk Loading commit data...
CppunitTest_sc_addin_functions_test.mk Loading commit data...
CppunitTest_sc_anchor_test.mk Loading commit data...
CppunitTest_sc_annotationobj.mk Loading commit data...
CppunitTest_sc_annotationshapeobj.mk Loading commit data...
CppunitTest_sc_annotationsobj.mk Loading commit data...
CppunitTest_sc_arealinkobj.mk Loading commit data...
CppunitTest_sc_arealinksobj.mk Loading commit data...
CppunitTest_sc_array_functions_test.mk Loading commit data...
CppunitTest_sc_autoformatobj.mk Loading commit data...
CppunitTest_sc_bugfix_test.mk Loading commit data...
CppunitTest_sc_cache_test.mk Loading commit data...
CppunitTest_sc_cellcursorobj.mk Loading commit data...
CppunitTest_sc_cellobj.mk Loading commit data...
CppunitTest_sc_cellrangeobj.mk Loading commit data...
CppunitTest_sc_cellrangesobj.mk Loading commit data...
CppunitTest_sc_chart2dataprovider.mk Loading commit data...
CppunitTest_sc_chart_regression_test.mk Loading commit data...
CppunitTest_sc_check_data_pilot_field.mk Loading commit data...
CppunitTest_sc_check_data_pilot_table.mk Loading commit data...
CppunitTest_sc_check_xcell_ranges_query.mk Loading commit data...
CppunitTest_sc_cond_format_merge.mk Loading commit data...
CppunitTest_sc_consolidationdescriptorobj.mk Loading commit data...
CppunitTest_sc_copypaste.mk Loading commit data...
CppunitTest_sc_core.mk Loading commit data...
CppunitTest_sc_database_functions_test.mk Loading commit data...
CppunitTest_sc_databaserangeobj.mk Loading commit data...
CppunitTest_sc_databaserangesobj.mk Loading commit data...
CppunitTest_sc_datapilotfieldobj.mk Loading commit data...
CppunitTest_sc_datapilotitemobj.mk Loading commit data...
CppunitTest_sc_datapilottableobj.mk Loading commit data...
CppunitTest_sc_datapilottablesobj.mk Loading commit data...
CppunitTest_sc_dataprovider.mk Loading commit data...
CppunitTest_sc_datatransformation.mk Loading commit data...
CppunitTest_sc_datetime_functions_test.mk Loading commit data...
CppunitTest_sc_ddelinkobj.mk Loading commit data...
CppunitTest_sc_documentconfigurationobj.mk Loading commit data...
CppunitTest_sc_editfieldobj_cell.mk Loading commit data...
CppunitTest_sc_editfieldobj_header.mk Loading commit data...
CppunitTest_sc_filterdescriptorbaseobj.mk Loading commit data...
CppunitTest_sc_filters_test.mk Loading commit data...
CppunitTest_sc_financial_functions_test.mk Loading commit data...
CppunitTest_sc_functiondescriptionobj.mk Loading commit data...
CppunitTest_sc_functionlistobj.mk Loading commit data...
CppunitTest_sc_functions_test_old.mk Loading commit data...
CppunitTest_sc_headerfootercontentobj.mk Loading commit data...
CppunitTest_sc_html_export_test.mk Loading commit data...
CppunitTest_sc_importdescriptorbaseobj.mk Loading commit data...
CppunitTest_sc_information_functions_test.mk Loading commit data...
CppunitTest_sc_labelrangeobj.mk Loading commit data...
CppunitTest_sc_labelrangesobj.mk Loading commit data...
CppunitTest_sc_logical_functions_test.mk Loading commit data...
CppunitTest_sc_macros_test.mk Loading commit data...
CppunitTest_sc_mark_test.mk Loading commit data...
CppunitTest_sc_mathematical_functions_test.mk Loading commit data...
CppunitTest_sc_modelobj.mk Loading commit data...
CppunitTest_sc_namedrangeobj.mk Loading commit data...
CppunitTest_sc_namedrangesobj.mk Loading commit data...
CppunitTest_sc_new_cond_format_api.mk Loading commit data...
CppunitTest_sc_opencl_test.mk Loading commit data...
CppunitTest_sc_outlineobj.mk Loading commit data...
CppunitTest_sc_parallelism.mk Loading commit data...
CppunitTest_sc_perfobj.mk Loading commit data...
CppunitTest_sc_pivottable_filters_test.mk Loading commit data...
CppunitTest_sc_range_test.mk Loading commit data...
CppunitTest_sc_rangelst_test.mk Loading commit data...
CppunitTest_sc_recentfunctionsobj.mk Loading commit data...
CppunitTest_sc_recordchanges.mk Loading commit data...
CppunitTest_sc_scenariosobj.mk Loading commit data...
CppunitTest_sc_screenshots.mk Loading commit data...
CppunitTest_sc_shapeobj.mk Loading commit data...
CppunitTest_sc_sheetlinkobj.mk Loading commit data...
CppunitTest_sc_sortdescriptorbaseobj.mk Loading commit data...
CppunitTest_sc_spreadsheet_functions_test.mk Loading commit data...
CppunitTest_sc_spreadsheetsettings.mk Loading commit data...
CppunitTest_sc_spreadsheetsettingsobj.mk Loading commit data...
CppunitTest_sc_statistical_functions_test.mk Loading commit data...
CppunitTest_sc_styleloaderobj.mk Loading commit data...
CppunitTest_sc_subsequent_export_test.mk Loading commit data...
CppunitTest_sc_subsequent_filters_test.mk Loading commit data...
CppunitTest_sc_subtotaldescriptorbaseobj.mk Loading commit data...
CppunitTest_sc_subtotalfieldobj.mk Loading commit data...
CppunitTest_sc_tableconditionalentryobj.mk Loading commit data...
CppunitTest_sc_tableconditionalformatobj.mk Loading commit data...
CppunitTest_sc_tablesheetobj.mk Loading commit data...
CppunitTest_sc_tablesheetsobj.mk Loading commit data...
CppunitTest_sc_tablevalidationobj.mk Loading commit data...
CppunitTest_sc_tabviewobj.mk Loading commit data...
CppunitTest_sc_text_functions_test.mk Loading commit data...
CppunitTest_sc_tiledrendering.mk Loading commit data...
CppunitTest_sc_ucalc.mk Loading commit data...
CppunitTest_sc_viewpaneobj.mk Loading commit data...
IwyuFilter_sc.yaml Loading commit data...
JunitTest_sc_complex.mk Loading commit data...
JunitTest_sc_unoapi_1.mk Loading commit data...
JunitTest_sc_unoapi_2.mk Loading commit data...
JunitTest_sc_unoapi_3.mk Loading commit data...
JunitTest_sc_unoapi_4.mk Loading commit data...
JunitTest_sc_unoapi_5.mk Loading commit data...
JunitTest_sc_unoapi_6.mk Loading commit data...
JunitTest_sc_unoapi_7.mk Loading commit data...
Library_sc.mk Loading commit data...
Library_scd.mk Loading commit data...
Library_scfilt.mk Loading commit data...
Library_scqahelper.mk Loading commit data...
Library_scui.mk Loading commit data...
Library_vbaobj.mk Loading commit data...
Makefile Loading commit data...
Module_sc.mk Loading commit data...
Package_opencl.mk Loading commit data...
Package_res_xml.mk Loading commit data...
PythonTest_sc_python.mk Loading commit data...
README Loading commit data...
TODO.performance Loading commit data...
UIConfig_scalc.mk Loading commit data...
UITest_autofilter.mk Loading commit data...
UITest_calc_tests.mk Loading commit data...
UITest_calc_tests2.mk Loading commit data...
UITest_calc_tests3.mk Loading commit data...
UITest_calc_tests4.mk Loading commit data...
UITest_conditional_format.mk Loading commit data...
UITest_goalSeek.mk Loading commit data...
UITest_hide_cols.mk Loading commit data...
UITest_range_name.mk Loading commit data...
UITest_search_replace.mk Loading commit data...
UITest_solver.mk Loading commit data...
UITest_statistics.mk Loading commit data...
common_unoapi_tests.mk Loading commit data...