--- parser3/src/include/pa_dir.h 2013/07/21 14:45:32 1.22 +++ parser3/src/include/pa_dir.h 2015/10/26 01:21:55 1.27 @@ -1,14 +1,14 @@ /** @file Parser: directory scanning for different OS-es decls. - Copyright (c) 2000-2012 Art. Lebedev Studio (http://www.artlebedev.com) + Copyright (c) 2000-2015 Art. Lebedev Studio (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ #ifndef PA_DIR_H #define PA_DIR_H -#define IDENT_PA_DIR_H "$Id: pa_dir.h,v 1.22 2013/07/21 14:45:32 moko Exp $" +#define IDENT_PA_DIR_H "$Id: pa_dir.h,v 1.27 2015/10/26 01:21:55 moko Exp $" #include "pa_config_includes.h" @@ -17,36 +17,27 @@ for findfirst/next/close interface */ -#ifdef WIN32 +#ifdef _MSC_VER #include #define MAXPATH MAX_PATH -#define FA_DIREC FILE_ATTRIBUTE_DIRECTORY struct ffblk { - DWORD ff_attrib;/*dwFileAttributes;*/ - FILETIME ftCreationTime; - FILETIME ftLastAccessTime; - FILETIME ftLastWriteTime; - DWORD nFileSizeHigh; - DWORD nFileSizeLow; - DWORD dwReserved0; - DWORD dwReserved1; - CHAR ff_name[ MAX_PATH ];/*cFileName[ MAX_PATH ];*/ - CHAR cAlternateFileName[ 14 ]; + DWORD ff_attrib;/*dwFileAttributes;*/ + FILETIME ftCreationTime; + FILETIME ftLastAccessTime; + FILETIME ftLastWriteTime; + DWORD nFileSizeHigh; + DWORD nFileSizeLow; + DWORD dwReserved0; + DWORD dwReserved1; + CHAR ff_name[ MAX_PATH ];/*cFileName[ MAX_PATH ];*/ + CHAR cAlternateFileName[ 14 ]; /*helper*/ HANDLE handle; -/* - unsigned char ff_attrib __attribute__((packed)); - unsigned short ff_ftime __attribute__((packed)); - unsigned short ff_fdate __attribute__((packed)); - unsigned long ff_fsize __attribute__((packed)); - char ff_name[260] __attribute__((packed)); - */ - void stat_file(); - bool is_dir(); + bool is_dir(bool); double size(); time_t c_timestamp(); time_t m_timestamp(); @@ -55,30 +46,21 @@ struct ffblk { #else -#include -#include -#include -#include - #define MAXPATH 1000 /*NAME_MAX*/ -#define FA_DIREC S_IFDIR struct ffblk { /*as if in windows :)*/ char ff_name[ MAXPATH ]; /*helpers*/ DIR *dir; - char filePath[MAXPATH]; + const char *filePath; struct stat _st; #ifdef HAVE_STRUCT_DIRENT_D_TYPE unsigned char _d_type; - void stat_file(); -#else - void stat_file(){} - void real_stat_file(); #endif - bool is_dir(); + bool is_dir(bool); + void stat_file(); double size(); time_t c_timestamp(); time_t m_timestamp();