Skip to content

Commit 3f59046

Browse files
committed
Some off-by-ones
1 parent a385a16 commit 3f59046

3 files changed

Lines changed: 5 additions & 5 deletions

File tree

clink/core/include/core/str.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ StrImpl<TYPE>& StrImpl<TYPE>::operator << (const TYPE* rhs)
324324
template <typename TYPE> template <int32 I>
325325
StrImpl<TYPE>& StrImpl<TYPE>::operator << (const TYPE (&rhs)[I])
326326
{
327-
concat(rhs, I);
327+
concat(rhs, I - 1);
328328
return *this;
329329
}
330330

@@ -357,7 +357,7 @@ int32 to_utf16(wchar_t* out, int32 max_count, StrIterImpl<char>& iter);
357357
class StrBase : public StrImpl<char>
358358
{
359359
public:
360-
template <int32 I> StrBase(char (&data)[I]) : StrImpl<char>(data, I) {}
360+
template <int32 I> StrBase(char (&data)[I]) : StrImpl<char>(data, I - 1) {}
361361
StrBase(char* data, int32 size) : StrImpl<char>(data, size) {}
362362
StrBase(const StrBase&) = delete;
363363
StrBase(const StrBase&&) = delete;
@@ -370,7 +370,7 @@ class StrBase : public StrImpl<char>
370370
class WstrBase : public StrImpl<wchar_t>
371371
{
372372
public:
373-
template <int32 I> WstrBase(char (&data)[I]) : StrImpl<wchar_t>(data, I) {}
373+
template <int32 I> WstrBase(char (&data)[I]) : StrImpl<wchar_t>(data, I - 1) {}
374374
WstrBase(wchar_t* data, int32 size) : StrImpl<wchar_t>(data, size) {}
375375
WstrBase(const WstrBase&) = delete;
376376
WstrBase(const WstrBase&&) = delete;

clink/terminal/include/terminal/printer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,5 @@ template <int32 S> void Printer::print(const char (&data)[S])
4444
//------------------------------------------------------------------------------
4545
template <int32 S> void Printer::print(const Attributes attr, const char (&data)[S])
4646
{
47-
print(attr, data, S);
47+
print(attr, data, S - 1);
4848
}

clink/terminal/include/terminal/terminal_out.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@ class TerminalOut
2222
//------------------------------------------------------------------------------
2323
template <int32 S> void TerminalOut::write(const char (&chars)[S])
2424
{
25-
write(chars, S);
25+
write(chars, S - 1);
2626
}

0 commit comments

Comments
 (0)