From d8548e00aa26aa576dd6986df0d19e942ebfaf8d Mon Sep 17 00:00:00 2001 From: Jonathan Schleifer Date: Sun, 8 Nov 2015 00:42:15 +0100 Subject: [PATCH] Fix some more type mismatches with std::{min,max} --- src/add-ons/kernel/bus_managers/ata/ATATracing.cpp | 2 +- src/add-ons/kernel/bus_managers/usb/Hub.cpp | 7 ++++--- src/system/kernel/debug/debug.cpp | 2 +- src/system/kernel/vm/vm.cpp | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/add-ons/kernel/bus_managers/ata/ATATracing.cpp b/src/add-ons/kernel/bus_managers/ata/ATATracing.cpp index 1f2d53f3740..db6723cdeac 100644 --- a/src/add-ons/kernel/bus_managers/ata/ATATracing.cpp +++ b/src/add-ons/kernel/bus_managers/ata/ATATracing.cpp @@ -23,7 +23,7 @@ ata_trace_printf(uint32 flags, const char *format, ...) size_t totalBytes = vsnprintf(sTraceBuffer + sTraceBufferOffset, sizeof(sTraceBuffer) - sTraceBufferOffset, format, arguments); sTraceBufferOffset += std::min(totalBytes, - sizeof(sTraceBuffer) - sTraceBufferOffset - 1); + (size_t)(sizeof(sTraceBuffer) - sTraceBufferOffset - 1)); va_end(arguments); } diff --git a/src/add-ons/kernel/bus_managers/usb/Hub.cpp b/src/add-ons/kernel/bus_managers/usb/Hub.cpp index 229786dbe57..64bc4516f0a 100644 --- a/src/add-ons/kernel/bus_managers/usb/Hub.cpp +++ b/src/add-ons/kernel/bus_managers/usb/Hub.cpp @@ -417,7 +417,7 @@ Hub::BuildDeviceName(char *string, uint32 *index, size_t bufferSize, int32 managerIndex = GetStack()->IndexOfBusManager(GetBusManager()); size_t totalBytes = snprintf(string + *index, bufferSize - *index, "%" B_PRId32, managerIndex); - *index += std::min(totalBytes, bufferSize - *index - 1); + *index += std::min(totalBytes, (size_t)(bufferSize - *index - 1)); } } @@ -426,7 +426,7 @@ Hub::BuildDeviceName(char *string, uint32 *index, size_t bufferSize, if (*index < bufferSize) { size_t totalBytes = snprintf(string + *index, bufferSize - *index, "/hub"); - *index += std::min(totalBytes, bufferSize - *index - 1); + *index += std::min(totalBytes, (size_t)(bufferSize - *index - 1)); } } else { // find out where the requested device sitts @@ -435,7 +435,8 @@ Hub::BuildDeviceName(char *string, uint32 *index, size_t bufferSize, if (*index < bufferSize) { size_t totalBytes = snprintf(string + *index, bufferSize - *index, "/%" B_PRId32, i); - *index += std::min(totalBytes, bufferSize - *index - 1); + *index += std::min(totalBytes, + (size_t)(bufferSize - *index - 1)); } break; } diff --git a/src/system/kernel/debug/debug.cpp b/src/system/kernel/debug/debug.cpp index 1672d78303c..bfd31c98a09 100644 --- a/src/system/kernel/debug/debug.cpp +++ b/src/system/kernel/debug/debug.cpp @@ -1986,7 +1986,7 @@ debug_strlcpy(team_id teamID, char* to, const char* from, size_t size) return B_BAD_ADDRESS; // limit size to avoid address overflows - size_t maxSize = std::min(size, + size_t maxSize = std::min((addr_t)size, ~(addr_t)0 - std::max((addr_t)from, (addr_t)to) + 1); // NOTE: Since strlcpy() determines the length of \a from, the source // address might still overflow. diff --git a/src/system/kernel/vm/vm.cpp b/src/system/kernel/vm/vm.cpp index 569b62d3de5..8bb5167b0cf 100644 --- a/src/system/kernel/vm/vm.cpp +++ b/src/system/kernel/vm/vm.cpp @@ -5316,7 +5316,7 @@ user_strlcpy(char* to, const char* from, size_t size) return B_BAD_ADDRESS; // limit size to avoid address overflows - size_t maxSize = std::min(size, + size_t maxSize = std::min((addr_t)size, ~(addr_t)0 - std::max((addr_t)from, (addr_t)to) + 1); // NOTE: Since arch_cpu_user_strlcpy() determines the length of \a from, // the source address might still overflow.