aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authornyamatongwe <unknown>2000-07-05 13:49:29 +0000
committernyamatongwe <unknown>2000-07-05 13:49:29 +0000
commit98d06e492f36b02ea5f29f03952d184052fca220 (patch)
treeb034978dc28ba3572c8ac3866c1cdf5b45f6aaa9 /src
parentabe70b07bd9bec5d94ffc5ce72c5ee7613981ac8 (diff)
downloadscintilla-mirror-98d06e492f36b02ea5f29f03952d184052fca220.tar.gz
Fixed BoundsChecker warnings including some leaks.
Diffstat (limited to 'src')
-rw-r--r--src/CellBuffer.cxx4
-rw-r--r--src/DocumentAccessor.h2
-rw-r--r--src/Editor.cxx4
-rw-r--r--src/SVector.h6
-rw-r--r--src/ScintillaBase.cxx7
5 files changed, 19 insertions, 4 deletions
diff --git a/src/CellBuffer.cxx b/src/CellBuffer.cxx
index 3f094ce96..130b289e6 100644
--- a/src/CellBuffer.cxx
+++ b/src/CellBuffer.cxx
@@ -119,7 +119,11 @@ void MarkerHandleSet::CombineWith(MarkerHandleSet *other) {
LineVector::LineVector() {
linesData = 0;
lines = 0;
+ size = 0;
levels = 0;
+ sizeLevels = 0;
+ handleCurrent = 1;
+
Init();
}
diff --git a/src/DocumentAccessor.h b/src/DocumentAccessor.h
index 37a9db414..ccc05fee9 100644
--- a/src/DocumentAccessor.h
+++ b/src/DocumentAccessor.h
@@ -24,7 +24,7 @@ protected:
public:
DocumentAccessor(Document *pdoc_, PropSet &props_) :
Accessor(), pdoc(pdoc_), props(props_),
- lenDoc(-1), validLen(0), chFlags(0) {
+ lenDoc(-1), validLen(0), chFlags(0), chWhile(0) {
}
~DocumentAccessor();
char StyleAt(int position);
diff --git a/src/Editor.cxx b/src/Editor.cxx
index f1c497db2..3cf2c179e 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -735,7 +735,7 @@ void Editor::LayoutLine(int line, Surface *surface, ViewStyle &vstyle, LineLayou
int styleMask = pdoc->stylingBitsMask;
ll.xHighlightGuide = 0;
for (int charInDoc = posLineStart;
- charInDoc < posLineEnd && numCharsInLine < LineLayout::maxLineLength - 1;
+ charInDoc < posLineEnd && numCharsInLine < LineLayout::maxLineLength - 2;
charInDoc++) {
char chDoc = pdoc->CharAt(charInDoc);
styleByte = pdoc->StyleAt(charInDoc);
@@ -749,11 +749,13 @@ void Editor::LayoutLine(int line, Surface *surface, ViewStyle &vstyle, LineLayou
ll.chars[numCharsInLine] = 0;
ll.styles[numCharsInLine] = styleByte; // For eolFilled
ll.indicators[numCharsInLine] = 0;
+ ll.indicators[numCharsInLine+1] = 0;
// Layout the line, determining the position of each character
int startseg = 0;
int startsegx = 0;
ll.positions[0] = 0;
+ ll.positions[numCharsInLine + 1] = 0;
unsigned int tabWidth = vstyle.spaceWidth * pdoc->tabInChars;
for (int charInLine = 0; charInLine < numCharsInLine; charInLine++) {
diff --git a/src/SVector.h b/src/SVector.h
index 550dd87eb..9a260542b 100644
--- a/src/SVector.h
+++ b/src/SVector.h
@@ -30,9 +30,13 @@ class SVector {
return;
}
size = newSize;
- for (unsigned int i=0; i<len; i++) {
+ unsigned int i=0;
+ for (; i<len; i++) {
newv[i] = v[i];
}
+ for (; i<size; i++) {
+ newv[i] = 0;
+ }
delete []v;
v = newv;
}
diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx
index 0f7d944fe..ff2e001ec 100644
--- a/src/ScintillaBase.cxx
+++ b/src/ScintillaBase.cxx
@@ -41,7 +41,12 @@ ScintillaBase::ScintillaBase() {
#endif
}
-ScintillaBase::~ScintillaBase() {}
+ScintillaBase::~ScintillaBase() {
+#ifdef SCI_LEXER
+ for (int wl=0;wl<numWordLists;wl++)
+ delete keyWordLists[wl];
+#endif
+}
void ScintillaBase::Finalise() {
popup.Destroy();