File tree Expand file tree Collapse file tree 3 files changed +93
-0
lines changed Expand file tree Collapse file tree 3 files changed +93
-0
lines changed Original file line number Diff line number Diff line change
1
+ #include "../git-compat-util.h"
2
+ #include "win32.h"
3
+ #include <conio.h>
4
+ #include "../strbuf.h"
5
+
6
+ DIR * opendir (const char * name )
7
+ {
8
+ int len ;
9
+ DIR * p ;
10
+ p = (DIR * )malloc (sizeof (DIR ));
11
+ memset (p , 0 , sizeof (DIR ));
12
+ strncpy (p -> dd_name , name , PATH_MAX );
13
+ len = strlen (p -> dd_name );
14
+ p -> dd_name [len ] = '/' ;
15
+ p -> dd_name [len + 1 ] = '*' ;
16
+
17
+ if (p == NULL )
18
+ return NULL ;
19
+
20
+ p -> dd_handle = _findfirst (p -> dd_name , & p -> dd_dta );
21
+
22
+ if (p -> dd_handle == -1 ) {
23
+ free (p );
24
+ return NULL ;
25
+ }
26
+ return p ;
27
+ }
28
+ int closedir (DIR * dir )
29
+ {
30
+ _findclose (dir -> dd_handle );
31
+ free (dir );
32
+ return 0 ;
33
+ }
34
+
35
+ #include "mingw.c"
Original file line number Diff line number Diff line change
1
+ #ifndef __MSVC__HEAD
2
+ #define __MSVC__HEAD
3
+
4
+ /* Define minimize windows version */
5
+ #define WINVER 0x0500
6
+ #define _WIN32_WINNT 0x0500
7
+ #define _WIN32_WINDOWS 0x0410
8
+ #define _WIN32_IE 0x0700
9
+ #define NTDDI_VERSION NTDDI_WIN2KSP1
10
+ #include <winsock2.h>
11
+ #include <direct.h>
12
+ #include <process.h>
13
+ #include <malloc.h>
14
+
15
+ /* porting function */
16
+ #define inline __inline
17
+ #define __inline__ __inline
18
+ #define __attribute__ (x )
19
+ #define va_copy (dst , src ) ((dst) = (src))
20
+
21
+ static __inline int strcasecmp (const char * s1 , const char * s2 )
22
+ {
23
+ int size1 = strlen (s1 );
24
+ int sisz2 = strlen (s2 );
25
+ return _strnicmp (s1 , s2 , sisz2 > size1 ? sisz2 : size1 );
26
+ }
27
+
28
+ #undef ERROR
29
+ #undef stat
30
+ #undef _stati64
31
+ #include "compat/mingw.h"
32
+ #undef stat
33
+ #define stat _stati64
34
+ #define _stat64 (x ,y ) mingw_lstat(x,y)
35
+
36
+ /*
37
+ Even though _stati64 is normally just defined at _stat64
38
+ on Windows, we specify it here as a proper struct to avoid
39
+ compiler warnings about macro redefinition due to magic in
40
+ mingw.h. Struct taken from ReactOS (GNU GPL license).
41
+ */
42
+ struct _stati64 {
43
+ _dev_t st_dev ;
44
+ _ino_t st_ino ;
45
+ unsigned short st_mode ;
46
+ short st_nlink ;
47
+ short st_uid ;
48
+ short st_gid ;
49
+ _dev_t st_rdev ;
50
+ __int64 st_size ;
51
+ time_t st_atime ;
52
+ time_t st_mtime ;
53
+ time_t st_ctime ;
54
+ };
55
+ #endif
Original file line number Diff line number Diff line change 113
113
/* pull in Windows compatibility stuff */
114
114
#include "compat/mingw.h"
115
115
#endif /* __MINGW32__ */
116
+ #ifdef _MSC_VER
117
+ #include "compat/msvc.h"
118
+ #endif
116
119
117
120
#ifndef NO_LIBGEN_H
118
121
#include <libgen.h>
You can’t perform that action at this time.
0 commit comments