Fix Linux disk usage.

This commit is contained in:
Alastair Poole 2018-06-09 18:39:37 +01:00
parent b84ab23c09
commit d559ae3537
1 changed files with 4 additions and 11 deletions

View File

@ -7,7 +7,10 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/statvfs.h>
#if defined(__linux__)
#include <sys/vfs.h>
#endif
#if defined(__APPLE__) && defined(__MACH__)
# define __MacOS__
@ -77,15 +80,6 @@ disk_mount_point_get(const char *path)
Eina_Bool
disk_usage_get(const char *mountpoint, unsigned long *total, unsigned long *used)
{
#if defined(__linux__)
struct statvfs stats;
if (statvfs(mountpoint, &stats) < 0)
return EINA_FALSE;
*total = stats.f_frsize * stats.f_blocks;
*used = stats.f_bsize * stats.f_bavail;
#elif defined(__FreeBSD__) || defined(__DragonFly__)
struct statfs stats;
if (statfs(mountpoint, &stats) < 0)
@ -93,7 +87,6 @@ disk_usage_get(const char *mountpoint, unsigned long *total, unsigned long *used
*total = stats.f_bsize * stats.f_blocks;
*used = *total - (stats.f_bsize * stats.f_bfree);
#endif
return EINA_TRUE;
}