[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdelibs/kdecore
From:       Dirk Mueller <mueller () kde ! org>
Date:       2004-01-02 15:02:38
Message-ID: 20040102150238.B4CCE93FC () office ! kde ! org
[Download RAW message or body]

CVS commit by mueller: 

add some memory cleanups to debugging code


  M +40 -23    netwm.cpp   1.125


--- kdelibs/kdecore/netwm.cpp  #1.124:1.125
@@ -24,5 +24,5 @@
 */
 
-// #define NETWMDEBUG
+//#define NETWMDEBUG
 
 #include <qwidget.h>
@@ -390,4 +390,6 @@ static void create_atoms(Display *d) {
             };
 
+    assert( !netwm_atoms_created );
+
     int i = netAtomCount;
     while (i--)
@@ -2893,7 +2895,12 @@ void NETWinInfo::setState(unsigned long 
 #ifdef NETWMDEBUG
         fprintf(stderr, "NETWinInfo::setState: setting state property (%d)\n", count);
-        for (int i = 0; i < count; i++)
+        for (int i = 0; i < count; i++) {
+            char* data_ret = XGetAtomName(p->display, (Atom) data[i]);
             fprintf(stderr, "NETWinInfo::setState:   state %ld '%s'\n",
-                    data[i], XGetAtomName(p->display, (Atom) data[i]));
+                    data[i], data_ret);
+            if ( data_ret )
+                XFree( data_ret );
+        }
+
 #endif
 
@@ -3131,7 +3138,11 @@ void NETWinInfo::setAllowedActions( unsi
 #ifdef NETWMDEBUG
     fprintf(stderr, "NETWinInfo::setAllowedActions: setting property (%d)\n", count);
-    for (int i = 0; i < count; i++)
+    for (int i = 0; i < count; i++) {
+        char* data_ret = XGetAtomName(p->display, (Atom) data[i]);
         fprintf(stderr, "NETWinInfo::setAllowedActions:   action %ld '%s'\n",
-            data[i], XGetAtomName(p->display, (Atom) data[i]));
+            data[i], data_ret);
+        if ( data_ret )
+            XFree(data_ret);
+    }
 #endif
 
@@ -3265,7 +3276,9 @@ void NETWinInfo::event(XEvent *event, un
             for (i = 1; i < 3; i++) {
 #ifdef NETWMDEBUG
+                char* debug_txt = XGetAtomName(p->display, (Atom) event->xclient.data.l[i]);
                 fprintf(stderr, "NETWinInfo::event:  message %ld '%s'\n",
-                        event->xclient.data.l[i],
-                        XGetAtomName(p->display, (Atom) event->xclient.data.l[i]));
+                        event->xclient.data.l[i], debug_txt );
+                if ( debug_txt )
+                    XFree( debug_txt );
 #endif
 
@@ -3502,8 +3515,10 @@ void NETWinInfo::update(const unsigned l
                 for (count = 0; count < nitems_ret; count++) {
 #ifdef NETWMDEBUG
+                    char* data_ret = XGetAtomName(p->display, (Atom) states[count]);
                     fprintf(stderr,
                             "NETWinInfo::update:   adding window state %ld '%s'\n",
-                            states[count],
-                            XGetAtomName(p->display, (Atom) states[count]));
+                            states[count], data_ret );
+                    if ( data_ret )
+                        XFree( data_ret );
 #endif
 
@@ -3651,8 +3666,10 @@ void NETWinInfo::update(const unsigned l
                     // remember all window types we know
 #ifdef NETWMDEBUG
+                    char* debug_type = XGetAtomName(p->display, (Atom) types[count]);
                     fprintf(stderr,
                             "NETWinInfo::update:   examining window type %ld %s\n",
-                            types[count],
-                            XGetAtomName(p->display, (Atom) types[count]));
+                            types[count], debug_type );
+                    if ( debug_type )
+                        XFree( debug_type );
 #endif
 
@@ -3815,5 +3832,5 @@ void NETWinInfo::update(const unsigned l
                             "NETWinInfo::update:   adding allowed action %ld '%s'\n",
                             actions[count],
-                            XGetAtomName(p->display, (Atom) states[count]));
+                            XGetAtomName(p->display, (Atom) actions[count]));
 #endif
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic