implement os.path.real for windows and update allocator interface

This commit is contained in:
Andrew Kelley
2017-10-09 14:21:35 -04:00
parent a4310cf8b4
commit c4262da8de
7 changed files with 191 additions and 36 deletions

View File

@@ -974,9 +974,13 @@ fn globalAlloc(self: &mem.Allocator, n: usize, alignment: usize) -> %[]u8 {
}
fn globalRealloc(self: &mem.Allocator, old_mem: []u8, new_size: usize, alignment: usize) -> %[]u8 {
const result = %return globalAlloc(self, new_size, alignment);
@memcpy(result.ptr, old_mem.ptr, old_mem.len);
return result;
if (new_size <= old_mem.len) {
return old_mem[0..new_size];
} else {
const result = %return globalAlloc(self, new_size, alignment);
@memcpy(result.ptr, old_mem.ptr, old_mem.len);
return result;
}
}
fn globalFree(self: &mem.Allocator, ptr: &u8) { }
fn globalFree(self: &mem.Allocator, memory: []u8) { }