summaryrefslogtreecommitdiff
authorzecke <zecke>2004-12-26 14:12:19 (UTC)
committer zecke <zecke>2004-12-26 14:12:19 (UTC)
commitb4f1865343e70fe27750084b1f1d959c28ec7762 (patch) (side-by-side diff)
tree6ac4b269066d82cf1ab198cd33477f3299fdad0e
parent99b055b572f64f180751b3a43440796d1bf9fc4f (diff)
downloadopie-b4f1865343e70fe27750084b1f1d959c28ec7762.zip
opie-b4f1865343e70fe27750084b1f1d959c28ec7762.tar.gz
opie-b4f1865343e70fe27750084b1f1d959c28ec7762.tar.bz2
QWidget *wid = 0;
delete wid; is legal c++ code. So make sure when freeing we obey c++ but take into account that free(NULL) is not legal.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 43a9be5..af00f49 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -2270,25 +2270,29 @@ void* operator new( size_t size )
}
void operator delete[]( void* p )
{
- free( p );
+ if ( p )
+ free( p );
}
void operator delete[]( void* p, size_t /*size*/ )
{
- free( p );
+ if ( p )
+ free( p );
}
void operator delete( void* p )
{
- free( p );
+ if ( p )
+ free( p );
}
void operator delete( void* p, size_t /*size*/ )
{
- free( p );
+ if ( p )
+ free( p );
}
#endif