Fix cursor merging on boundary

This commit is contained in:
Krzosa Karol
2024-06-24 07:00:15 +02:00
parent e82edb89ae
commit 66b9a5d15f
2 changed files with 7 additions and 2 deletions

View File

@@ -205,6 +205,7 @@ void ApplyEdits(Buffer *buffer, Array<Edit> edits) {
int64_t prev_dest = 0;
For(edits) {
TraceLog(LOG_DEBUG, "edit dsti: %d, srci: %d, range: %lld to %lld, string: '%.*s'\n", dsti, srci, (long long)it.range.min, (long long)it.range.max, FmtString(it.string));
Range source_range = {prev_source, it.range.min};
if (GetRangeSize(source_range) != 0) {
String source_string = {};
@@ -240,6 +241,7 @@ void ApplyEdits(Buffer *buffer, Array<Edit> edits) {
int64_t new_buffer_len = 0;
For(writes) {
TraceLog(LOG_DEBUG, "write dsti: %d, srci: %d, range: %lld to %lld, string: '%.*s'\n", dsti, srci, (long long)it.range.min, (long long)it.range.max, FmtString(it.string));
memcpy(buffer->data[dsti] + new_buffer_len, it.string.data, it.string.len);
new_buffer_len += it.string.len;
}