summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2002-07-03 05:26:11 +0000
committerDana Jansens <danakj@orodu.net>2002-07-03 05:26:11 +0000
commit9aaf4f8de762a540780aaef54d15802762dc4130 (patch)
treed0cc86742428959ec2213d976c0467758a3e904e
parent75a068cca2be843fc91521d94f0c7915b3e52598 (diff)
some memory bugs from woodblock (thanks!)
-rw-r--r--src/Screen.cc1
-rw-r--r--src/Window.cc22
2 files changed, 15 insertions, 8 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index 775254c6..dac5d6f8 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -1303,6 +1303,7 @@ void BScreen::updateWorkArea(void) {
}
xatom->setValue(getRootWindow(), XAtom::net_workarea, XAtom::cardinal,
dims, 4 * workspacesList.size());
+ delete [] dims;
} else
xatom->setValue(getRootWindow(), XAtom::net_workarea, XAtom::cardinal,
0, 0);
diff --git a/src/Window.cc b/src/Window.cc
index e735d07b..3816538d 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -1225,9 +1225,12 @@ void BlackboxWindow::getMWMHints(void) {
num = PropMwmHintsElements;
if (! xatom->getValue(client.window, XAtom::motif_wm_hints,
XAtom::motif_wm_hints, num,
- (unsigned long **)&mwm_hint) ||
- num < PropMwmHintsElements)
+ (unsigned long **)&mwm_hint))
return;
+ if (num < PropMwmHintsElements) {
+ delete [] mwm_hint;
+ return;
+ }
if (mwm_hint->flags & MwmHintsDecorations) {
if (mwm_hint->decorations & MwmDecorAll) {
@@ -1268,7 +1271,7 @@ void BlackboxWindow::getMWMHints(void) {
functions |= Func_Close;
}
}
- delete mwm_hint;
+ delete [] mwm_hint;
}
@@ -1286,9 +1289,12 @@ bool BlackboxWindow::getBlackboxHints(void) {
num = PropBlackboxHintsElements;
if (! xatom->getValue(client.window, XAtom::blackbox_hints,
XAtom::blackbox_hints, num,
- (unsigned long **)&blackbox_hint) ||
- num < PropBlackboxHintsElements)
+ (unsigned long **)&blackbox_hint))
return False;
+ if (num < PropBlackboxHintsElements) {
+ delete [] blackbox_hint;
+ return False;
+ }
if (blackbox_hint->flags & AttribShaded)
flags.shaded = (blackbox_hint->attrib & AttribShaded);
@@ -1350,7 +1356,7 @@ bool BlackboxWindow::getBlackboxHints(void) {
reconfigure();
}
- delete blackbox_hint;
+ delete [] blackbox_hint;
return True;
}
@@ -2103,7 +2109,7 @@ void BlackboxWindow::restoreAttributes(void) {
(unsigned long **)&net))
return;
if (num < PropBlackboxAttributesElements) {
- delete net;
+ delete [] net;
return;
}
@@ -2169,7 +2175,7 @@ void BlackboxWindow::restoreAttributes(void) {
// with the state set it will then be the map event's job to read the
// window's state and behave accordingly
- delete net;
+ delete [] net;
}