summaryrefslogtreecommitdiff
path: root/noncore/apps/tinykate/libkate/document/katedocument.cpp
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/apps/tinykate/libkate/document/katedocument.cpp
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/apps/tinykate/libkate/document/katedocument.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/tinykate/libkate/document/katedocument.cpp63
1 files changed, 32 insertions, 31 deletions
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
@@ -2017,3 +2017,3 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
QChar ch;
- Attribute *a = 0L;
+ Attribute *attrptr = 0L;
int attr, nextAttr;
@@ -2042,9 +2042,9 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
} 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);
@@ -2081,9 +2081,9 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
{
- 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);
@@ -2116,7 +2116,7 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
- if (a->bold && a->italic)
+ if (attrptr && attrptr->bold && attrptr->italic)
x += myFontMetricsBI.width(s);
- else if (a->bold)
+ else if (attrptr && attrptr->bold)
x += myFontMetricsBold.width(s);
- else if (a->italic)
+ else if (attrptr && attrptr->italic)
x += myFontMetricsItalic.width(s);
@@ -2131,12 +2131,12 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
attr = nextAttr;
- a = &m_attribs[attr & taAttrMask];
+ attrptr = &m_attribs[attr & taAttrMask];
- if (attr & taSelected) paint.setPen(a->selCol);
- else paint.setPen(a->col);
+ if (attr & taSelected) paint.setPen(attrptr->selCol);
+ else paint.setPen(attrptr->col);
- if (a->bold && a->italic)
+ if (attrptr->bold && attrptr->italic)
paint.setFont(myFontBI);
- else if (a->bold)
+ else if (attrptr->bold)
paint.setFont(myFontBold);
- else if (a->italic)
+ else if (attrptr->italic)
paint.setFont(myFontItalic);
@@ -2146,4 +2146,2 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
-// paint.drawLine(x - xStart, y -2, x - xStart, y);
-// paint.drawLine(x - xStart, y, x - xStart + 2, y);
paint.drawPoint(x - xStart, y);
@@ -2161,7 +2159,7 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
- if (a->bold && a->italic)
+ if (attrptr->bold && attrptr->italic)
x += myFontMetricsBI.width(s);
- else if (a->bold)
+ else if (attrptr->bold)
x += myFontMetricsBold.width(s);
- else if (a->italic)
+ else if (attrptr->italic)
x += myFontMetricsItalic.width(s);
@@ -2172,12 +2170,12 @@ void KateDocument::paintTextLine(QPainter &paint, int line, int y, int xStart, i
attr = nextAttr;
- a = &m_attribs[attr & taAttrMask];
+ attrptr = &m_attribs[attr & taAttrMask];
- if (attr & taSelected) paint.setPen(a->selCol);
- else paint.setPen(a->col);
+ if (attr & taSelected) paint.setPen(attrptr->selCol);
+ else paint.setPen(attrptr->col);
- if (a->bold && a->italic)
+ if (attrptr->bold && attrptr->italic)
paint.setFont(myFontBI);
- else if (a->bold)
+ else if (attrptr->bold)
paint.setFont(myFontBold);
- else if (a->italic)
+ else if (attrptr->italic)
paint.setFont(myFontItalic);
@@ -2229,3 +2227,5 @@ bool KateDocument::doSearch(SConfig &sc, const QString &searchFor) {
t = new QChar[bufLen];
- }
+ } else if (!t)
+ t = new QChar[bufLen];
+
memcpy(t, textLine->getText(), tlen*sizeof(QChar));
@@ -2290,3 +2290,4 @@ bool KateDocument::doSearch(SConfig &sc, const QString &searchFor) {
t = new QChar[bufLen];
- }
+ } else if (!t)
+ t = new QChar[bufLen];
memcpy(t, textLine->getText(), tlen*sizeof(QChar));