// Exception model
//
const char *
-Error::what () const throw()
+Error::what () const _NOEXCEPT
{
return "CSSM client library error";
}
}
catch(...)
{
- return;
+ return; // Prevent re-throw of exception [function-try-block]
}
void
Allocator &
ObjectImpl::allocator() const
{
+ StLock<Mutex> _(mAllocatorMutex);
if (mAllocator == NULL)
{
// fix allocator now
void
ObjectImpl::allocator(Allocator &alloc)
{
+ StLock<Mutex> _(mAllocatorMutex);
assert(mAllocator == NULL); // cannot redefine allocator once set
mAllocator = &alloc;
}
}
AttachmentImpl::~AttachmentImpl()
+try
{
detach();
}
+catch (...) {
+ return;
+}
void
AttachmentImpl::make(CSSM_SERVICE_TYPE subserviceType)