diff --git a/src/modules/filesystem/physfs/Filesystem.cpp b/src/modules/filesystem/physfs/Filesystem.cpp index 72544b08a..43abbcc1b 100644 --- a/src/modules/filesystem/physfs/Filesystem.cpp +++ b/src/modules/filesystem/physfs/Filesystem.cpp @@ -214,6 +214,16 @@ namespace physfs appdata = udir; } return appdata.c_str(); +#elif defined(LOVE_LINUX) + if(appdata.empty()) + { + char * xdgdatahome = getenv("XDG_DATA_HOM"); + if (!xdgdatahome) + appdata = getUserDirectory(); + else + appdata = xdgdatahome; + } + return appdata.c_str(); #else return getUserDirectory(); #endif diff --git a/src/modules/filesystem/physfs/Filesystem.h b/src/modules/filesystem/physfs/Filesystem.h index 84ddef2c8..d2c97497c 100644 --- a/src/modules/filesystem/physfs/Filesystem.h +++ b/src/modules/filesystem/physfs/Filesystem.h @@ -22,6 +22,7 @@ #define LOVE_FILESYSTEM_PHYSFS_FILESYSTEM_H // STD +#include #include #include #include