Update of /cvsroot/mahogany/M/src/classes
In directory sc8-pr-cvs1:/tmp/cvs-serv25005/src/classes

Modified Files:
        MObject.cpp 
Log Message:
Resolved conflicts in pointers.h and added (not yet usable) WeakPtr

Index: MObject.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/classes/MObject.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -b -u -2 -r1.27 -r1.28
--- MObject.cpp 7 Oct 2003 09:05:49 -0000       1.27
+++ MObject.cpp 9 Oct 2003 16:39:09 -0000       1.28
@@ -97,4 +97,5 @@
    gs_aObjects.Add(this);
    m_nRef = 1;
+   m_weak = 0;
 }
 
@@ -173,2 +174,29 @@
 }
 
+class WeakRefCounter : public MObjectRC
+{
+public:
+   WeakRefCounter() : m_deleted(false) {}
+   bool m_deleted;
+};
+
+extern WeakRefCounter *WeakRefAdd(MObjectRC *pointer)
+{
+   if( !pointer->m_weak )
+      pointer->m_weak = new WeakRefCounter;
+   else
+      pointer->m_weak->IncRef();
+
+   return pointer->m_weak;
+}
+
+extern void WeakRefRemove(WeakRefCounter *counter)
+{
+   counter->DecRef();
+}
+
+extern void WeakRefDeleted(WeakRefCounter *counter)
+{
+   if( counter )
+      counter->m_deleted = true;
+}



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
SourceForge.net hosts over 70,000 Open Source Projects.
See the people who have HELPED US provide better services:
Click here: http://sourceforge.net/supporters.php
_______________________________________________
Mahogany-cvsupdates mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mahogany-cvsupdates

Reply via email to