Skip to content
Snippets Groups Projects
user avatar
Nat Goodspeed authored
A static LLProcessPtr variable won't be destroyed until after procedural code
has shut down APR. The trouble is that LLProcess's destructor unregisters
itself from APR -- and, for an autokill LLProcess, attempts to kill the child
process. All that is ill-advised after APR shutdown.
Disable use of apr_pool_note_subprocess() mechanism. This should be another
viable way of coping with static autokill LLProcessPtr variables: when the
designated APR pool is cleaned up, APR promises to kill the child process. But
whether it's an APR bug or a calling error, the present (now disabled) call in
LLProcess results in OUR process, the viewer, getting SIGTERM when it asks to
clean up the global APR pool.
ab7fb594
History
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Name Last commit Last update
..
tests
CMakeLists.txt
bitpack.cpp
bitpack.h
ctype_workaround.h
doublelinkedlist.h
imageids.cpp
imageids.h
indra_constants.cpp
indra_constants.h
is_approx_equal_fraction.h
linden_common.h
linked_lists.h
ll_template_cast.h
llaccountingcost.h
llagentconstants.h
llallocator.cpp
llallocator.h
llallocator_heap_profile.cpp
llallocator_heap_profile.h
llapp.cpp
llapp.h
llapr.cpp
llapr.h
llassettype.cpp
llassettype.h
llassoclist.h
llavatarconstants.h
llavatarname.cpp
llavatarname.h
llbase32.cpp
llbase32.h
llbase64.cpp
llbase64.h
llboost.h
llchat.h
llclickaction.h
llcommon.cpp
llcommon.h
llcommonutils.cpp
llcommonutils.h
llcoros.cpp
llcoros.h
llcrc.cpp
llcrc.h
llcriticaldamp.cpp
llcriticaldamp.h
llcursortypes.cpp
llcursortypes.h
lldarray.h
lldarrayptr.h
lldate.cpp
lldate.h
lldefs.h
lldeleteutils.h
lldependencies.cpp
lldependencies.h
lldepthstack.h
lldictionary.cpp
lldictionary.h
lldlinked.h
lldoubledispatch.h
lldqueueptr.h
llendianswizzle.h
llenum.h
llerror.cpp
llerror.h
llerrorcontrol.h
llerrorlegacy.h
llerrorthread.cpp
llerrorthread.h
llevent.cpp
llevent.h
lleventapi.cpp
lleventapi.h
lleventcoro.cpp
lleventcoro.h
lleventdispatcher.cpp
lleventdispatcher.h
lleventemitter.h
lleventfilter.cpp
lleventfilter.h
llevents.cpp
llevents.h
lleventtimer.cpp
lleventtimer.h
llextendedstatus.h
llfasttimer.h
llfasttimer_class.cpp
llfasttimer_class.h
llfile.cpp
llfile.h
llfindlocale.cpp
llfindlocale.h
llfixedbuffer.cpp
llfixedbuffer.h
llfoldertype.cpp
llfoldertype.h
llformat.cpp
llformat.h
llframetimer.cpp
llframetimer.h
llhash.h
llheartbeat.cpp
llheartbeat.h
llhttpstatuscodes.h
llindexedqueue.h
llinitparam.cpp
llinitparam.h
llinstancetracker.cpp
llinstancetracker.h
llkeythrottle.h
llkeyusetracker.h
lllazy.cpp
lllazy.h
llleap.cpp
llleap.h
lllinkedqueue.h
lllistenerwrapper.h
llliveappconfig.cpp
llliveappconfig.h
lllivefile.cpp
lllivefile.h
lllocalidhashmap.h
lllog.cpp
lllog.h
lllslconstants.h
llmap.h
llmd5.cpp
llmd5.h
llmemory.cpp
llmemory.h
llmemorystream.cpp
llmemorystream.h
llmemtype.cpp
llmemtype.h
llmetricperformancetester.cpp
llmetricperformancetester.h
llmetrics.cpp
llmetrics.h
llmortician.cpp
llmortician.h
llnametable.h
lloptioninterface.cpp
lloptioninterface.h
llpointer.h
llpreprocessor.h
llpriqueuemap.h
llprocess.cpp
llprocess.h
llprocessor.cpp
llprocessor.h
llptrskiplist.h
llptrskipmap.h
llptrto.cpp
llptrto.h
llqueuedthread.cpp
llqueuedthread.h
llrand.cpp
llrand.h
llrefcount.cpp
llrefcount.h
llregistry.h
llrun.cpp
llrun.h
llsafehandle.h
llsd.cpp
llsd.h
llsdparam.cpp
llsdparam.h
llsdserialize.cpp
llsdserialize.h
llsdserialize_xml.cpp
llsdserialize_xml.h
llsdutil.cpp
llsdutil.h
llsecondlifeurls.cpp
llsecondlifeurls.h
llsimplehash.h
llsingleton.cpp
llsingleton.h
llskiplist.h
llskipmap.h
llsmoothstep.h
llstack.h
llstacktrace.cpp
llstacktrace.h
llstat.cpp
llstat.h
llstatenums.h
llstl.h
llstreamqueue.cpp
llstreamqueue.h
llstreamtools.cpp
llstreamtools.h
llstrider.h
llstring.cpp
llstring.h
llstringtable.cpp
llstringtable.h