summaryrefslogtreecommitdiff
authorerik <erik>2007-01-24 19:54:07 (UTC)
committer erik <erik>2007-01-24 19:54:07 (UTC)
commit89e81059e832ff77c2f0ac8b9db12f80eafa03fc (patch) (unidiff)
tree99a130fc643d2aeefdecab452f644e7b61a5f50e
parent035bbc5bf689839c8d8e7be37f347b0dd900fccf (diff)
downloadopie-89e81059e832ff77c2f0ac8b9db12f80eafa03fc.zip
opie-89e81059e832ff77c2f0ac8b9db12f80eafa03fc.tar.gz
opie-89e81059e832ff77c2f0ac8b9db12f80eafa03fc.tar.bz2
Each file in this commit has an instance where a pointer is checked at
one point in the code and then not checked in another point in the code. If it needed to be checked once, it needs to be checked the other time. If not the application could segfault.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opieui/big-screen/osplitter.cpp2
-rw-r--r--library/qpeapplication.cpp10
-rw-r--r--noncore/applets/pcmcia/pcmcia.cpp6
-rw-r--r--noncore/apps/checkbook/mainwindow.cpp7
-rw-r--r--noncore/apps/opie-console/procctl.cpp5
-rw-r--r--noncore/apps/tinykate/libkate/document/katedocument.cpp123
-rw-r--r--noncore/settings/sysinfo/devicesinfo.cpp2
-rw-r--r--noncore/todayplugins/stockticker/libstocks/http.c2
8 files changed, 83 insertions, 74 deletions
diff --git a/libopie2/opieui/big-screen/osplitter.cpp b/libopie2/opieui/big-screen/osplitter.cpp
index 78e919a..5d1e2cf 100644
--- a/libopie2/opieui/big-screen/osplitter.cpp
+++ b/libopie2/opieui/big-screen/osplitter.cpp
@@ -227,7 +227,7 @@ void OSplitter::addWidget( QWidget* wid, const QString& icon, const QString& lab
227 { 227 {
228 if (m_hbox ) 228 if (m_hbox )
229 addToBox( cont ); 229 addToBox( cont );
230 else 230 else if (m_tabWidget)
231 addToTab( cont ); 231 addToTab( cont );
232 } 232 }
233} 233}
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 34f5e6a..d959c7a 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -1769,12 +1769,12 @@ void QPEApplication::showMainWidget( QWidget* mw, bool nomaximize )
1769*/ 1769*/
1770void QPEApplication::showMainDocumentWidget( QWidget* mw, bool nomaximize ) 1770void QPEApplication::showMainDocumentWidget( QWidget* mw, bool nomaximize )
1771{ 1771{
1772 if ( mw && argc() == 2 ) 1772 if ( mw ) {
1773 Global::setDocument( mw, QString::fromUtf8(argv()[1]) ); 1773 if ( argc() == 2 )
1774 Global::setDocument( mw, QString::fromUtf8(argv()[1]) );
1774 1775
1775 1776 d->show(mw, nomaximize );
1776// setMainWidget(mw); see above 1777 }
1777 d->show(mw, nomaximize );
1778} 1778}
1779 1779
1780 1780
diff --git a/noncore/applets/pcmcia/pcmcia.cpp b/noncore/applets/pcmcia/pcmcia.cpp
index 187adc6..c639002 100644
--- a/noncore/applets/pcmcia/pcmcia.cpp
+++ b/noncore/applets/pcmcia/pcmcia.cpp
@@ -236,6 +236,12 @@ void PcmciaManager::cardMessage( const QCString & msg, const QByteArray & )
236 if ( !newCard ) ++it; else break; 236 if ( !newCard ) ++it; else break;
237 } 237 }
238 } 238 }
239
240 if ( !theCard ) {
241 owarn << "pcmcia: Finished working through cards in PCMCIA system but I do not have a valid card handle" << oendl;
242 return;
243 }
244
239 if ( newCard ) 245 if ( newCard )
240 { 246 {
241 odebug << "pcmcia: unconfigured card detected" << oendl; 247 odebug << "pcmcia: unconfigured card detected" << oendl;
diff --git a/noncore/apps/checkbook/mainwindow.cpp b/noncore/apps/checkbook/mainwindow.cpp
index d9e2047..8e2e2e3 100644
--- a/noncore/apps/checkbook/mainwindow.cpp
+++ b/noncore/apps/checkbook/mainwindow.cpp
@@ -243,6 +243,7 @@ void MainWindow::slotEdit()
243// --- openBook --------------------------------------------------------------- 243// --- openBook ---------------------------------------------------------------
244void MainWindow::openBook(QListViewItem *curritem) 244void MainWindow::openBook(QListViewItem *curritem)
245{ 245{
246 if ( !curritem ) return;
246 // find book in List 247 // find book in List
247 QString currname=curritem->text(posName); 248 QString currname=curritem->text(posName);
248 CBInfo *cb = checkbooks->first(); 249 CBInfo *cb = checkbooks->first();
@@ -277,10 +278,8 @@ void MainWindow::openBook(QListViewItem *curritem)
277 if ( currname != newname ) 278 if ( currname != newname )
278 { 279 {
279 // Update name if changed 280 // Update name if changed
280 if( curritem ) { 281 curritem->setText( posName, newname );
281 curritem->setText( posName, newname ); 282 cbList->sort();
282 cbList->sort();
283 }
284 _cfg.setLastBook( newname ); 283 _cfg.setLastBook( newname );
285 284
286 // Remove old file 285 // Remove old file
diff --git a/noncore/apps/opie-console/procctl.cpp b/noncore/apps/opie-console/procctl.cpp
index a44529b..5239e26 100644
--- a/noncore/apps/opie-console/procctl.cpp
+++ b/noncore/apps/opie-console/procctl.cpp
@@ -49,7 +49,10 @@ void ProcCtl::remove( pid_t pi ) {
49 while (con ) { 49 while (con ) {
50 /* remove it */ 50 /* remove it */
51 if ( pi == con->pid ) { 51 if ( pi == con->pid ) {
52 forw->prev = con->prev; 52 if (forw)
53 forw->prev = con->prev;
54 else
55 forw = con->prev;
53 delete con; 56 delete con;
54 return; 57 return;
55 } 58 }
diff --git a/noncore/apps/tinykate/libkate/document/katedocument.cpp b/noncore/apps/tinykate/libkate/document/katedocument.cpp
index b82a86a..692fd46 100644
--- a/noncore/apps/tinykate/libkate/document/katedocument.cpp
+++ b/noncore/apps/tinykate/libkate/document/katedocument.cpp
@@ -2015,7 +2015,7 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
2015 const QChar *s; 2015 const QChar *s;
2016 int z, x; 2016 int z, x;
2017 QChar ch; 2017 QChar ch;
2018 Attribute *a = 0L; 2018 Attribute *attrptr = 0L;
2019 int attr, nextAttr; 2019 int attr, nextAttr;
2020 int xs; 2020 int xs;
2021 int xc, zc; 2021 int xc, zc;
@@ -2040,16 +2040,16 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
2040 if (ch == '\t') { 2040 if (ch == '\t') {
2041 x += m_tabWidth - (x % m_tabWidth); 2041 x += m_tabWidth - (x % m_tabWidth);
2042 } else { 2042 } else {
2043 a = &m_attribs[textLine->getAttr(z)]; 2043 attrptr = &m_attribs[textLine->getAttr(z)];
2044 2044
2045 if (a->bold && a->italic) 2045 if (attrptr->bold && attrptr->italic)
2046 x += myFontMetricsBI.width(ch); 2046 x += myFontMetricsBI.width(ch);
2047 else if (a->bold) 2047 else if (attrptr->bold)
2048 x += myFontMetricsBold.width(ch); 2048 x += myFontMetricsBold.width(ch);
2049 else if (a->italic) 2049 else if (attrptr->italic)
2050 x += myFontMetricsItalic.width(ch); 2050 x += myFontMetricsItalic.width(ch);
2051 else 2051 else
2052 x += myFontMetrics.width(ch); 2052 x += myFontMetrics.width(ch);
2053 } 2053 }
2054 z++; 2054 z++;
2055 } while (x <= xStart); 2055 } while (x <= xStart);
@@ -2079,13 +2079,13 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
2079 x += m_tabWidth - (x % m_tabWidth); 2079 x += m_tabWidth - (x % m_tabWidth);
2080 else 2080 else
2081 { 2081 {
2082 a = &m_attribs[textLine->getAttr(z)]; 2082 attrptr = &m_attribs[textLine->getAttr(z)];
2083 2083
2084 if (a->bold && a->italic) 2084 if (attrptr->bold && attrptr->italic)
2085 x += myFontMetricsBI.width(ch); 2085 x += myFontMetricsBI.width(ch);
2086 else if (a->bold) 2086 else if (attrptr->bold)
2087 x += myFontMetricsBold.width(ch); 2087 x += myFontMetricsBold.width(ch);
2088 else if (a->italic) 2088 else if (attrptr->italic)
2089 x += myFontMetricsItalic.width(ch); 2089 x += myFontMetricsItalic.width(ch);
2090 else 2090 else
2091 x += myFontMetrics.width(ch); 2091 x += myFontMetrics.width(ch);
@@ -2114,14 +2114,14 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
2114 QString s = str.string(); 2114 QString s = str.string();
2115 paint.drawText(x - xStart, y, s); 2115 paint.drawText(x - xStart, y, s);
2116 2116
2117 if (a->bold && a->italic) 2117 if (attrptr && attrptr->bold && attrptr->italic)
2118 x += myFontMetricsBI.width(s); 2118 x += myFontMetricsBI.width(s);
2119 else if (a->bold) 2119 else if (attrptr && attrptr->bold)
2120 x += myFontMetricsBold.width(s); 2120 x += myFontMetricsBold.width(s);
2121 else if (a->italic) 2121 else if (attrptr && attrptr->italic)
2122 x += myFontMetricsItalic.width(s); 2122 x += myFontMetricsItalic.width(s);
2123 else 2123 else
2124 x += myFontMetrics.width(s); 2124 x += myFontMetrics.width(s);
2125 } 2125 }
2126 zc = z +1; 2126 zc = z +1;
2127 2127
@@ -2129,23 +2129,21 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
2129 nextAttr = textLine->getRawAttr(z); 2129 nextAttr = textLine->getRawAttr(z);
2130 if (nextAttr != attr) { 2130 if (nextAttr != attr) {
2131 attr = nextAttr; 2131 attr = nextAttr;
2132 a = &m_attribs[attr & taAttrMask]; 2132 attrptr = &m_attribs[attr & taAttrMask];
2133 2133
2134 if (attr & taSelected) paint.setPen(a->selCol); 2134 if (attr & taSelected) paint.setPen(attrptr->selCol);
2135 else paint.setPen(a->col); 2135 else paint.setPen(attrptr->col);
2136 2136
2137 if (a->bold && a->italic) 2137 if (attrptr->bold && attrptr->italic)
2138 paint.setFont(myFontBI); 2138 paint.setFont(myFontBI);
2139 else if (a->bold) 2139 else if (attrptr->bold)
2140 paint.setFont(myFontBold); 2140 paint.setFont(myFontBold);
2141 else if (a->italic) 2141 else if (attrptr->italic)
2142 paint.setFont(myFontItalic); 2142 paint.setFont(myFontItalic);
2143 else 2143 else
2144 paint.setFont(myFont); 2144 paint.setFont(myFont);
2145 } 2145 }
2146 2146
2147// paint.drawLine(x - xStart, y -2, x - xStart, y);
2148// paint.drawLine(x - xStart, y, x - xStart + 2, y);
2149 paint.drawPoint(x - xStart, y); 2147 paint.drawPoint(x - xStart, y);
2150 paint.drawPoint(x - xStart +1, y); 2148 paint.drawPoint(x - xStart +1, y);
2151 paint.drawPoint(x - xStart, y -1); 2149 paint.drawPoint(x - xStart, y -1);
@@ -2159,30 +2157,30 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
2159 QString s = str.string(); 2157 QString s = str.string();
2160 paint.drawText(x - xStart, y, s); 2158 paint.drawText(x - xStart, y, s);
2161 2159
2162 if (a->bold && a->italic) 2160 if (attrptr->bold && attrptr->italic)
2163 x += myFontMetricsBI.width(s); 2161 x += myFontMetricsBI.width(s);
2164 else if (a->bold) 2162 else if (attrptr->bold)
2165 x += myFontMetricsBold.width(s); 2163 x += myFontMetricsBold.width(s);
2166 else if (a->italic) 2164 else if (attrptr->italic)
2167 x += myFontMetricsItalic.width(s); 2165 x += myFontMetricsItalic.width(s);
2168 else 2166 else
2169 x += myFontMetrics.width(s); 2167 x += myFontMetrics.width(s);
2170 zc = z; 2168 zc = z;
2171 } 2169 }
2172 attr = nextAttr; 2170 attr = nextAttr;
2173 a = &m_attribs[attr & taAttrMask]; 2171 attrptr = &m_attribs[attr & taAttrMask];
2174 2172
2175 if (attr & taSelected) paint.setPen(a->selCol); 2173 if (attr & taSelected) paint.setPen(attrptr->selCol);
2176 else paint.setPen(a->col); 2174 else paint.setPen(attrptr->col);
2177 2175
2178 if (a->bold && a->italic) 2176 if (attrptr->bold && attrptr->italic)
2179 paint.setFont(myFontBI); 2177 paint.setFont(myFontBI);
2180 else if (a->bold) 2178 else if (attrptr->bold)
2181 paint.setFont(myFontBold); 2179 paint.setFont(myFontBold);
2182 else if (a->italic) 2180 else if (attrptr->italic)
2183 paint.setFont(myFontItalic); 2181 paint.setFont(myFontItalic);
2184 else 2182 else
2185 paint.setFont(myFont); 2183 paint.setFont(myFont);
2186 } 2184 }
2187 } 2185 }
2188 z++; 2186 z++;
@@ -2227,7 +2225,9 @@ bool KateDocument::doSearch(SConfig &sc, const QString &searchFor) {
2227 delete [] t; 2225 delete [] t;
2228 bufLen = (tlen + 255) & (~255); 2226 bufLen = (tlen + 255) & (~255);
2229 t = new QChar[bufLen]; 2227 t = new QChar[bufLen];
2230 } 2228 } else if (!t)
2229 t = new QChar[bufLen];
2230
2231 memcpy(t, textLine->getText(), tlen*sizeof(QChar)); 2231 memcpy(t, textLine->getText(), tlen*sizeof(QChar));
2232 if (sc.flags & KateView::sfSelected) { 2232 if (sc.flags & KateView::sfSelected) {
2233 pos = 0; 2233 pos = 0;
@@ -2288,7 +2288,8 @@ bool KateDocument::doSearch(SConfig &sc, const QString &searchFor) {
2288 delete [] t; 2288 delete [] t;
2289 bufLen = (tlen + 255) & (~255); 2289 bufLen = (tlen + 255) & (~255);
2290 t = new QChar[bufLen]; 2290 t = new QChar[bufLen];
2291 } 2291 } else if (!t)
2292 t = new QChar[bufLen];
2292 memcpy(t, textLine->getText(), tlen*sizeof(QChar)); 2293 memcpy(t, textLine->getText(), tlen*sizeof(QChar));
2293 if (sc.flags & KateView::sfSelected) { 2294 if (sc.flags & KateView::sfSelected) {
2294 pos = 0; 2295 pos = 0;
diff --git a/noncore/settings/sysinfo/devicesinfo.cpp b/noncore/settings/sysinfo/devicesinfo.cpp
index 164d608..428cfd4 100644
--- a/noncore/settings/sysinfo/devicesinfo.cpp
+++ b/noncore/settings/sysinfo/devicesinfo.cpp
@@ -265,7 +265,7 @@ void UsbCategory::populate()
265 lastDev = dev; 265 lastDev = dev;
266 } 266 }
267 } 267 }
268 else if ( line.startsWith( "S: Product" ) ) 268 else if ( dev && line.startsWith( "S: Product" ) )
269 { 269 {
270 int dp = line.find( '=' ); 270 int dp = line.find( '=' );
271 dev->setText( 0, dp != -1 ? line.right( line.length()-1-dp ) : "<unknown>" ); 271 dev->setText( 0, dp != -1 ? line.right( line.length()-1-dp ) : "<unknown>" );
diff --git a/noncore/todayplugins/stockticker/libstocks/http.c b/noncore/todayplugins/stockticker/libstocks/http.c
index 2f38f8a..cc78ab7 100644
--- a/noncore/todayplugins/stockticker/libstocks/http.c
+++ b/noncore/todayplugins/stockticker/libstocks/http.c
@@ -210,7 +210,7 @@ libstocks_return_code http_get(char *http_file, char *http_server, char **pdata)
210 header_founded = 0; 210 header_founded = 0;
211 while( !header_founded ) 211 while( !header_founded )
212 { 212 {
213 if (*temp==0) return ERRRHEA; 213 if (!temp || *temp==0) return ERRRHEA;
214 214
215 if( *temp==0x0A ) 215 if( *temp==0x0A )
216 { 216 {