aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/PositionCache.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/PositionCache.cxx')
-rw-r--r--src/PositionCache.cxx18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/PositionCache.cxx b/src/PositionCache.cxx
index 99e3c4d56..273875e4e 100644
--- a/src/PositionCache.cxx
+++ b/src/PositionCache.cxx
@@ -74,11 +74,11 @@ LineLayout::~LineLayout() {
void LineLayout::Resize(int maxLineLength_) {
if (maxLineLength_ > maxLineLength) {
Free();
- chars.reset(new char[maxLineLength_ + 1]);
- styles.reset(new unsigned char[maxLineLength_ + 1]);
+ chars = std::make_unique<char[]>(maxLineLength_ + 1);
+ styles = std::make_unique<unsigned char []>(maxLineLength_ + 1);
// Extra position allocated as sometimes the Windows
// GetTextExtentExPoint API writes an extra element.
- positions.reset(new XYPOSITION[maxLineLength_ + 1 + 1]);
+ positions = std::make_unique<XYPOSITION []>(maxLineLength_ + 1 + 1);
maxLineLength = maxLineLength_;
}
}
@@ -126,15 +126,15 @@ bool LineLayout::InLine(int offset, int line) const {
void LineLayout::SetLineStart(int line, int start) {
if ((line >= lenLineStarts) && (line != 0)) {
- int newMaxLines = line + 20;
- int *newLineStarts = new int[newMaxLines];
+ const int newMaxLines = line + 20;
+ std::unique_ptr<int[]> newLineStarts = std::make_unique<int[]>(newMaxLines);
for (int i = 0; i < newMaxLines; i++) {
if (i < lenLineStarts)
newLineStarts[i] = lineStarts[i];
else
newLineStarts[i] = 0;
}
- lineStarts.reset(newLineStarts);
+ lineStarts = std::move(newLineStarts);
lenLineStarts = newMaxLines;
}
lineStarts[line] = start;
@@ -339,7 +339,7 @@ LineLayout *LineLayoutCache::Retrieve(Sci::Line lineNumber, Sci::Line lineCaret,
}
}
if (!cache[pos]) {
- cache[pos].reset(new LineLayout(maxChars));
+ cache[pos] = std::make_unique<LineLayout>(maxChars);
}
cache[pos]->lineNumber = lineNumber;
cache[pos]->inCache = true;
@@ -557,7 +557,7 @@ PositionCacheEntry::PositionCacheEntry(const PositionCacheEntry &other) :
styleNumber(other.styleNumber), len(other.styleNumber), clock(other.styleNumber), positions(nullptr) {
if (other.positions) {
const size_t lenData = len + (len / sizeof(XYPOSITION)) + 1;
- positions.reset(new XYPOSITION[lenData]);
+ positions = std::make_unique<XYPOSITION[]>(lenData);
memcpy(positions.get(), other.positions.get(), lenData * sizeof(XYPOSITION));
}
}
@@ -569,7 +569,7 @@ void PositionCacheEntry::Set(unsigned int styleNumber_, const char *s_,
len = len_;
clock = clock_;
if (s_ && positions_) {
- positions.reset(new XYPOSITION[len + (len / sizeof(XYPOSITION)) + 1]);
+ positions = std::make_unique<XYPOSITION[]>(len + (len / sizeof(XYPOSITION)) + 1);
for (unsigned int i=0; i<len; i++) {
positions[i] = positions_[i];
}