From 69c7a59e6f5306d1b5231bb1e80bdb9f563ac9a6 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Wed, 31 Oct 2018 17:25:24 +0100 Subject: [PATCH] Fix wrong allocation size used in opendir(). --- LibC/dirent.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/LibC/dirent.cpp b/LibC/dirent.cpp index e1e914b1f0..07d50d01d4 100644 --- a/LibC/dirent.cpp +++ b/LibC/dirent.cpp @@ -1,8 +1,9 @@ -#include "dirent.h" -#include "unistd.h" -#include "stdlib.h" +#include +#include +#include +#include +#include #include -#include "stdio.h" extern "C" { @@ -11,7 +12,7 @@ DIR* opendir(const char* name) int fd = open(name, O_RDONLY | O_DIRECTORY); if (fd == -1) return nullptr; - DIR* dirp = (DIR*)malloc(sizeof(dirp)); + DIR* dirp = (DIR*)malloc(sizeof(DIR)); dirp->fd = fd; dirp->buffer = nullptr; dirp->buffer_size = 0;