diff --git a/src/ox/fs/filesystem.hpp b/src/ox/fs/filesystem.hpp index 42ccc78f3..614c461aa 100644 --- a/src/ox/fs/filesystem.hpp +++ b/src/ox/fs/filesystem.hpp @@ -205,17 +205,15 @@ int FileSystemTemplate::write(uint64_t inode, void *buffer, template uint8_t *FileSystemTemplate::format(void *buffer, typename FileStore::FsSize_t size, bool useDirectories) { buffer = FileStore::format((uint8_t*) buffer, size, (uint32_t) FS_TYPE); - auto fs = createFileSystem(buffer); + FileSystemTemplate fs(buffer); if (buffer && useDirectories) { char dirBuff[sizeof(Directory) + sizeof(DirectoryEntry) + 2]; auto *dir = (Directory*) dirBuff; dir->files(); - fs->write(INODE_ROOT_DIR, dirBuff, useDirectories); + fs.write(INODE_ROOT_DIR, dirBuff, useDirectories, FileType::Directory); } - delete fs; - return (uint8_t*) buffer; } #ifdef _MSC_VER