mirror of
https://github.com/rakshasa/rtorrent.git
synced 2026-10-13 20:56:17 +00:00
Clamp the negative width in wstring_width
A narrow terminal makes the file list width go below zero.
This commit is contained in:
@@ -25,7 +25,10 @@ WindowFileList::WindowFileList(const ui::ElementFileList* element) :
|
|||||||
// Convert std::string to std::wstring of given width (in screen positions),
|
// Convert std::string to std::wstring of given width (in screen positions),
|
||||||
// taking into account that some characters may be occupying two screen positions.
|
// taking into account that some characters may be occupying two screen positions.
|
||||||
std::wstring
|
std::wstring
|
||||||
wstring_width(const std::string& i_str, [[maybe_unused]] int width) {
|
wstring_width(const std::string& i_str, int width) {
|
||||||
|
if (width < 0)
|
||||||
|
width = 0;
|
||||||
|
|
||||||
std::wstring result(width + 1, L' ');
|
std::wstring result(width + 1, L' ');
|
||||||
size_t length = std::mbstowcs(result.data(), i_str.c_str(), width);
|
size_t length = std::mbstowcs(result.data(), i_str.c_str(), width);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user