1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-09-29 15:30:52 +00:00

Avoid truncation or bad formatting in message header

This commit is contained in:
Carles Fernandez 2019-08-24 12:16:41 +02:00
parent 54e9b07699
commit d9a655efce
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D

View File

@ -594,11 +594,7 @@ private:
inline void encode_header() inline void encode_header()
{ {
char header[header_length + 1] = ""; char header[header_length + 1] = "";
int num_chars = std::snprintf(header, header_length + 1, "GS%4d", std::min(static_cast<int>(body_length_), static_cast<int>(max_body_length))); std::snprintf(header, header_length + 1, "GS%4d", std::max(std::min(static_cast<int>(body_length_), static_cast<int>(max_body_length)), 0));
if ((num_chars <= 0) or (num_chars > header_length))
{
// avoid Wformat-truncation warning
}
std::memcpy(data_, header, header_length); std::memcpy(data_, header, header_length);
} }