diff options
| author | Erik Kundiman <erik@megapahit.org> | 2024-07-27 15:17:57 +0800 | 
|---|---|---|
| committer | Erik Kundiman <erik@megapahit.org> | 2024-07-28 08:24:59 +0800 | 
| commit | 96a81b5ecbe3bffb582ded930752c0523df5e80a (patch) | |
| tree | a87a0bd09fd980562e88150dbfea3819d28d9f12 /indra/llplugin | |
| parent | 06e8f0c443c1ba7858d000c6d695b7e988e02053 (diff) | |
| parent | ed73208eb96b862b97fa285036edea1e792ca3c6 (diff) | |
Merge remote-tracking branch 'secondlife/release/2024.06-atlasaurus' into 2024.06-atlasaurus
Diffstat (limited to 'indra/llplugin')
| -rw-r--r-- | indra/llplugin/llpluginclassmedia.cpp | 10 | ||||
| -rw-r--r-- | indra/llplugin/llpluginmessagepipe.cpp | 2 | ||||
| -rw-r--r-- | indra/llplugin/llpluginprocessparent.cpp | 17 | ||||
| -rw-r--r-- | indra/llplugin/llpluginprocessparent.h | 2 | ||||
| -rw-r--r-- | indra/llplugin/llpluginsharedmemory.cpp | 4 | ||||
| -rw-r--r-- | indra/llplugin/slplugin/slplugin.cpp | 27 | 
6 files changed, 21 insertions, 41 deletions
| diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp index 453223b43e..cffbe3d8bd 100644 --- a/indra/llplugin/llpluginclassmedia.cpp +++ b/indra/llplugin/llpluginclassmedia.cpp @@ -37,7 +37,7 @@  extern LLControlGroup gSavedSettings;  #endif  #if LL_DARWIN -extern BOOL gHiDPISupport; +extern bool gHiDPISupport;  #endif  static int LOW_PRIORITY_TEXTURE_SIZE_DEFAULT = 256; @@ -264,10 +264,10 @@ void LLPluginClassMedia::idle(void)              message.setValueS32("height", mRequestedMediaHeight);              message.setValueS32("texture_width", mRequestedTextureWidth);              message.setValueS32("texture_height", mRequestedTextureHeight); -            message.setValueReal("background_r", mBackgroundColor.mV[VX]); -            message.setValueReal("background_g", mBackgroundColor.mV[VY]); -            message.setValueReal("background_b", mBackgroundColor.mV[VZ]); -            message.setValueReal("background_a", mBackgroundColor.mV[VW]); +            message.setValueReal("background_r", mBackgroundColor.mV[VRED]); +            message.setValueReal("background_g", mBackgroundColor.mV[VGREEN]); +            message.setValueReal("background_b", mBackgroundColor.mV[VBLUE]); +            message.setValueReal("background_a", mBackgroundColor.mV[VALPHA]);              mPlugin->sendMessage(message);  // DO NOT just use sendMessage() here -- we want this to jump ahead of the queue.              LL_DEBUGS("Plugin") << "Sending size_change" << LL_ENDL; diff --git a/indra/llplugin/llpluginmessagepipe.cpp b/indra/llplugin/llpluginmessagepipe.cpp index 2cbc16ceec..085afc0944 100644 --- a/indra/llplugin/llpluginmessagepipe.cpp +++ b/indra/llplugin/llpluginmessagepipe.cpp @@ -371,7 +371,7 @@ bool LLPluginMessagePipe::pumpInput(F64 timeout)  void LLPluginMessagePipe::processInput(void)  {      // Look for input delimiter(s) in the input buffer. -    int delim; +    size_t delim;      mInputMutex.lock();      while((delim = mInput.find(MESSAGE_DELIMITER)) != std::string::npos)      { diff --git a/indra/llplugin/llpluginprocessparent.cpp b/indra/llplugin/llpluginprocessparent.cpp index 6537733ddf..00abcf740f 100644 --- a/indra/llplugin/llpluginprocessparent.cpp +++ b/indra/llplugin/llpluginprocessparent.cpp @@ -34,7 +34,6 @@  #include "llpluginmessageclasses.h"  #include "llsdserialize.h"  #include "stringize.h" -  #include "llapr.h"  //virtual @@ -46,7 +45,7 @@ LLPluginProcessParentOwner::~LLPluginProcessParentOwner()  bool LLPluginProcessParent::sUseReadThread = false;  apr_pollset_t *LLPluginProcessParent::sPollSet = NULL;  bool LLPluginProcessParent::sPollsetNeedsRebuild = false; -LLMutex *LLPluginProcessParent::sInstancesMutex; +LLCoros::Mutex *LLPluginProcessParent::sInstancesMutex;  LLPluginProcessParent::mapInstances_t LLPluginProcessParent::sInstances;  LLThread *LLPluginProcessParent::sReadThread = NULL; @@ -106,7 +105,7 @@ LLPluginProcessParent::LLPluginProcessParent(LLPluginProcessParentOwner *owner):  {      if(!sInstancesMutex)      { -        sInstancesMutex = new LLMutex(); +        sInstancesMutex = new LLCoros::Mutex();      }      mOwner = owner; @@ -176,7 +175,7 @@ LLPluginProcessParent::ptr_t LLPluginProcessParent::create(LLPluginProcessParent      // Don't add to the global list until fully constructed.      { -        LLMutexLock lock(sInstancesMutex); +        LLCoros::LockType lock(*sInstancesMutex);          sInstances.insert(mapInstances_t::value_type(that.get(), that));      } @@ -186,7 +185,7 @@ LLPluginProcessParent::ptr_t LLPluginProcessParent::create(LLPluginProcessParent  /*static*/  void LLPluginProcessParent::shutdown()  { -    LLMutexLock lock(sInstancesMutex); +    LLCoros::LockType lock(*sInstancesMutex);      mapInstances_t::iterator it;      for (it = sInstances.begin(); it != sInstances.end(); ++it) @@ -244,7 +243,7 @@ bool LLPluginProcessParent::pollTick()          {              // this grabs a copy of the smart pointer to ourselves to ensure that we do not              // get destroyed until after this method returns. -            LLMutexLock lock(sInstancesMutex); +            LLCoros::LockType lock(*sInstancesMutex);              mapInstances_t::iterator it = sInstances.find(this);              if (it != sInstances.end())                  that = (*it).second; @@ -263,7 +262,7 @@ void LLPluginProcessParent::removeFromProcessing()      // Remove from the global list before beginning destruction.      {          // Make sure to get the global mutex _first_ here, to avoid a possible deadlock against LLPluginProcessParent::poll() -        LLMutexLock lock(sInstancesMutex); +        LLCoros::LockType lock(*sInstancesMutex);          {              LLMutexLock lock2(&mIncomingQueueMutex);              sInstances.erase(this); @@ -845,7 +844,7 @@ void LLPluginProcessParent::updatePollset()          return;      } -    LLMutexLock lock(sInstancesMutex); +    LLCoros::LockType lock(*sInstancesMutex);      if(sPollSet)      { @@ -968,7 +967,7 @@ void LLPluginProcessParent::poll(F64 timeout)                  mapInstances_t::iterator it;                  { -                    LLMutexLock lock(sInstancesMutex); +                    LLCoros::LockType lock(*sInstancesMutex);                      it = sInstances.find(thatId);                      if (it != sInstances.end())                          that = (*it).second; diff --git a/indra/llplugin/llpluginprocessparent.h b/indra/llplugin/llpluginprocessparent.h index 1966e6b13c..d1c4933d81 100644 --- a/indra/llplugin/llpluginprocessparent.h +++ b/indra/llplugin/llpluginprocessparent.h @@ -207,7 +207,7 @@ private:      apr_pollfd_t mPollFD;      static apr_pollset_t *sPollSet;      static bool sPollsetNeedsRebuild; -    static LLMutex *sInstancesMutex; +    static LLCoros::Mutex *sInstancesMutex;      static mapInstances_t sInstances;      static void dirtyPollSet();      static void updatePollset(); diff --git a/indra/llplugin/llpluginsharedmemory.cpp b/indra/llplugin/llpluginsharedmemory.cpp index 1d5f52c394..955c9f90d7 100644 --- a/indra/llplugin/llpluginsharedmemory.cpp +++ b/indra/llplugin/llpluginsharedmemory.cpp @@ -454,7 +454,7 @@ bool LLPluginSharedMemory::create(size_t size)                   NULL,                      // default security                   PAGE_READWRITE,            // read/write access                   0,                         // max. object size -                 mSize,                     // buffer size +                 static_cast<DWORD>(mSize), // buffer size                   mName.c_str());            // name of mapping object      if(mImpl->mMapFile == NULL) @@ -482,7 +482,7 @@ bool LLPluginSharedMemory::attach(const std::string &name, size_t size)      mImpl->mMapFile = OpenFileMappingA(                  FILE_MAP_ALL_ACCESS,        // read/write access -                FALSE,                      // do not inherit the name +                false,                      // do not inherit the name                  mName.c_str());             // name of mapping object      if(mImpl->mMapFile == NULL) diff --git a/indra/llplugin/slplugin/slplugin.cpp b/indra/llplugin/slplugin/slplugin.cpp index d20e01c231..ae26b9d452 100644 --- a/indra/llplugin/slplugin/slplugin.cpp +++ b/indra/llplugin/slplugin/slplugin.cpp @@ -88,22 +88,6 @@ LONG WINAPI myWin32ExceptionHandler( struct _EXCEPTION_POINTERS* exception_infop      return EXCEPTION_EXECUTE_HANDLER;  } -// Taken from : http://blog.kalmbachnet.de/?postid=75 -// The MSVC 2005 CRT forces the call of the default-debugger (normally Dr.Watson) -// even with the other exception handling code. This (terrifying) piece of code -// patches things so that doesn't happen. -LPTOP_LEVEL_EXCEPTION_FILTER WINAPI MyDummySetUnhandledExceptionFilter( -    LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter ) -{ -    return NULL; -} - -BOOL PreventSetUnhandledExceptionFilter() -{ -    // remove the scary stuff that also isn't supported on 64 bit Windows -    return TRUE; -} -  ////////////////////////////////////////////////////////////////////////////////  //  Hook our exception handler and replace the system one  void initExceptionHandler() @@ -112,7 +96,6 @@ void initExceptionHandler()      // save old exception handler in case we need to restore it at the end      prev_filter = SetUnhandledExceptionFilter( myWin32ExceptionHandler ); -    PreventSetUnhandledExceptionFilter();  }  bool checkExceptionHandler() @@ -121,18 +104,16 @@ bool checkExceptionHandler()      LPTOP_LEVEL_EXCEPTION_FILTER prev_filter;      prev_filter = SetUnhandledExceptionFilter(myWin32ExceptionHandler); -    PreventSetUnhandledExceptionFilter(); -      if (prev_filter != myWin32ExceptionHandler)      {          LL_WARNS("AppInit") << "Our exception handler (" << (void *)myWin32ExceptionHandler << ") replaced with " << prev_filter << "!" << LL_ENDL;          ok = false;      } -    if (prev_filter == NULL) +    if (prev_filter == nullptr)      { -        ok = FALSE; -        if (NULL == myWin32ExceptionHandler) +        ok = false; +        if (nullptr == myWin32ExceptionHandler)          {              LL_WARNS("AppInit") << "Exception handler uninitialized." << LL_ENDL;          } @@ -245,7 +226,7 @@ int main(int argc, char **argv)          F64 elapsed = timer.getElapsedTimeF64();          F64 remaining = plugin->getSleepTime() - elapsed; -        if(remaining <= 0.0f) +        if(remaining <= 0.0)          {              // We've already used our full allotment.  //          LL_INFOS("slplugin") << "elapsed = " << elapsed * 1000.0f << " ms, remaining = " << remaining * 1000.0f << " ms, not sleeping" << LL_ENDL; | 
