From f1e5d3fe578f201618a63afb48646dcd5506685d Mon Sep 17 00:00:00 2001 From: Neil Date: Tue, 4 Jun 2019 13:13:51 +1000 Subject: Bug [#2104]. Use '%.0f' and casts to double to fix printf format string bugs. This will extend valid maximum position from 31-bits to 53-bits which is ample. --- src/CellBuffer.cxx | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/CellBuffer.cxx b/src/CellBuffer.cxx index f2445751f..acdfc6e5c 100644 --- a/src/CellBuffer.cxx +++ b/src/CellBuffer.cxx @@ -559,8 +559,10 @@ void CellBuffer::GetCharRange(char *buffer, Sci::Position position, Sci::Positio if (position < 0) return; if ((position + lengthRetrieve) > substance.Length()) { - Platform::DebugPrintf("Bad GetCharRange %d for %d of %d\n", position, - lengthRetrieve, substance.Length()); + Platform::DebugPrintf("Bad GetCharRange %.0f for %.0f of %.0f\n", + static_cast(position), + static_cast(lengthRetrieve), + static_cast(substance.Length())); return; } substance.GetRange(buffer, position, lengthRetrieve); @@ -580,8 +582,10 @@ void CellBuffer::GetStyleRange(unsigned char *buffer, Sci::Position position, Sc return; } if ((position + lengthRetrieve) > style.Length()) { - Platform::DebugPrintf("Bad GetStyleRange %d for %d of %d\n", position, - lengthRetrieve, style.Length()); + Platform::DebugPrintf("Bad GetStyleRange %.0f for %.0f of %.0f\n", + static_cast(position), + static_cast(lengthRetrieve), + static_cast(style.Length())); return; } style.GetRange(reinterpret_cast(buffer), position, lengthRetrieve); -- cgit v1.2.3