]> Dogcows Code - chaz/openbox/blobdiff - src/client.cc
ustring seems to be working! yay!
[chaz/openbox] / src / client.cc
index 44e4d9eb550f691548532ac194a19dd9a96f492b..cdef1f94667b6f9c597783a97947e756965327f6 100644 (file)
@@ -74,6 +74,12 @@ Client::~Client()
 {
   const otk::Property *property = Openbox::instance->property();
 
+  // clean up childrens' references
+  while (!_transients.empty()) {
+    _transients.front()->_transient_for = 0;
+    _transients.pop_front();
+  }
+  
   // clean up parents reference to this
   if (_transient_for)
     _transient_for->_transients.remove(this); // remove from old parent
@@ -525,15 +531,15 @@ void Client::updateClass()
 
   if (property->get(_window, otk::Property::wm_class,
                     otk::Property::ascii, &num, &v)) {
-    if (num > 0) _app_name = v[0];
-    if (num > 1) _app_class = v[1];
+    if (num > 0) _app_name = v[0].c_str();
+    if (num > 1) _app_class = v[1].c_str();
   }
 
   v.clear();
   num = 1;
   if (property->get(_window, otk::Property::wm_window_role,
                     otk::Property::ascii, &num, &v)) {
-    if (num > 0) _role = v[0];
+    if (num > 0) _role = v[0].c_str();
   }
 }
 
This page took 0.020131 seconds and 4 git commands to generate.