X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/0103839d01b8762a836265695cee4efbecc057da..c31218a50b890d768c6b276a702cb9c22f89fb70:/lib/base/object.h diff --git a/lib/base/object.h b/lib/base/object.h index d0e2a65e..8cea2cd1 100644 --- a/lib/base/object.h +++ b/lib/base/object.h @@ -7,9 +7,7 @@ //#define OBJECT_DEBUG -#ifdef OBJECT_DEBUG - #include -#endif +#include typedef int RESULT; @@ -31,9 +29,13 @@ public: volatile int count; oRefCount(): count(0) { } operator volatile int&() { return count; } - ~oRefCount() { + ~oRefCount() + { #ifdef OBJECT_DEBUG - if (count) eDebug("OBJECT_DEBUG FATAL: %p has %d references!", this, count); else eDebug("OBJECT_DEBUG refcount ok! (%p)", this); + if (count) + eDebug("OBJECT_DEBUG FATAL: %p has %d references!", this, count); + else + eDebug("OBJECT_DEBUG refcount ok! (%p)", this); #endif } }; @@ -104,7 +106,7 @@ public: if (!ref) \ delete this; \ } - #elif defined(__ppc__) + #elif defined(__ppc__) || defined(__powerpc__) #define DECLARE_REF(x) \ private: oRefCount ref; \ public: void AddRef(); \ @@ -139,6 +141,7 @@ public: delete this; \ } #else + #warning use non optimized implementation of refcounting. #define DECLARE_REF(x) \ private:oRefCount ref; \ eSingleLock ref_lock; \