Skip to content

Commit 7cf8df5

Browse files
committed
Merge branch 'master' of git.php.net:/php-src
2 parents 1cfd12d + ebb6f5e commit 7cf8df5

File tree

5 files changed

+51
-52
lines changed

5 files changed

+51
-52
lines changed

TSRM/tsrm_win32.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ TSRMLS_CACHE_UPDATE();
4949
globals->shm = NULL;
5050
globals->process_size = 0;
5151
globals->shm_size = 0;
52-
globals->comspec = _strdup((GetVersion()<0x80000000)?"cmd.exe":"command.com");
52+
globals->comspec = _strdup("cmd.exe");
5353

5454
/* Set it to INVALID_HANDLE_VALUE
5555
* It will be initialized correctly in tsrm_win32_access or set to

ext/session/session.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -942,7 +942,7 @@ PS_SERIALIZER_DECODE_FUNC(php_binary) /* {{{ */
942942

943943
if ((tmp = zend_hash_find(&EG(symbol_table), name))) {
944944
if ((Z_TYPE_P(tmp) == IS_ARRAY && Z_ARRVAL_P(tmp) == &EG(symbol_table)) || tmp == &PS(http_session_vars)) {
945-
efree(name);
945+
zend_string_release(name);
946946
continue;
947947
}
948948
}
@@ -954,6 +954,7 @@ PS_SERIALIZER_DECODE_FUNC(php_binary) /* {{{ */
954954
var_replace(&var_hash, &current, zv);
955955
} else {
956956
zval_ptr_dtor(&current);
957+
zend_string_release(name);
957958
PHP_VAR_UNSERIALIZE_DESTROY(var_hash);
958959
return FAILURE;
959960
}

ext/session/tests/session_decode_error2.phpt

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -55,210 +55,210 @@ array(0) {
5555

5656
-- Iteration 4 --
5757

58-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
58+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
5959
bool(false)
6060
array(0) {
6161
}
6262

6363
-- Iteration 5 --
6464

65-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
65+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
6666
bool(false)
6767
array(0) {
6868
}
6969

7070
-- Iteration 6 --
7171

72-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
72+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
7373
bool(false)
7474
array(0) {
7575
}
7676

7777
-- Iteration 7 --
7878

79-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
79+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
8080
bool(false)
8181
array(0) {
8282
}
8383

8484
-- Iteration 8 --
8585

86-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
86+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
8787
bool(false)
8888
array(0) {
8989
}
9090

9191
-- Iteration 9 --
9292

93-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
93+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
9494
bool(false)
9595
array(0) {
9696
}
9797

9898
-- Iteration 10 --
9999

100-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
100+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
101101
bool(false)
102102
array(0) {
103103
}
104104

105105
-- Iteration 11 --
106106

107-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
107+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
108108
bool(false)
109109
array(0) {
110110
}
111111

112112
-- Iteration 12 --
113113

114-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
114+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
115115
bool(false)
116116
array(0) {
117117
}
118118

119119
-- Iteration 13 --
120120

121-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
121+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
122122
bool(false)
123123
array(0) {
124124
}
125125

126126
-- Iteration 14 --
127127

128-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
128+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
129129
bool(false)
130130
array(0) {
131131
}
132132

133133
-- Iteration 15 --
134134

135-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
135+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
136136
bool(false)
137137
array(0) {
138138
}
139139

140140
-- Iteration 16 --
141141

142-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
142+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
143143
bool(false)
144144
array(0) {
145145
}
146146

147147
-- Iteration 17 --
148148

149-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
149+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
150150
bool(false)
151151
array(0) {
152152
}
153153

154154
-- Iteration 18 --
155155

156-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
156+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
157157
bool(false)
158158
array(0) {
159159
}
160160

161161
-- Iteration 19 --
162162

163-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
163+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
164164
bool(false)
165165
array(0) {
166166
}
167167

168168
-- Iteration 20 --
169169

170-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
170+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
171171
bool(false)
172172
array(0) {
173173
}
174174

175175
-- Iteration 21 --
176176

177-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
177+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
178178
bool(false)
179179
array(0) {
180180
}
181181

182182
-- Iteration 22 --
183183

184-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
184+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
185185
bool(false)
186186
array(0) {
187187
}
188188

189189
-- Iteration 23 --
190190

191-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
191+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
192192
bool(false)
193193
array(0) {
194194
}
195195

196196
-- Iteration 24 --
197197

198-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
198+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
199199
bool(false)
200200
array(0) {
201201
}
202202

203203
-- Iteration 25 --
204204

205-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
205+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
206206
bool(false)
207207
array(0) {
208208
}
209209

210210
-- Iteration 26 --
211211

212-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
212+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
213213
bool(false)
214214
array(0) {
215215
}
216216

217217
-- Iteration 27 --
218218

219-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
219+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
220220
bool(false)
221221
array(0) {
222222
}
223223

224224
-- Iteration 28 --
225225

226-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
226+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
227227
bool(false)
228228
array(0) {
229229
}
230230

231231
-- Iteration 29 --
232232

233-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
233+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
234234
bool(false)
235235
array(0) {
236236
}
237237

238238
-- Iteration 30 --
239239

240-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
240+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
241241
bool(false)
242242
array(0) {
243243
}
244244

245245
-- Iteration 31 --
246246

247-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
247+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
248248
bool(false)
249249
array(0) {
250250
}
251251

252252
-- Iteration 32 --
253253

254-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
254+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
255255
bool(false)
256256
array(0) {
257257
}
258258

259259
-- Iteration 33 --
260260

261-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
261+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
262262
bool(false)
263263
array(0) {
264264
}
@@ -335,28 +335,28 @@ array(1) {
335335

336336
-- Iteration 39 --
337337

338-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
338+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
339339
bool(false)
340340
array(0) {
341341
}
342342

343343
-- Iteration 40 --
344344

345-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
345+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
346346
bool(false)
347347
array(0) {
348348
}
349349

350350
-- Iteration 41 --
351351

352-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
352+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
353353
bool(false)
354354
array(0) {
355355
}
356356

357357
-- Iteration 42 --
358358

359-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
359+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
360360
bool(false)
361361
array(0) {
362362
}
@@ -478,32 +478,32 @@ array(2) {
478478

479479
-- Iteration 48 --
480480

481-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
481+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
482482
bool(false)
483483
array(0) {
484484
}
485485

486486
-- Iteration 49 --
487487

488-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
488+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
489489
bool(false)
490490
array(0) {
491491
}
492492

493493
-- Iteration 50 --
494494

495-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
495+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
496496
bool(false)
497497
array(0) {
498498
}
499499

500500
-- Iteration 51 --
501501

502-
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s/session_decode_error2.php on line %d
502+
Warning: session_decode(): Failed to decode session object. Session has been destroyed in %s%esession_decode_error2.php on line %d
503503
bool(false)
504504
array(0) {
505505
}
506506

507-
Warning: session_destroy(): Trying to destroy uninitialized session in %s/session_decode_error2.php on line %d
507+
Warning: session_destroy(): Trying to destroy uninitialized session in %s%esession_decode_error2.php on line %d
508508
bool(false)
509509
Done

main/SAPI.c

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,6 @@
4343

4444
#include "rfc1867.h"
4545

46-
#ifdef PHP_WIN32
47-
#define STRCASECMP stricmp
48-
#else
49-
#define STRCASECMP strcasecmp
50-
#endif
51-
5246
#include "php_content_types.h"
5347

5448
#ifdef ZTS
@@ -778,7 +772,7 @@ SAPI_API int sapi_header_op(sapi_header_op_enum op, void *arg)
778772
colon_offset = strchr(header_line, ':');
779773
if (colon_offset) {
780774
*colon_offset = 0;
781-
if (!STRCASECMP(header_line, "Content-Type")) {
775+
if (!strcasecmp(header_line, "Content-Type")) {
782776
char *ptr = colon_offset+1, *mimetype = NULL, *newheader;
783777
size_t len = header_line_len - (ptr - header_line), newlen;
784778
while (*ptr == ' ') {
@@ -810,7 +804,7 @@ SAPI_API int sapi_header_op(sapi_header_op_enum op, void *arg)
810804
}
811805
efree(mimetype);
812806
SG(sapi_headers).send_default_content_type = 0;
813-
} else if (!STRCASECMP(header_line, "Content-Length")) {
807+
} else if (!strcasecmp(header_line, "Content-Length")) {
814808
/* Script is setting Content-length. The script cannot reasonably
815809
* know the size of the message body after compression, so it's best
816810
* do disable compression altogether. This contributes to making scripts
@@ -820,7 +814,7 @@ SAPI_API int sapi_header_op(sapi_header_op_enum op, void *arg)
820814
zend_alter_ini_entry_chars(key,
821815
"0", sizeof("0") - 1, PHP_INI_USER, PHP_INI_STAGE_RUNTIME);
822816
zend_string_release(key);
823-
} else if (!STRCASECMP(header_line, "Location")) {
817+
} else if (!strcasecmp(header_line, "Location")) {
824818
if ((SG(sapi_headers).http_response_code < 300 ||
825819
SG(sapi_headers).http_response_code > 399) &&
826820
SG(sapi_headers).http_response_code != 201) {
@@ -836,7 +830,7 @@ SAPI_API int sapi_header_op(sapi_header_op_enum op, void *arg)
836830
sapi_update_response_code(302);
837831
}
838832
}
839-
} else if (!STRCASECMP(header_line, "WWW-Authenticate")) { /* HTTP Authentication */
833+
} else if (!strcasecmp(header_line, "WWW-Authenticate")) { /* HTTP Authentication */
840834
sapi_update_response_code(401); /* authentication-required */
841835
}
842836
if (sapi_header.header==header_line) {

main/streams/plain_wrapper.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,11 @@ static size_t php_stdiop_write(php_stream *stream, const char *buf, size_t count
336336

337337
if (data->fd >= 0) {
338338
#ifdef PHP_WIN32
339-
int bytes_written = write(data->fd, buf, (unsigned int)count);
339+
int bytes_written;
340+
if (ZEND_SIZE_T_UINT_OVFL(count)) {
341+
count = UINT_MAX;
342+
}
343+
bytes_written = _write(data->fd, buf, (unsigned int)count);
340344
#else
341345
int bytes_written = write(data->fd, buf, count);
342346
#endif

0 commit comments

Comments
 (0)