1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 04:47:35 +00:00

AK: Use size_t for the length of strings

Using int was a mistake. This patch changes String, StringImpl,
StringView and StringBuilder to use size_t instead of int for lengths.
Obviously a lot of code needs to change as a result of this.
This commit is contained in:
Andreas Kling 2019-12-09 17:45:40 +01:00
parent 1726c17d0d
commit 6f4c380d95
54 changed files with 387 additions and 377 deletions

View file

@ -56,7 +56,7 @@ int main(int argc, char* argv[])
go_forward_action->set_enabled(history.can_go_forward());
};
auto open_page = [&](String path) {
auto open_page = [&](const String& path) {
if (path.is_null()) {
html_view->set_document(nullptr);
return;
@ -73,7 +73,7 @@ int main(int argc, char* argv[])
return;
}
auto buffer = file->read_all();
StringView source { (char*)buffer.data(), buffer.size() };
StringView source { (const char*)buffer.data(), (size_t)buffer.size() };
MDDocument md_document;
bool success = md_document.parse(source);

View file

@ -66,20 +66,20 @@ void TextWidget::resize_event(GResizeEvent& event)
void TextWidget::wrap_and_set_height()
{
Vector<String> words;
int start = -1;
for (int i = 0; i < m_text.length(); i++) {
Optional<size_t> start;
for (size_t i = 0; i < m_text.length(); i++) {
auto ch = m_text[i];
if (ch == ' ' || ch == '\t' || ch == '\r' || ch == '\n') {
if (start != -1)
words.append(m_text.substring(start, i - start));
if (start.has_value())
words.append(m_text.substring(start.value(), i - start.value()));
start = -1;
} else if (start == -1) {
} else if (!start.has_value()) {
start = i;
}
}
if (start != -1)
words.append(m_text.substring(start, m_text.length() - start));
if (start.has_value())
words.append(m_text.substring(start, m_text.length() - start.value()));
auto rect = frame_inner_rect();
if (frame_thickness() > 0)