alloc bug fixed