summaryrefslogtreecommitdiff
path: root/noncore
authorerik <erik>2007-01-24 19:54:07 (UTC)
committer erik <erik>2007-01-24 19:54:07 (UTC)
commit89e81059e832ff77c2f0ac8b9db12f80eafa03fc (patch) (side-by-side diff)
tree99a130fc643d2aeefdecab452f644e7b61a5f50e /noncore
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 (limited to 'noncore') (more/less context) (ignore whitespace changes)
-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
6 files changed, 77 insertions, 68 deletions
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 & )
if ( !newCard ) ++it; else break;
}
}
+
+ if ( !theCard ) {
+ owarn << "pcmcia: Finished working through cards in PCMCIA system but I do not have a valid card handle" << oendl;
+ return;
+ }
+
if ( newCard )
{
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()
// --- openBook ---------------------------------------------------------------
void MainWindow::openBook(QListViewItem *curritem)
{
+ if ( !curritem ) return;
// find book in List
QString currname=curritem->text(posName);
CBInfo *cb = checkbooks->first();
@@ -277,10 +278,8 @@ void MainWindow::openBook(QListViewItem *curritem)
if ( currname != newname )
{
// Update name if changed
- if( curritem ) {
- curritem->setText( posName, newname );
- cbList->sort();
- }
+ curritem->setText( posName, newname );
+ cbList->sort();
_cfg.setLastBook( newname );
// 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 ) {
while (con ) {
/* remove it */
if ( pi == con->pid ) {
- forw->prev = con->prev;
+ if (forw)
+ forw->prev = con->prev;
+ else
+ forw = con->prev;
delete con;
return;
}
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
const QChar *s;
int z, x;
QChar ch;
- Attribute *a = 0L;
+ Attribute *attrptr = 0L;
int attr, nextAttr;
int xs;
int xc, zc;
@@ -2040,16 +2040,16 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
if (ch == '\t') {
x += m_tabWidth - (x % m_tabWidth);
} else {
- a = &m_attribs[textLine->getAttr(z)];
-
- if (a->bold && a->italic)
- x += myFontMetricsBI.width(ch);
- else if (a->bold)
- x += myFontMetricsBold.width(ch);
- else if (a->italic)
- x += myFontMetricsItalic.width(ch);
- else
- x += myFontMetrics.width(ch);
+ attrptr = &m_attribs[textLine->getAttr(z)];
+
+ if (attrptr->bold && attrptr->italic)
+ x += myFontMetricsBI.width(ch);
+ else if (attrptr->bold)
+ x += myFontMetricsBold.width(ch);
+ else if (attrptr->italic)
+ x += myFontMetricsItalic.width(ch);
+ else
+ x += myFontMetrics.width(ch);
}
z++;
} while (x <= xStart);
@@ -2079,13 +2079,13 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
x += m_tabWidth - (x % m_tabWidth);
else
{
- a = &m_attribs[textLine->getAttr(z)];
+ attrptr = &m_attribs[textLine->getAttr(z)];
- if (a->bold && a->italic)
+ if (attrptr->bold && attrptr->italic)
x += myFontMetricsBI.width(ch);
- else if (a->bold)
+ else if (attrptr->bold)
x += myFontMetricsBold.width(ch);
- else if (a->italic)
+ else if (attrptr->italic)
x += myFontMetricsItalic.width(ch);
else
x += myFontMetrics.width(ch);
@@ -2114,14 +2114,14 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
QString s = str.string();
paint.drawText(x - xStart, y, s);
- if (a->bold && a->italic)
- x += myFontMetricsBI.width(s);
- else if (a->bold)
- x += myFontMetricsBold.width(s);
- else if (a->italic)
- x += myFontMetricsItalic.width(s);
- else
- x += myFontMetrics.width(s);
+ if (attrptr && attrptr->bold && attrptr->italic)
+ x += myFontMetricsBI.width(s);
+ else if (attrptr && attrptr->bold)
+ x += myFontMetricsBold.width(s);
+ else if (attrptr && attrptr->italic)
+ x += myFontMetricsItalic.width(s);
+ else
+ x += myFontMetrics.width(s);
}
zc = z +1;
@@ -2129,23 +2129,21 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
nextAttr = textLine->getRawAttr(z);
if (nextAttr != attr) {
attr = nextAttr;
- a = &m_attribs[attr & taAttrMask];
-
- if (attr & taSelected) paint.setPen(a->selCol);
- else paint.setPen(a->col);
-
- if (a->bold && a->italic)
- paint.setFont(myFontBI);
- else if (a->bold)
- paint.setFont(myFontBold);
- else if (a->italic)
- paint.setFont(myFontItalic);
- else
- paint.setFont(myFont);
+ attrptr = &m_attribs[attr & taAttrMask];
+
+ if (attr & taSelected) paint.setPen(attrptr->selCol);
+ else paint.setPen(attrptr->col);
+
+ if (attrptr->bold && attrptr->italic)
+ paint.setFont(myFontBI);
+ else if (attrptr->bold)
+ paint.setFont(myFontBold);
+ else if (attrptr->italic)
+ paint.setFont(myFontItalic);
+ else
+ paint.setFont(myFont);
}
-// paint.drawLine(x - xStart, y -2, x - xStart, y);
-// paint.drawLine(x - xStart, y, x - xStart + 2, y);
paint.drawPoint(x - xStart, y);
paint.drawPoint(x - xStart +1, y);
paint.drawPoint(x - xStart, y -1);
@@ -2159,30 +2157,30 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
QString s = str.string();
paint.drawText(x - xStart, y, s);
- if (a->bold && a->italic)
- x += myFontMetricsBI.width(s);
- else if (a->bold)
- x += myFontMetricsBold.width(s);
- else if (a->italic)
- x += myFontMetricsItalic.width(s);
- else
- x += myFontMetrics.width(s);
+ if (attrptr->bold && attrptr->italic)
+ x += myFontMetricsBI.width(s);
+ else if (attrptr->bold)
+ x += myFontMetricsBold.width(s);
+ else if (attrptr->italic)
+ x += myFontMetricsItalic.width(s);
+ else
+ x += myFontMetrics.width(s);
zc = z;
}
attr = nextAttr;
- a = &m_attribs[attr & taAttrMask];
-
- if (attr & taSelected) paint.setPen(a->selCol);
- else paint.setPen(a->col);
-
- if (a->bold && a->italic)
- paint.setFont(myFontBI);
- else if (a->bold)
- paint.setFont(myFontBold);
- else if (a->italic)
- paint.setFont(myFontItalic);
- else
- paint.setFont(myFont);
+ attrptr = &m_attribs[attr & taAttrMask];
+
+ if (attr & taSelected) paint.setPen(attrptr->selCol);
+ else paint.setPen(attrptr->col);
+
+ if (attrptr->bold && attrptr->italic)
+ paint.setFont(myFontBI);
+ else if (attrptr->bold)
+ paint.setFont(myFontBold);
+ else if (attrptr->italic)
+ paint.setFont(myFontItalic);
+ else
+ paint.setFont(myFont);
}
}
z++;
@@ -2227,7 +2225,9 @@ bool KateDocument::doSearch(SConfig &sc, const QString &searchFor) {
delete [] t;
bufLen = (tlen + 255) & (~255);
t = new QChar[bufLen];
- }
+ } else if (!t)
+ t = new QChar[bufLen];
+
memcpy(t, textLine->getText(), tlen*sizeof(QChar));
if (sc.flags & KateView::sfSelected) {
pos = 0;
@@ -2288,7 +2288,8 @@ bool KateDocument::doSearch(SConfig &sc, const QString &searchFor) {
delete [] t;
bufLen = (tlen + 255) & (~255);
t = new QChar[bufLen];
- }
+ } else if (!t)
+ t = new QChar[bufLen];
memcpy(t, textLine->getText(), tlen*sizeof(QChar));
if (sc.flags & KateView::sfSelected) {
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()
lastDev = dev;
}
}
- else if ( line.startsWith( "S: Product" ) )
+ else if ( dev && line.startsWith( "S: Product" ) )
{
int dp = line.find( '=' );
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)
header_founded = 0;
while( !header_founded )
{
- if (*temp==0) return ERRRHEA;
+ if (!temp || *temp==0) return ERRRHEA;
if( *temp==0x0A )
{