Skip to content

Commit 41b096b

Browse files
committed
Promote a few forgotten warnings to exceptions
Closes GH-6211
1 parent 166178a commit 41b096b

18 files changed

+92
-72
lines changed

ext/date/php_date.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4501,8 +4501,8 @@ static void php_do_date_sunrise_sunset(INTERNAL_FUNCTION_PARAMETERS, int calc_su
45014501
retformat != SUNFUNCS_RET_STRING &&
45024502
retformat != SUNFUNCS_RET_DOUBLE)
45034503
{
4504-
php_error_docref(NULL, E_WARNING, "Wrong return format given, pick one of SUNFUNCS_RET_TIMESTAMP, SUNFUNCS_RET_STRING or SUNFUNCS_RET_DOUBLE");
4505-
RETURN_FALSE;
4504+
zend_argument_value_error(2, "must be one of SUNFUNCS_RET_TIMESTAMP, SUNFUNCS_RET_STRING, or SUNFUNCS_RET_DOUBLE");
4505+
RETURN_THROWS();
45064506
}
45074507
altitude = 90 - zenith;
45084508

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
--TEST--
2+
Test error condition of date_sunrise() and date_sunset()
3+
--FILE--
4+
<?php
5+
6+
try {
7+
date_sunrise(time(), 3);
8+
} catch (ValueError $exception) {
9+
echo $exception->getMessage() . "\n";
10+
}
11+
12+
try {
13+
date_sunset(time(), 4);
14+
} catch (ValueError $exception) {
15+
echo $exception->getMessage() . "\n";
16+
}
17+
18+
?>
19+
--EXPECT--
20+
date_sunrise(): Argument #2 ($returnFormat) must be one of SUNFUNCS_RET_TIMESTAMP, SUNFUNCS_RET_STRING, or SUNFUNCS_RET_DOUBLE
21+
date_sunset(): Argument #2 ($returnFormat) must be one of SUNFUNCS_RET_TIMESTAMP, SUNFUNCS_RET_STRING, or SUNFUNCS_RET_DOUBLE

ext/fileinfo/fileinfo.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@ static inline finfo_object *php_finfo_fetch_object(zend_object *obj) {
7171
finfo_object *obj = Z_FINFO_P(object); \
7272
finfo = obj->ptr; \
7373
if (!finfo) { \
74-
php_error_docref(NULL, E_WARNING, "The invalid fileinfo object."); \
75-
RETURN_FALSE; \
74+
zend_throw_error(NULL, "Invalid finfo object"); \
75+
RETURN_THROWS(); \
7676
} \
7777
}
7878

@@ -270,7 +270,7 @@ PHP_FUNCTION(finfo_open)
270270
}
271271

272272
if (magic_load(finfo->magic, file) == -1) {
273-
php_error_docref(NULL, E_WARNING, "Failed to load magic database at '%s'.", file);
273+
php_error_docref(NULL, E_WARNING, "Failed to load magic database at \"%s\"", file);
274274
magic_close(finfo->magic);
275275
efree(finfo);
276276
if (object) {
@@ -382,7 +382,7 @@ static void _php_finfo_get_type(INTERNAL_FUNCTION_PARAMETERS, int mode, int mime
382382

383383
magic = magic_open(MAGIC_MIME_TYPE);
384384
if (magic_load(magic, NULL) == -1) {
385-
php_error_docref(NULL, E_WARNING, "Failed to load magic database.");
385+
php_error_docref(NULL, E_WARNING, "Failed to load magic database");
386386
goto common;
387387
}
388388
} else if (object) {

ext/fileinfo/tests/bug61964-mb.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,5 @@ Warning: finfo_open(): offset `a' invalid in %sbug61964-mb.php on line %d
5858

5959
Warning: finfo_open(): offset `b' invalid in %sbug61964-mb.php on line %d
6060

61-
Warning: finfo_open(): Failed to load magic database at '%sbug61964-mb'. in %sbug61964-mb.php on line %d
61+
Warning: finfo_open(): Failed to load magic database at "%sbug61964-mb" in %sbug61964-mb.php on line %d
6262
DONE: testing dir with files

ext/fileinfo/tests/bug61964.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,5 @@ Warning: finfo_open(): offset `a' invalid in %sbug61964.php on line %d
5858

5959
Warning: finfo_open(): offset `b' invalid in %sbug61964.php on line %d
6060

61-
Warning: finfo_open(): Failed to load magic database at '%sbug61964'. in %sbug61964.php on line %d
61+
Warning: finfo_open(): Failed to load magic database at "%sbug61964" in %sbug61964.php on line %d
6262
DONE: testing dir with files

ext/fileinfo/tests/bug68996.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@ finfo_open(FILEINFO_MIME_TYPE, "\xfc\x63");
1414
<br />
1515
<b>Warning</b>: finfo_open(%s�c): Failed to open stream: No such file or directory in <b>%sbug68996.php</b> on line <b>%d</b><br />
1616
<br />
17-
<b>Warning</b>: finfo_open(): Failed to load magic database at '%s�c'. in <b>%sbug68996.php</b> on line <b>%d</b><br />
17+
<b>Warning</b>: finfo_open(): Failed to load magic database at &quot;%s�c&quot; in <b>%s</b> on line <b>%d</b><br />

ext/fileinfo/tests/bug71527-mb.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@ USE_ZEND_ALLOC=0
1212
var_dump($finfo);
1313
?>
1414
--EXPECTF--
15-
Warning: finfo_open(): Failed to load magic database at '%sbug71527私はガラスを食べられます.magic'. in %sbug71527-mb.php on line %d
15+
Warning: finfo_open(): Failed to load magic database at "%sbug71527私はガラスを食べられます.magic" in %sbug71527-mb.php on line %d
1616
bool(false)

ext/fileinfo/tests/bug71527.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@ USE_ZEND_ALLOC=0
1212
var_dump($finfo);
1313
?>
1414
--EXPECTF--
15-
Warning: finfo_open(): Failed to load magic database at '%sbug71527.magic'. in %sbug71527.php on line %d
15+
Warning: finfo_open(): Failed to load magic database at "%sbug71527.magic" in %sbug71527.php on line %d
1616
bool(false)

ext/fileinfo/tests/finfo_open_001.phpt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,19 @@ Warning: finfo_open(%s123): Failed to open stream: No such file or directory in
2727

2828
Warning: finfo_open(%s123): Failed to open stream: No such file or directory in %s on line %d
2929

30-
Warning: finfo_open(): Failed to load magic database at '%s123'. in %s on line %d
30+
Warning: finfo_open(): Failed to load magic database at "%s123" in %s on line %d
3131
bool(false)
3232

3333
Warning: finfo_open(%s1): Failed to open stream: No such file or directory in %s on line %d
3434

3535
Warning: finfo_open(%s1): Failed to open stream: No such file or directory in %s on line %d
3636

37-
Warning: finfo_open(): Failed to load magic database at '%s1'. in %s on line %d
37+
Warning: finfo_open(): Failed to load magic database at "%s1" in %s on line %d
3838
bool(false)
3939

4040
Warning: finfo_open(%sinexistent): Failed to open stream: No such file or directory in %s on line %d
4141

4242
Warning: finfo_open(%sinexistent): Failed to open stream: No such file or directory in %s on line %d
4343

44-
Warning: finfo_open(): Failed to load magic database at '%sinexistent'. in %s on line %d
44+
Warning: finfo_open(): Failed to load magic database at "%sinexistent" in %s on line %d
4545
bool(false)

ext/fileinfo/tests/finfo_open_error.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Warning: finfo_open(%sfoobarfile): Failed to open stream: No such file or direct
3131

3232
Warning: finfo_open(%sfoobarfile): Failed to open stream: No such file or directory in %sfinfo_open_error.php on line %d
3333

34-
Warning: finfo_open(): Failed to load magic database at '%sfoobarfile'. in %sfinfo_open_error.php on line %d
34+
Warning: finfo_open(): Failed to load magic database at "%sfoobarfile" in %sfinfo_open_error.php on line %d
3535
bool(false)
3636

3737
Warning: finfo_open(): using regular magic file `%smagic' in %sfinfo_open_error.php on line %d

0 commit comments

Comments
 (0)