peiyongz    2003/03/09 09:01:09

  Modified:    c/src/xercesc/util/Platforms/UnixWare
                        UnixWarePlatformUtils.cpp
  Log:
  PanicHandler
  
  Revision  Changes    Path
  1.6       +12 -27    
xml-xerces/c/src/xercesc/util/Platforms/UnixWare/UnixWarePlatformUtils.cpp
  
  Index: UnixWarePlatformUtils.cpp
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/c/src/xercesc/util/Platforms/UnixWare/UnixWarePlatformUtils.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- UnixWarePlatformUtils.cpp 7 Mar 2003 20:34:16 -0000       1.5
  +++ UnixWarePlatformUtils.cpp 9 Mar 2003 17:01:08 -0000       1.6
  @@ -56,6 +56,9 @@
   
   /*
    * $Log$
  + * Revision 1.6  2003/03/09 17:01:08  peiyongz
  + * PanicHandler
  + *
    * Revision 1.5  2003/03/07 20:34:16  tng
    * [Bug 17774] Unixware platform utils not implemented .  Patch from Peter Crozier.
    *
  @@ -200,7 +203,7 @@
       }
       catch(...)
       {
  -        panic(XMLPlatformUtils::Panic_CantLoadMsgDomain);
  +        panic(PanicHandler::Panic_CantLoadMsgDomain);
       }
       return retVal;
   }
  @@ -235,25 +238,7 @@
   // ---------------------------------------------------------------------------
   void XMLPlatformUtils::panic(const PanicReasons reason)
   {
  -      const char* reasonStr = "Unknown reason";
  -    if (reason == Panic_NoTransService)
  -        reasonStr = "Could not load a transcoding service";
  -    else if (reason == Panic_NoDefTranscoder)
  -        reasonStr = "Could not load a local code page transcoder";
  -    else if (reason == Panic_CantFindLib)
  -        reasonStr = "Could not find the xerces-c DLL";
  -    else if (reason == Panic_UnknownMsgDomain)
  -        reasonStr = "Unknown message domain";
  -    else if (reason == Panic_CantLoadMsgDomain)
  -        reasonStr = "Cannot load message domain";
  -    else if (reason == Panic_SynchronizationErr)
  -        reasonStr = "Cannot synchronize system or mutex";
  -    else if (reason == Panic_SystemInit)
  -        reasonStr = "Cannot initialize the system or mutex";
  -
  -    fprintf(stderr, "%s\n", reasonStr);
  -
  -    exit(-1);
  +    fgUserPanicHandler? fgUserPanicHandler->panic(reason) : 
fgDefaultPanicHandler->panic(reason);
   }
   
   // ---------------------------------------------------------------------------
  @@ -588,7 +573,7 @@
       gAtomicOpMutex = new pthread_mutex_t;
   
       if (pthread_mutex_init(gAtomicOpMutex, NULL))
  -        panic( XMLPlatformUtils::Panic_SystemInit );
  +        panic( PanicHandler::Panic_SystemInit );
   }
   
   class  RecursiveMutex
  @@ -676,14 +661,14 @@
                       const void* const toCompare)
   {
       if (pthread_mutex_lock( gAtomicOpMutex))
  -        panic(XMLPlatformUtils::Panic_SynchronizationErr);
  +        panic(PanicHandler::Panic_SynchronizationErr);
   
       void *retVal = *toFill;
       if (*toFill == toCompare)
                 *toFill = (void *)newValue;
   
       if (pthread_mutex_unlock( gAtomicOpMutex))
  -        panic(XMLPlatformUtils::Panic_SynchronizationErr);
  +        panic(PanicHandler::Panic_SynchronizationErr);
   
   
       return retVal;
  @@ -692,12 +677,12 @@
   int XMLPlatformUtils::atomicIncrement(int &location)
   {
       if (pthread_mutex_lock( gAtomicOpMutex))
  -        panic(XMLPlatformUtils::Panic_SynchronizationErr);
  +        panic(PanicHandler::Panic_SynchronizationErr);
   
       int tmp = ++location;
   
       if (pthread_mutex_unlock( gAtomicOpMutex))
  -        panic(XMLPlatformUtils::Panic_SynchronizationErr);
  +        panic(PanicHandler::Panic_SynchronizationErr);
   
       return tmp;
   }
  @@ -705,12 +690,12 @@
   int XMLPlatformUtils::atomicDecrement(int &location)
   {
       if (pthread_mutex_lock( gAtomicOpMutex))
  -        panic(XMLPlatformUtils::Panic_SynchronizationErr);
  +        panic(PanicHandler::Panic_SynchronizationErr);
   
       int tmp = --location;
   
       if (pthread_mutex_unlock( gAtomicOpMutex))
  -        panic(XMLPlatformUtils::Panic_SynchronizationErr);
  +        panic(PanicHandler::Panic_SynchronizationErr);
   
       return tmp;
   }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to