//
class Error : public CssmError {
public:
- Error(CSSM_RETURN err) : CssmError(err) { }
+ Error(CSSM_RETURN err) : CssmError(err, false) { }
virtual const char *what () const throw();
enum {
bool mActive; // loaded, attached, etc.
RecursiveMutex mActivateMutex;
mutable Allocator *mAllocator; // allocator hierarchy (NULL => TBD)
+ mutable RecursiveMutex mAllocatorMutex; // protects allocator creation
template <class Obj> Obj parent() const
{ assert(mParent); return Obj(static_cast<typename Obj::Impl *>(&(*mParent))); }