aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/CellBuffer.cxx
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2014-05-31 09:27:48 +1000
committerNeil <nyamatongwe@gmail.com>2014-05-31 09:27:48 +1000
commit9bc61b338dfe63d2e6fcc66bc0933a0de6bcd31b (patch)
tree64c541e9dcb42c9999759ab7dd40d67c72749b9a /src/CellBuffer.cxx
parent8326c658b392ba13e92918dd89deebd60bcd195f (diff)
parent8b447b76bbc110e055a0637657f5f00c65cc98dd (diff)
downloadscintilla-mirror-9bc61b338dfe63d2e6fcc66bc0933a0de6bcd31b.tar.gz
Merge 343-Win32-Fix which fixes hangs and crashes at shutdown on Windows.
Diffstat (limited to 'src/CellBuffer.cxx')
-rw-r--r--src/CellBuffer.cxx13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/CellBuffer.cxx b/src/CellBuffer.cxx
index c05060865..0c56c9e92 100644
--- a/src/CellBuffer.cxx
+++ b/src/CellBuffer.cxx
@@ -413,25 +413,24 @@ const char *CellBuffer::InsertString(int position, const char *s, int insertLeng
return data;
}
-bool CellBuffer::SetStyleAt(int position, char styleValue, char mask) {
- styleValue &= mask;
+bool CellBuffer::SetStyleAt(int position, char styleValue) {
char curVal = style.ValueAt(position);
- if ((curVal & mask) != styleValue) {
- style.SetValueAt(position, static_cast<char>((curVal & ~mask) | styleValue));
+ if (curVal != styleValue) {
+ style.SetValueAt(position, styleValue);
return true;
} else {
return false;
}
}
-bool CellBuffer::SetStyleFor(int position, int lengthStyle, char styleValue, char mask) {
+bool CellBuffer::SetStyleFor(int position, int lengthStyle, char styleValue) {
bool changed = false;
PLATFORM_ASSERT(lengthStyle == 0 ||
(lengthStyle > 0 && lengthStyle + position <= style.Length()));
while (lengthStyle--) {
char curVal = style.ValueAt(position);
- if ((curVal & mask) != styleValue) {
- style.SetValueAt(position, static_cast<char>((curVal & ~mask) | styleValue));
+ if (curVal != styleValue) {
+ style.SetValueAt(position, styleValue);
changed = true;
}
position++;