• Michael Stahl's avatar
    sal: fix assert in osl_joinWithThread() · 8dc2f2f1
    Michael Stahl yazdı
    e3a74864 was subtly wrong:
    in a --enable-online-update build, the assertion triggered with
    nonsensical stacks like:
    
    4  in osl_joinWithThread(oslThread) at /sal/osl/unx/thread.cxx:441
    5  in osl::Thread::join() at /include/osl/thread.hxx:111
    6  in (anonymous namespace)::UpdateCheckJob::notifyTermination(com::sun::star::lang::EventObject const&) at /extensions/source/update/check/updatecheckjob.cxx:312
    7  in framework::Desktop::impl_sendNotifyTerminationEvent() at /framework/source/services/desktop.cxx:1665
    8  in framework::Desktop::terminate() at /framework/source/services/desktop.cxx:307
    ...
    14 in binaryurp::(anonymous namespace)::request(void*) at /binaryurp/source/reader.cxx:85
    15 in cppu_threadpool::JobQueue::enter(long, bool) at /cppu/source/threadpool/jobqueue.cxx:115
    16 in cppu_threadpool::ORequestThread::run() at /cppu/source/threadpool/thread.cxx:171
    
    The problem is that the early-return case is (accidentally) doing the
    right thing for an attempt to join a thread that has already terminated
    normally, but the assertion must not trigger when the terminated
    thread's ID is re-used by a later thread.
    
    Change-Id: I2a6764d2ec189d96ccb366db14395029bb8e73ad
    8dc2f2f1
Adı
Son kayıt (commit)
Son güncelleme
..
android Loading commit data...
cpprt Loading commit data...
cppunittester Loading commit data...
inc Loading commit data...
osl Loading commit data...
qa Loading commit data...
rtl Loading commit data...
systools/win32/uwinapi Loading commit data...
test Loading commit data...
textenc Loading commit data...
util Loading commit data...
workben Loading commit data...
CppunitTest_Module_DLL.mk Loading commit data...
CppunitTest_sal_bytesequence.mk Loading commit data...
CppunitTest_sal_osl_condition.mk Loading commit data...
CppunitTest_sal_osl_file.mk Loading commit data...
CppunitTest_sal_osl_getsystempathfromfileurl.mk Loading commit data...
CppunitTest_sal_osl_module.mk Loading commit data...
CppunitTest_sal_osl_mutex.mk Loading commit data...
CppunitTest_sal_osl_old_test_file.mk Loading commit data...
CppunitTest_sal_osl_pipe.mk Loading commit data...
CppunitTest_sal_osl_process.mk Loading commit data...
CppunitTest_sal_osl_profile.mk Loading commit data...
CppunitTest_sal_osl_security.mk Loading commit data...
CppunitTest_sal_osl_setthreadname.mk Loading commit data...
CppunitTest_sal_osl_thread.mk Loading commit data...
CppunitTest_sal_rtl_alloc.mk Loading commit data...
CppunitTest_sal_rtl_bootstrap.mk Loading commit data...
CppunitTest_sal_rtl_cipher.mk Loading commit data...
CppunitTest_sal_rtl_crc32.mk Loading commit data...
CppunitTest_sal_rtl_digest.mk Loading commit data...
CppunitTest_sal_rtl_doublelock.mk Loading commit data...
CppunitTest_sal_rtl_locale.mk Loading commit data...
CppunitTest_sal_rtl_math.mk Loading commit data...
CppunitTest_sal_rtl_ostringbuffer.mk Loading commit data...
CppunitTest_sal_rtl_oustring.mk Loading commit data...
CppunitTest_sal_rtl_oustringbuffer.mk Loading commit data...
CppunitTest_sal_rtl_process.mk Loading commit data...
CppunitTest_sal_rtl_strings.mk Loading commit data...
CppunitTest_sal_rtl_textenc.mk Loading commit data...
CppunitTest_sal_rtl_uri.mk Loading commit data...
CppunitTest_sal_rtl_uuid.mk Loading commit data...
CppunitTest_sal_tcwf.mk Loading commit data...
CppunitTest_sal_types.mk Loading commit data...
Executable_cppunittester.mk Loading commit data...
Executable_osl_process_child.mk Loading commit data...
Library_lo-bootstrap.mk Loading commit data...
Library_sal.mk Loading commit data...
Library_sal_textenc.mk Loading commit data...
Library_uwinapi.mk Loading commit data...
Makefile Loading commit data...
Module_sal.mk Loading commit data...
README Loading commit data...
StaticLibrary_salcpprt.mk Loading commit data...