fast_excel 0.4.1 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +1 -7
  3. data/CHANGELOG.md +9 -0
  4. data/Gemfile +1 -1
  5. data/examples/example.rb +2 -0
  6. data/examples/example_date_time.rb +38 -0
  7. data/fast_excel.gemspec +2 -2
  8. data/lib/fast_excel/binding/format.rb +17 -0
  9. data/lib/fast_excel/binding/workbook.rb +39 -17
  10. data/lib/fast_excel/binding/worksheet.rb +57 -13
  11. data/lib/fast_excel/binding.rb +7 -7
  12. data/lib/fast_excel.rb +27 -20
  13. data/libxlsxwriter/.github/FUNDING.yml +1 -0
  14. data/libxlsxwriter/.github/ISSUE_TEMPLATE.md +85 -0
  15. data/libxlsxwriter/.github/PULL_REQUEST_TEMPLATE.md +130 -0
  16. data/libxlsxwriter/.github/workflows/cmake_actions.yml +48 -0
  17. data/libxlsxwriter/.github/workflows/code_style.yml +23 -0
  18. data/libxlsxwriter/.github/workflows/coverity.yml +22 -0
  19. data/libxlsxwriter/.github/workflows/make_actions.yml +52 -0
  20. data/libxlsxwriter/.github/workflows/valgrind.yml +23 -0
  21. data/libxlsxwriter/.github/workflows/windows_build.yml +54 -0
  22. data/libxlsxwriter/.github/workflows/zig_build.yml +22 -0
  23. data/libxlsxwriter/.gitignore +16 -1
  24. data/libxlsxwriter/.indent.pro +24 -0
  25. data/libxlsxwriter/CMakeLists.txt +156 -56
  26. data/libxlsxwriter/CONTRIBUTING.md +2 -2
  27. data/libxlsxwriter/Changes.txt +344 -2
  28. data/libxlsxwriter/LICENSE.txt +66 -8
  29. data/libxlsxwriter/Makefile +151 -54
  30. data/libxlsxwriter/Package.swift +42 -0
  31. data/libxlsxwriter/Readme.md +4 -2
  32. data/libxlsxwriter/build.zig +324 -0
  33. data/libxlsxwriter/build.zig.zon +11 -0
  34. data/libxlsxwriter/cmake/FindMINIZIP.cmake +3 -3
  35. data/libxlsxwriter/cocoapods/libxlsxwriter-umbrella.h +6 -0
  36. data/libxlsxwriter/include/xlsxwriter/app.h +2 -1
  37. data/libxlsxwriter/include/xlsxwriter/chart.h +236 -32
  38. data/libxlsxwriter/include/xlsxwriter/chartsheet.h +7 -7
  39. data/libxlsxwriter/include/xlsxwriter/comment.h +76 -0
  40. data/libxlsxwriter/include/xlsxwriter/common.h +111 -50
  41. data/libxlsxwriter/include/xlsxwriter/content_types.h +8 -1
  42. data/libxlsxwriter/include/xlsxwriter/core.h +1 -1
  43. data/libxlsxwriter/include/xlsxwriter/custom.h +1 -1
  44. data/libxlsxwriter/include/xlsxwriter/drawing.h +11 -20
  45. data/libxlsxwriter/include/xlsxwriter/format.h +121 -8
  46. data/libxlsxwriter/include/xlsxwriter/hash_table.h +1 -1
  47. data/libxlsxwriter/include/xlsxwriter/metadata.h +49 -0
  48. data/libxlsxwriter/include/xlsxwriter/packager.h +27 -16
  49. data/libxlsxwriter/include/xlsxwriter/relationships.h +1 -1
  50. data/libxlsxwriter/include/xlsxwriter/shared_strings.h +1 -1
  51. data/libxlsxwriter/include/xlsxwriter/styles.h +13 -7
  52. data/libxlsxwriter/include/xlsxwriter/table.h +51 -0
  53. data/libxlsxwriter/include/xlsxwriter/theme.h +1 -1
  54. data/libxlsxwriter/include/xlsxwriter/third_party/emyg_dtoa.h +26 -0
  55. data/libxlsxwriter/include/xlsxwriter/third_party/ioapi.h +27 -25
  56. data/libxlsxwriter/include/xlsxwriter/third_party/md5.h +45 -0
  57. data/libxlsxwriter/include/xlsxwriter/third_party/zip.h +155 -153
  58. data/libxlsxwriter/include/xlsxwriter/utility.h +70 -8
  59. data/libxlsxwriter/include/xlsxwriter/vml.h +55 -0
  60. data/libxlsxwriter/include/xlsxwriter/workbook.h +218 -47
  61. data/libxlsxwriter/include/xlsxwriter/worksheet.h +2770 -241
  62. data/libxlsxwriter/include/xlsxwriter/xmlwriter.h +12 -8
  63. data/libxlsxwriter/include/xlsxwriter.h +4 -2
  64. data/libxlsxwriter/libxlsxwriter.podspec +8 -5
  65. data/libxlsxwriter/src/Makefile +58 -21
  66. data/libxlsxwriter/src/app.c +5 -2
  67. data/libxlsxwriter/src/chart.c +396 -81
  68. data/libxlsxwriter/src/chartsheet.c +22 -22
  69. data/libxlsxwriter/src/comment.c +443 -0
  70. data/libxlsxwriter/src/content_types.c +40 -1
  71. data/libxlsxwriter/src/core.c +2 -2
  72. data/libxlsxwriter/src/custom.c +1 -1
  73. data/libxlsxwriter/src/drawing.c +160 -40
  74. data/libxlsxwriter/src/format.c +109 -25
  75. data/libxlsxwriter/src/hash_table.c +1 -1
  76. data/libxlsxwriter/src/metadata.c +283 -0
  77. data/libxlsxwriter/src/packager.c +794 -94
  78. data/libxlsxwriter/src/relationships.c +1 -1
  79. data/libxlsxwriter/src/shared_strings.c +2 -4
  80. data/libxlsxwriter/src/styles.c +353 -58
  81. data/libxlsxwriter/src/table.c +304 -0
  82. data/libxlsxwriter/src/theme.c +1 -1
  83. data/libxlsxwriter/src/utility.c +143 -43
  84. data/libxlsxwriter/src/vml.c +1062 -0
  85. data/libxlsxwriter/src/workbook.c +567 -77
  86. data/libxlsxwriter/src/worksheet.c +6668 -1462
  87. data/libxlsxwriter/src/xmlwriter.c +95 -5
  88. data/libxlsxwriter/third_party/dtoa/Makefile +42 -0
  89. data/libxlsxwriter/third_party/dtoa/emyg_dtoa.c +461 -0
  90. data/libxlsxwriter/third_party/dtoa/emyg_dtoa.h +26 -0
  91. data/libxlsxwriter/third_party/md5/Makefile +42 -0
  92. data/libxlsxwriter/third_party/md5/md5.c +291 -0
  93. data/libxlsxwriter/third_party/md5/md5.h +45 -0
  94. data/libxlsxwriter/third_party/minizip/Makefile +3 -8
  95. data/libxlsxwriter/third_party/minizip/Makefile.orig +8 -4
  96. data/libxlsxwriter/third_party/minizip/MiniZip64_Changes.txt +1 -1
  97. data/libxlsxwriter/third_party/minizip/configure.ac +1 -1
  98. data/libxlsxwriter/third_party/minizip/crypt.h +13 -16
  99. data/libxlsxwriter/third_party/minizip/ioapi.c +31 -57
  100. data/libxlsxwriter/third_party/minizip/ioapi.h +31 -23
  101. data/libxlsxwriter/third_party/minizip/iowin32.c +29 -45
  102. data/libxlsxwriter/third_party/minizip/iowin32.h +4 -4
  103. data/libxlsxwriter/third_party/minizip/miniunz.c +29 -56
  104. data/libxlsxwriter/third_party/minizip/minizip.c +38 -49
  105. data/libxlsxwriter/third_party/minizip/mztools.c +1 -7
  106. data/libxlsxwriter/third_party/minizip/unzip.c +202 -342
  107. data/libxlsxwriter/third_party/minizip/unzip.h +74 -74
  108. data/libxlsxwriter/third_party/minizip/zip.c +165 -218
  109. data/libxlsxwriter/third_party/minizip/zip.h +164 -154
  110. data/libxlsxwriter/third_party/tmpfileplus/Makefile +3 -3
  111. data/libxlsxwriter/version.txt +1 -1
  112. data/test/auto_width_test.rb +20 -0
  113. data/test/default_format_test.rb +1 -1
  114. data/test/validations_test.rb +3 -3
  115. data/test/worksheet_test.rb +6 -1
  116. metadata +33 -7
  117. data/libxlsxwriter/.travis.yml +0 -37
@@ -14,7 +14,7 @@
14
14
  #define _CRT_SECURE_NO_WARNINGS
15
15
  #endif
16
16
 
17
- #if defined(__APPLE__) || defined(IOAPI_NO_64)
17
+ #if defined(__APPLE__) || defined(IOAPI_NO_64) || defined(__HAIKU__) || defined(MINIZIP_FOPEN_NO_64)
18
18
  // In darwin and perhaps other BSD variants off_t is a 64 bit value, hence no need for specific 64 bit functions
19
19
  #define FOPEN_FUNC(filename, mode) fopen(filename, mode)
20
20
  #define FTELLO_FUNC(stream) ftello(stream)
@@ -28,8 +28,7 @@
28
28
 
29
29
  #include "ioapi.h"
30
30
 
31
- voidpf call_zopen64 (const zlib_filefunc64_32_def* pfilefunc,const void*filename,int mode)
32
- {
31
+ voidpf call_zopen64 (const zlib_filefunc64_32_def* pfilefunc, const void*filename, int mode) {
33
32
  if (pfilefunc->zfile_func64.zopen64_file != NULL)
34
33
  return (*(pfilefunc->zfile_func64.zopen64_file)) (pfilefunc->zfile_func64.opaque,filename,mode);
35
34
  else
@@ -38,8 +37,7 @@ voidpf call_zopen64 (const zlib_filefunc64_32_def* pfilefunc,const void*filename
38
37
  }
39
38
  }
40
39
 
41
- long call_zseek64 (const zlib_filefunc64_32_def* pfilefunc,voidpf filestream, ZPOS64_T offset, int origin)
42
- {
40
+ long call_zseek64 (const zlib_filefunc64_32_def* pfilefunc,voidpf filestream, ZPOS64_T offset, int origin) {
43
41
  if (pfilefunc->zfile_func64.zseek64_file != NULL)
44
42
  return (*(pfilefunc->zfile_func64.zseek64_file)) (pfilefunc->zfile_func64.opaque,filestream,offset,origin);
45
43
  else
@@ -52,13 +50,12 @@ long call_zseek64 (const zlib_filefunc64_32_def* pfilefunc,voidpf filestream, ZP
52
50
  }
53
51
  }
54
52
 
55
- ZPOS64_T call_ztell64 (const zlib_filefunc64_32_def* pfilefunc,voidpf filestream)
56
- {
53
+ ZPOS64_T call_ztell64 (const zlib_filefunc64_32_def* pfilefunc, voidpf filestream) {
57
54
  if (pfilefunc->zfile_func64.zseek64_file != NULL)
58
55
  return (*(pfilefunc->zfile_func64.ztell64_file)) (pfilefunc->zfile_func64.opaque,filestream);
59
56
  else
60
57
  {
61
- uLong tell_uLong = (*(pfilefunc->ztell32_file))(pfilefunc->zfile_func64.opaque,filestream);
58
+ uLong tell_uLong = (uLong)(*(pfilefunc->ztell32_file))(pfilefunc->zfile_func64.opaque,filestream);
62
59
  if ((tell_uLong) == MAXU32)
63
60
  return (ZPOS64_T)-1;
64
61
  else
@@ -66,11 +63,9 @@ ZPOS64_T call_ztell64 (const zlib_filefunc64_32_def* pfilefunc,voidpf filestream
66
63
  }
67
64
  }
68
65
 
69
- void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def* p_filefunc64_32,const zlib_filefunc_def* p_filefunc32)
70
- {
66
+ void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def* p_filefunc64_32, const zlib_filefunc_def* p_filefunc32) {
71
67
  p_filefunc64_32->zfile_func64.zopen64_file = NULL;
72
68
  p_filefunc64_32->zopen32_file = p_filefunc32->zopen_file;
73
- p_filefunc64_32->zfile_func64.zerror_file = p_filefunc32->zerror_file;
74
69
  p_filefunc64_32->zfile_func64.zread_file = p_filefunc32->zread_file;
75
70
  p_filefunc64_32->zfile_func64.zwrite_file = p_filefunc32->zwrite_file;
76
71
  p_filefunc64_32->zfile_func64.ztell64_file = NULL;
@@ -84,19 +79,10 @@ void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def* p_filef
84
79
 
85
80
 
86
81
 
87
- static voidpf ZCALLBACK fopen_file_func OF((voidpf opaque, const char* filename, int mode));
88
- static uLong ZCALLBACK fread_file_func OF((voidpf opaque, voidpf stream, void* buf, uLong size));
89
- static uLong ZCALLBACK fwrite_file_func OF((voidpf opaque, voidpf stream, const void* buf,uLong size));
90
- static ZPOS64_T ZCALLBACK ftell64_file_func OF((voidpf opaque, voidpf stream));
91
- static long ZCALLBACK fseek64_file_func OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin));
92
- static int ZCALLBACK fclose_file_func OF((voidpf opaque, voidpf stream));
93
- static int ZCALLBACK ferror_file_func OF((voidpf opaque, voidpf stream));
94
-
95
- static voidpf ZCALLBACK fopen_file_func (voidpf opaque, const char* filename, int mode)
96
- {
82
+ static voidpf ZCALLBACK fopen_file_func(voidpf opaque, const char* filename, int mode) {
97
83
  FILE* file = NULL;
98
84
  const char* mode_fopen = NULL;
99
- (void) opaque;
85
+ (void)opaque;
100
86
  if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ)
101
87
  mode_fopen = "rb";
102
88
  else
@@ -111,11 +97,10 @@ static voidpf ZCALLBACK fopen_file_func (voidpf opaque, const char* filename, in
111
97
  return file;
112
98
  }
113
99
 
114
- static voidpf ZCALLBACK fopen64_file_func (voidpf opaque, const void* filename, int mode)
115
- {
100
+ static voidpf ZCALLBACK fopen64_file_func(voidpf opaque, const void* filename, int mode) {
116
101
  FILE* file = NULL;
117
102
  const char* mode_fopen = NULL;
118
- (void) opaque;
103
+ (void)opaque;
119
104
  if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ)
120
105
  mode_fopen = "rb";
121
106
  else
@@ -131,44 +116,39 @@ static voidpf ZCALLBACK fopen64_file_func (voidpf opaque, const void* filename,
131
116
  }
132
117
 
133
118
 
134
- static uLong ZCALLBACK fread_file_func (voidpf opaque, voidpf stream, void* buf, uLong size)
135
- {
119
+ static uLong ZCALLBACK fread_file_func(voidpf opaque, voidpf stream, void* buf, uLong size) {
136
120
  uLong ret;
137
- (void) opaque;
121
+ (void)opaque;
138
122
  ret = (uLong)fread(buf, 1, (size_t)size, (FILE *)stream);
139
123
  return ret;
140
124
  }
141
125
 
142
- static uLong ZCALLBACK fwrite_file_func (voidpf opaque, voidpf stream, const void* buf, uLong size)
143
- {
126
+ static uLong ZCALLBACK fwrite_file_func(voidpf opaque, voidpf stream, const void* buf, uLong size) {
144
127
  uLong ret;
145
- (void) opaque;
128
+ (void)opaque;
146
129
  ret = (uLong)fwrite(buf, 1, (size_t)size, (FILE *)stream);
147
130
  return ret;
148
131
  }
149
132
 
150
- static long ZCALLBACK ftell_file_func (voidpf opaque, voidpf stream)
151
- {
133
+ static long ZCALLBACK ftell_file_func(voidpf opaque, voidpf stream) {
152
134
  long ret;
153
- (void) opaque;
135
+ (void)opaque;
154
136
  ret = ftell((FILE *)stream);
155
137
  return ret;
156
138
  }
157
139
 
158
140
 
159
- static ZPOS64_T ZCALLBACK ftell64_file_func (voidpf opaque, voidpf stream)
160
- {
141
+ static ZPOS64_T ZCALLBACK ftell64_file_func(voidpf opaque, voidpf stream) {
161
142
  ZPOS64_T ret;
162
- (void) opaque;
163
- ret = FTELLO_FUNC((FILE *)stream);
143
+ (void)opaque;
144
+ ret = (ZPOS64_T)FTELLO_FUNC((FILE *)stream);
164
145
  return ret;
165
146
  }
166
147
 
167
- static long ZCALLBACK fseek_file_func (voidpf opaque, voidpf stream, uLong offset, int origin)
168
- {
148
+ static long ZCALLBACK fseek_file_func(voidpf opaque, voidpf stream, uLong offset, int origin) {
169
149
  int fseek_origin=0;
170
150
  long ret;
171
- (void) opaque;
151
+ (void)opaque;
172
152
  switch (origin)
173
153
  {
174
154
  case ZLIB_FILEFUNC_SEEK_CUR :
@@ -183,16 +163,15 @@ static long ZCALLBACK fseek_file_func (voidpf opaque, voidpf stream, uLong offs
183
163
  default: return -1;
184
164
  }
185
165
  ret = 0;
186
- if (fseek((FILE *)stream, offset, fseek_origin) != 0)
166
+ if (fseek((FILE *)stream, (long)offset, fseek_origin) != 0)
187
167
  ret = -1;
188
168
  return ret;
189
169
  }
190
170
 
191
- static long ZCALLBACK fseek64_file_func (voidpf opaque, voidpf stream, ZPOS64_T offset, int origin)
192
- {
171
+ static long ZCALLBACK fseek64_file_func(voidpf opaque, voidpf stream, ZPOS64_T offset, int origin) {
193
172
  int fseek_origin=0;
194
173
  long ret;
195
- (void) opaque;
174
+ (void)opaque;
196
175
  switch (origin)
197
176
  {
198
177
  case ZLIB_FILEFUNC_SEEK_CUR :
@@ -208,32 +187,28 @@ static long ZCALLBACK fseek64_file_func (voidpf opaque, voidpf stream, ZPOS64_T
208
187
  }
209
188
  ret = 0;
210
189
 
211
- if(FSEEKO_FUNC((FILE *)stream, offset, fseek_origin) != 0)
190
+ if(FSEEKO_FUNC((FILE *)stream, (z_off64_t)offset, fseek_origin) != 0)
212
191
  ret = -1;
213
192
 
214
193
  return ret;
215
194
  }
216
195
 
217
196
 
218
- static int ZCALLBACK fclose_file_func (voidpf opaque, voidpf stream)
219
- {
197
+ static int ZCALLBACK fclose_file_func(voidpf opaque, voidpf stream) {
220
198
  int ret;
221
- (void) opaque;
199
+ (void)opaque;
222
200
  ret = fclose((FILE *)stream);
223
201
  return ret;
224
202
  }
225
203
 
226
- static int ZCALLBACK ferror_file_func (voidpf opaque, voidpf stream)
227
- {
204
+ static int ZCALLBACK ferror_file_func(voidpf opaque, voidpf stream) {
228
205
  int ret;
229
- (void) opaque;
206
+ (void)opaque;
230
207
  ret = ferror((FILE *)stream);
231
208
  return ret;
232
209
  }
233
210
 
234
- void fill_fopen_filefunc (pzlib_filefunc_def)
235
- zlib_filefunc_def* pzlib_filefunc_def;
236
- {
211
+ void fill_fopen_filefunc(zlib_filefunc_def* pzlib_filefunc_def) {
237
212
  pzlib_filefunc_def->zopen_file = fopen_file_func;
238
213
  pzlib_filefunc_def->zread_file = fread_file_func;
239
214
  pzlib_filefunc_def->zwrite_file = fwrite_file_func;
@@ -244,8 +219,7 @@ void fill_fopen_filefunc (pzlib_filefunc_def)
244
219
  pzlib_filefunc_def->opaque = NULL;
245
220
  }
246
221
 
247
- void fill_fopen64_filefunc (zlib_filefunc64_def* pzlib_filefunc_def)
248
- {
222
+ void fill_fopen64_filefunc(zlib_filefunc64_def* pzlib_filefunc_def) {
249
223
  pzlib_filefunc_def->zopen64_file = fopen64_file_func;
250
224
  pzlib_filefunc_def->zread_file = fread_file_func;
251
225
  pzlib_filefunc_def->zwrite_file = fwrite_file_func;
@@ -18,6 +18,12 @@
18
18
 
19
19
  */
20
20
 
21
+
22
+ /* Pragma added by libxlsxwriter to avoid warnings with -pedantic -ansi. */
23
+ #ifndef _WIN32
24
+ #pragma GCC system_header
25
+ #endif
26
+
21
27
  #ifndef _ZLIBIOAPI64_H
22
28
  #define _ZLIBIOAPI64_H
23
29
 
@@ -50,7 +56,7 @@
50
56
  #define ftello64 ftell
51
57
  #define fseeko64 fseek
52
58
  #else
53
- #if defined(__FreeBSD__) || defined(__OpenBSD__)
59
+ #if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__HAIKU__) || defined(MINIZIP_FOPEN_NO_64)
54
60
  #define fopen64 fopen
55
61
  #define ftello64 ftello
56
62
  #define fseeko64 fseeko
@@ -82,7 +88,7 @@
82
88
  #include "mz64conf.h"
83
89
  #endif
84
90
 
85
- /* a type choosen by DEFINE */
91
+ /* a type chosen by DEFINE */
86
92
  #ifdef HAVE_64BIT_INT_CUSTOM
87
93
  typedef 64BIT_INT_CUSTOM_TYPE ZPOS64_T;
88
94
  #else
@@ -91,8 +97,7 @@ typedef 64BIT_INT_CUSTOM_TYPE ZPOS64_T;
91
97
  typedef uint64_t ZPOS64_T;
92
98
  #else
93
99
 
94
- /* Maximum unsigned 32-bit value used as placeholder for zip64 */
95
- #define MAXU32 0xffffffff
100
+
96
101
 
97
102
  #if defined(_MSC_VER) || defined(__BORLANDC__)
98
103
  typedef unsigned __int64 ZPOS64_T;
@@ -102,7 +107,10 @@ typedef unsigned long long int ZPOS64_T;
102
107
  #endif
103
108
  #endif
104
109
 
105
-
110
+ /* Maximum unsigned 32-bit value used as placeholder for zip64 */
111
+ #ifndef MAXU32
112
+ #define MAXU32 (0xffffffff)
113
+ #endif
106
114
 
107
115
  #ifdef __cplusplus
108
116
  extern "C" {
@@ -132,14 +140,14 @@ extern "C" {
132
140
 
133
141
 
134
142
 
135
- typedef voidpf (ZCALLBACK *open_file_func) OF((voidpf opaque, const char* filename, int mode));
136
- typedef uLong (ZCALLBACK *read_file_func) OF((voidpf opaque, voidpf stream, void* buf, uLong size));
137
- typedef uLong (ZCALLBACK *write_file_func) OF((voidpf opaque, voidpf stream, const void* buf, uLong size));
138
- typedef int (ZCALLBACK *close_file_func) OF((voidpf opaque, voidpf stream));
139
- typedef int (ZCALLBACK *testerror_file_func) OF((voidpf opaque, voidpf stream));
143
+ typedef voidpf (ZCALLBACK *open_file_func) (voidpf opaque, const char* filename, int mode);
144
+ typedef uLong (ZCALLBACK *read_file_func) (voidpf opaque, voidpf stream, void* buf, uLong size);
145
+ typedef uLong (ZCALLBACK *write_file_func) (voidpf opaque, voidpf stream, const void* buf, uLong size);
146
+ typedef int (ZCALLBACK *close_file_func) (voidpf opaque, voidpf stream);
147
+ typedef int (ZCALLBACK *testerror_file_func) (voidpf opaque, voidpf stream);
140
148
 
141
- typedef long (ZCALLBACK *tell_file_func) OF((voidpf opaque, voidpf stream));
142
- typedef long (ZCALLBACK *seek_file_func) OF((voidpf opaque, voidpf stream, uLong offset, int origin));
149
+ typedef long (ZCALLBACK *tell_file_func) (voidpf opaque, voidpf stream);
150
+ typedef long (ZCALLBACK *seek_file_func) (voidpf opaque, voidpf stream, uLong offset, int origin);
143
151
 
144
152
 
145
153
  /* here is the "old" 32 bits structure structure */
@@ -155,9 +163,9 @@ typedef struct zlib_filefunc_def_s
155
163
  voidpf opaque;
156
164
  } zlib_filefunc_def;
157
165
 
158
- typedef ZPOS64_T (ZCALLBACK *tell64_file_func) OF((voidpf opaque, voidpf stream));
159
- typedef long (ZCALLBACK *seek64_file_func) OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin));
160
- typedef voidpf (ZCALLBACK *open64_file_func) OF((voidpf opaque, const void* filename, int mode));
166
+ typedef ZPOS64_T (ZCALLBACK *tell64_file_func) (voidpf opaque, voidpf stream);
167
+ typedef long (ZCALLBACK *seek64_file_func) (voidpf opaque, voidpf stream, ZPOS64_T offset, int origin);
168
+ typedef voidpf (ZCALLBACK *open64_file_func) (voidpf opaque, const void* filename, int mode);
161
169
 
162
170
  typedef struct zlib_filefunc64_def_s
163
171
  {
@@ -171,8 +179,8 @@ typedef struct zlib_filefunc64_def_s
171
179
  voidpf opaque;
172
180
  } zlib_filefunc64_def;
173
181
 
174
- void fill_fopen64_filefunc OF((zlib_filefunc64_def* pzlib_filefunc_def));
175
- void fill_fopen_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def));
182
+ void fill_fopen64_filefunc(zlib_filefunc64_def* pzlib_filefunc_def);
183
+ void fill_fopen_filefunc(zlib_filefunc_def* pzlib_filefunc_def);
176
184
 
177
185
  /* now internal definition, only for zip.c and unzip.h */
178
186
  typedef struct zlib_filefunc64_32_def_s
@@ -186,16 +194,16 @@ typedef struct zlib_filefunc64_32_def_s
186
194
 
187
195
  #define ZREAD64(filefunc,filestream,buf,size) ((*((filefunc).zfile_func64.zread_file)) ((filefunc).zfile_func64.opaque,filestream,buf,size))
188
196
  #define ZWRITE64(filefunc,filestream,buf,size) ((*((filefunc).zfile_func64.zwrite_file)) ((filefunc).zfile_func64.opaque,filestream,buf,size))
189
- /* #define ZTELL64(filefunc,filestream) ((*((filefunc).ztell64_file)) ((filefunc).opaque,filestream)) */
190
- /* #define ZSEEK64(filefunc,filestream,pos,mode) ((*((filefunc).zseek64_file)) ((filefunc).opaque,filestream,pos,mode)) */
197
+ //#define ZTELL64(filefunc,filestream) ((*((filefunc).ztell64_file)) ((filefunc).opaque,filestream))
198
+ //#define ZSEEK64(filefunc,filestream,pos,mode) ((*((filefunc).zseek64_file)) ((filefunc).opaque,filestream,pos,mode))
191
199
  #define ZCLOSE64(filefunc,filestream) ((*((filefunc).zfile_func64.zclose_file)) ((filefunc).zfile_func64.opaque,filestream))
192
200
  #define ZERROR64(filefunc,filestream) ((*((filefunc).zfile_func64.zerror_file)) ((filefunc).zfile_func64.opaque,filestream))
193
201
 
194
- voidpf call_zopen64 OF((const zlib_filefunc64_32_def* pfilefunc,const void*filename,int mode));
195
- long call_zseek64 OF((const zlib_filefunc64_32_def* pfilefunc,voidpf filestream, ZPOS64_T offset, int origin));
196
- ZPOS64_T call_ztell64 OF((const zlib_filefunc64_32_def* pfilefunc,voidpf filestream));
202
+ voidpf call_zopen64(const zlib_filefunc64_32_def* pfilefunc,const void*filename,int mode);
203
+ long call_zseek64(const zlib_filefunc64_32_def* pfilefunc,voidpf filestream, ZPOS64_T offset, int origin);
204
+ ZPOS64_T call_ztell64(const zlib_filefunc64_32_def* pfilefunc,voidpf filestream);
197
205
 
198
- void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def* p_filefunc64_32,const zlib_filefunc_def* p_filefunc32);
206
+ void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def* p_filefunc64_32,const zlib_filefunc_def* p_filefunc32);
199
207
 
200
208
  #define ZOPEN64(filefunc,filename,mode) (call_zopen64((&(filefunc)),(filename),(mode)))
201
209
  #define ZTELL64(filefunc,filestream) (call_ztell64((&(filefunc)),(filestream)))
@@ -26,14 +26,17 @@
26
26
  #endif
27
27
 
28
28
 
29
+ // see Include/shared/winapifamily.h in the Windows Kit
30
+ #if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API)))
29
31
 
30
- voidpf ZCALLBACK win32_open_file_func OF((voidpf opaque, const char* filename, int mode));
31
- uLong ZCALLBACK win32_read_file_func OF((voidpf opaque, voidpf stream, void* buf, uLong size));
32
- uLong ZCALLBACK win32_write_file_func OF((voidpf opaque, voidpf stream, const void* buf, uLong size));
33
- ZPOS64_T ZCALLBACK win32_tell64_file_func OF((voidpf opaque, voidpf stream));
34
- long ZCALLBACK win32_seek64_file_func OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin));
35
- int ZCALLBACK win32_close_file_func OF((voidpf opaque, voidpf stream));
36
- int ZCALLBACK win32_error_file_func OF((voidpf opaque, voidpf stream));
32
+ #if !defined(WINAPI_FAMILY_ONE_PARTITION)
33
+ #define WINAPI_FAMILY_ONE_PARTITION(PartitionSet, Partition) ((WINAPI_FAMILY & PartitionSet) == Partition)
34
+ #endif
35
+
36
+ #if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY, WINAPI_PARTITION_APP)
37
+ #define IOWIN32_USING_WINRT_API 1
38
+ #endif
39
+ #endif
37
40
 
38
41
  typedef struct
39
42
  {
@@ -46,8 +49,7 @@ static void win32_translate_open_mode(int mode,
46
49
  DWORD* lpdwDesiredAccess,
47
50
  DWORD* lpdwCreationDisposition,
48
51
  DWORD* lpdwShareMode,
49
- DWORD* lpdwFlagsAndAttributes)
50
- {
52
+ DWORD* lpdwFlagsAndAttributes) {
51
53
  *lpdwDesiredAccess = *lpdwShareMode = *lpdwFlagsAndAttributes = *lpdwCreationDisposition = 0;
52
54
 
53
55
  if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ)
@@ -68,8 +70,7 @@ static void win32_translate_open_mode(int mode,
68
70
  }
69
71
  }
70
72
 
71
- static voidpf win32_build_iowin(HANDLE hFile)
72
- {
73
+ static voidpf win32_build_iowin(HANDLE hFile) {
73
74
  voidpf ret=NULL;
74
75
 
75
76
  if ((hFile != NULL) && (hFile != INVALID_HANDLE_VALUE))
@@ -87,8 +88,7 @@ static voidpf win32_build_iowin(HANDLE hFile)
87
88
  return ret;
88
89
  }
89
90
 
90
- voidpf ZCALLBACK win32_open64_file_func (voidpf opaque,const void* filename,int mode)
91
- {
91
+ voidpf ZCALLBACK win32_open64_file_func(voidpf opaque, const void* filename, int mode) {
92
92
  const char* mode_fopen = NULL;
93
93
  DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
94
94
  HANDLE hFile = NULL;
@@ -116,8 +116,7 @@ voidpf ZCALLBACK win32_open64_file_func (voidpf opaque,const void* filename,int
116
116
  }
117
117
 
118
118
 
119
- voidpf ZCALLBACK win32_open64_file_funcA (voidpf opaque,const void* filename,int mode)
120
- {
119
+ voidpf ZCALLBACK win32_open64_file_funcA(voidpf opaque, const void* filename, int mode) {
121
120
  const char* mode_fopen = NULL;
122
121
  DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
123
122
  HANDLE hFile = NULL;
@@ -140,8 +139,7 @@ voidpf ZCALLBACK win32_open64_file_funcA (voidpf opaque,const void* filename,int
140
139
  }
141
140
 
142
141
 
143
- voidpf ZCALLBACK win32_open64_file_funcW (voidpf opaque,const void* filename,int mode)
144
- {
142
+ voidpf ZCALLBACK win32_open64_file_funcW(voidpf opaque, const void* filename, int mode) {
145
143
  const char* mode_fopen = NULL;
146
144
  DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
147
145
  HANDLE hFile = NULL;
@@ -160,8 +158,7 @@ voidpf ZCALLBACK win32_open64_file_funcW (voidpf opaque,const void* filename,int
160
158
  }
161
159
 
162
160
 
163
- voidpf ZCALLBACK win32_open_file_func (voidpf opaque,const char* filename,int mode)
164
- {
161
+ voidpf ZCALLBACK win32_open_file_func(voidpf opaque, const char* filename, int mode) {
165
162
  const char* mode_fopen = NULL;
166
163
  DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
167
164
  HANDLE hFile = NULL;
@@ -189,8 +186,7 @@ voidpf ZCALLBACK win32_open_file_func (voidpf opaque,const char* filename,int mo
189
186
  }
190
187
 
191
188
 
192
- uLong ZCALLBACK win32_read_file_func (voidpf opaque, voidpf stream, void* buf,uLong size)
193
- {
189
+ uLong ZCALLBACK win32_read_file_func(voidpf opaque, voidpf stream, void* buf,uLong size) {
194
190
  uLong ret=0;
195
191
  HANDLE hFile = NULL;
196
192
  if (stream!=NULL)
@@ -211,8 +207,7 @@ uLong ZCALLBACK win32_read_file_func (voidpf opaque, voidpf stream, void* buf,uL
211
207
  }
212
208
 
213
209
 
214
- uLong ZCALLBACK win32_write_file_func (voidpf opaque,voidpf stream,const void* buf,uLong size)
215
- {
210
+ uLong ZCALLBACK win32_write_file_func(voidpf opaque, voidpf stream, const void* buf, uLong size) {
216
211
  uLong ret=0;
217
212
  HANDLE hFile = NULL;
218
213
  if (stream!=NULL)
@@ -232,8 +227,7 @@ uLong ZCALLBACK win32_write_file_func (voidpf opaque,voidpf stream,const void* b
232
227
  return ret;
233
228
  }
234
229
 
235
- static BOOL MySetFilePointerEx(HANDLE hFile, LARGE_INTEGER pos, LARGE_INTEGER *newPos, DWORD dwMoveMethod)
236
- {
230
+ static BOOL MySetFilePointerEx(HANDLE hFile, LARGE_INTEGER pos, LARGE_INTEGER *newPos, DWORD dwMoveMethod) {
237
231
  #ifdef IOWIN32_USING_WINRT_API
238
232
  return SetFilePointerEx(hFile, pos, newPos, dwMoveMethod);
239
233
  #else
@@ -252,8 +246,7 @@ static BOOL MySetFilePointerEx(HANDLE hFile, LARGE_INTEGER pos, LARGE_INTEGER *n
252
246
  #endif
253
247
  }
254
248
 
255
- long ZCALLBACK win32_tell_file_func (voidpf opaque,voidpf stream)
256
- {
249
+ long ZCALLBACK win32_tell_file_func(voidpf opaque, voidpf stream) {
257
250
  long ret=-1;
258
251
  HANDLE hFile = NULL;
259
252
  if (stream!=NULL)
@@ -275,8 +268,7 @@ long ZCALLBACK win32_tell_file_func (voidpf opaque,voidpf stream)
275
268
  return ret;
276
269
  }
277
270
 
278
- ZPOS64_T ZCALLBACK win32_tell64_file_func (voidpf opaque, voidpf stream)
279
- {
271
+ ZPOS64_T ZCALLBACK win32_tell64_file_func(voidpf opaque, voidpf stream) {
280
272
  ZPOS64_T ret= (ZPOS64_T)-1;
281
273
  HANDLE hFile = NULL;
282
274
  if (stream!=NULL)
@@ -300,8 +292,7 @@ ZPOS64_T ZCALLBACK win32_tell64_file_func (voidpf opaque, voidpf stream)
300
292
  }
301
293
 
302
294
 
303
- long ZCALLBACK win32_seek_file_func (voidpf opaque,voidpf stream,uLong offset,int origin)
304
- {
295
+ long ZCALLBACK win32_seek_file_func(voidpf opaque, voidpf stream, uLong offset, int origin) {
305
296
  DWORD dwMoveMethod=0xFFFFFFFF;
306
297
  HANDLE hFile = NULL;
307
298
 
@@ -338,8 +329,7 @@ long ZCALLBACK win32_seek_file_func (voidpf opaque,voidpf stream,uLong offset,in
338
329
  return ret;
339
330
  }
340
331
 
341
- long ZCALLBACK win32_seek64_file_func (voidpf opaque, voidpf stream,ZPOS64_T offset,int origin)
342
- {
332
+ long ZCALLBACK win32_seek64_file_func(voidpf opaque, voidpf stream, ZPOS64_T offset, int origin) {
343
333
  DWORD dwMoveMethod=0xFFFFFFFF;
344
334
  HANDLE hFile = NULL;
345
335
  long ret=-1;
@@ -377,8 +367,7 @@ long ZCALLBACK win32_seek64_file_func (voidpf opaque, voidpf stream,ZPOS64_T off
377
367
  return ret;
378
368
  }
379
369
 
380
- int ZCALLBACK win32_close_file_func (voidpf opaque, voidpf stream)
381
- {
370
+ int ZCALLBACK win32_close_file_func(voidpf opaque, voidpf stream) {
382
371
  int ret=-1;
383
372
 
384
373
  if (stream!=NULL)
@@ -395,8 +384,7 @@ int ZCALLBACK win32_close_file_func (voidpf opaque, voidpf stream)
395
384
  return ret;
396
385
  }
397
386
 
398
- int ZCALLBACK win32_error_file_func (voidpf opaque,voidpf stream)
399
- {
387
+ int ZCALLBACK win32_error_file_func(voidpf opaque, voidpf stream) {
400
388
  int ret=-1;
401
389
  if (stream!=NULL)
402
390
  {
@@ -405,8 +393,7 @@ int ZCALLBACK win32_error_file_func (voidpf opaque,voidpf stream)
405
393
  return ret;
406
394
  }
407
395
 
408
- void fill_win32_filefunc (zlib_filefunc_def* pzlib_filefunc_def)
409
- {
396
+ void fill_win32_filefunc(zlib_filefunc_def* pzlib_filefunc_def) {
410
397
  pzlib_filefunc_def->zopen_file = win32_open_file_func;
411
398
  pzlib_filefunc_def->zread_file = win32_read_file_func;
412
399
  pzlib_filefunc_def->zwrite_file = win32_write_file_func;
@@ -417,8 +404,7 @@ void fill_win32_filefunc (zlib_filefunc_def* pzlib_filefunc_def)
417
404
  pzlib_filefunc_def->opaque = NULL;
418
405
  }
419
406
 
420
- void fill_win32_filefunc64(zlib_filefunc64_def* pzlib_filefunc_def)
421
- {
407
+ void fill_win32_filefunc64(zlib_filefunc64_def* pzlib_filefunc_def) {
422
408
  pzlib_filefunc_def->zopen64_file = win32_open64_file_func;
423
409
  pzlib_filefunc_def->zread_file = win32_read_file_func;
424
410
  pzlib_filefunc_def->zwrite_file = win32_write_file_func;
@@ -430,8 +416,7 @@ void fill_win32_filefunc64(zlib_filefunc64_def* pzlib_filefunc_def)
430
416
  }
431
417
 
432
418
 
433
- void fill_win32_filefunc64A(zlib_filefunc64_def* pzlib_filefunc_def)
434
- {
419
+ void fill_win32_filefunc64A(zlib_filefunc64_def* pzlib_filefunc_def) {
435
420
  pzlib_filefunc_def->zopen64_file = win32_open64_file_funcA;
436
421
  pzlib_filefunc_def->zread_file = win32_read_file_func;
437
422
  pzlib_filefunc_def->zwrite_file = win32_write_file_func;
@@ -443,8 +428,7 @@ void fill_win32_filefunc64A(zlib_filefunc64_def* pzlib_filefunc_def)
443
428
  }
444
429
 
445
430
 
446
- void fill_win32_filefunc64W(zlib_filefunc64_def* pzlib_filefunc_def)
447
- {
431
+ void fill_win32_filefunc64W(zlib_filefunc64_def* pzlib_filefunc_def) {
448
432
  pzlib_filefunc_def->zopen64_file = win32_open64_file_funcW;
449
433
  pzlib_filefunc_def->zread_file = win32_read_file_func;
450
434
  pzlib_filefunc_def->zwrite_file = win32_write_file_func;
@@ -18,10 +18,10 @@
18
18
  extern "C" {
19
19
  #endif
20
20
 
21
- void fill_win32_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def));
22
- void fill_win32_filefunc64 OF((zlib_filefunc64_def* pzlib_filefunc_def));
23
- void fill_win32_filefunc64A OF((zlib_filefunc64_def* pzlib_filefunc_def));
24
- void fill_win32_filefunc64W OF((zlib_filefunc64_def* pzlib_filefunc_def));
21
+ void fill_win32_filefunc(zlib_filefunc_def* pzlib_filefunc_def);
22
+ void fill_win32_filefunc64(zlib_filefunc64_def* pzlib_filefunc_def);
23
+ void fill_win32_filefunc64A(zlib_filefunc64_def* pzlib_filefunc_def);
24
+ void fill_win32_filefunc64W(zlib_filefunc64_def* pzlib_filefunc_def);
25
25
 
26
26
  #ifdef __cplusplus
27
27
  }