Skip to content

Commit 1df8175

Browse files
committed
Convert fetch_resource warnings into TypeErrors
More type checks that are not part of zpp and should generate a TypeError in PHP 8.
1 parent 29d79dc commit 1df8175

File tree

88 files changed

+958
-889
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+958
-889
lines changed

Zend/zend_list.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ ZEND_API void *zend_fetch_resource2(zend_resource *res, const char *resource_typ
113113
if (resource_type_name) {
114114
const char *space;
115115
const char *class_name = get_active_class_name(&space);
116-
zend_error(E_WARNING, "%s%s%s(): supplied resource is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
116+
zend_type_error("%s%s%s(): supplied resource is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
117117
}
118118

119119
return NULL;
@@ -128,7 +128,7 @@ ZEND_API void *zend_fetch_resource(zend_resource *res, const char *resource_type
128128
if (resource_type_name) {
129129
const char *space;
130130
const char *class_name = get_active_class_name(&space);
131-
zend_error(E_WARNING, "%s%s%s(): supplied resource is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
131+
zend_type_error("%s%s%s(): supplied resource is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
132132
}
133133

134134
return NULL;
@@ -140,14 +140,14 @@ ZEND_API void *zend_fetch_resource_ex(zval *res, const char *resource_type_name,
140140
if (res == NULL) {
141141
if (resource_type_name) {
142142
class_name = get_active_class_name(&space);
143-
zend_error(E_WARNING, "%s%s%s(): no %s resource supplied", class_name, space, get_active_function_name(), resource_type_name);
143+
zend_type_error("%s%s%s(): no %s resource supplied", class_name, space, get_active_function_name(), resource_type_name);
144144
}
145145
return NULL;
146146
}
147147
if (Z_TYPE_P(res) != IS_RESOURCE) {
148148
if (resource_type_name) {
149149
class_name = get_active_class_name(&space);
150-
zend_error(E_WARNING, "%s%s%s(): supplied argument is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
150+
zend_type_error("%s%s%s(): supplied argument is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
151151
}
152152
return NULL;
153153
}
@@ -161,14 +161,14 @@ ZEND_API void *zend_fetch_resource2_ex(zval *res, const char *resource_type_name
161161
if (res == NULL) {
162162
if (resource_type_name) {
163163
class_name = get_active_class_name(&space);
164-
zend_error(E_WARNING, "%s%s%s(): no %s resource supplied", class_name, space, get_active_function_name(), resource_type_name);
164+
zend_type_error("%s%s%s(): no %s resource supplied", class_name, space, get_active_function_name(), resource_type_name);
165165
}
166166
return NULL;
167167
}
168168
if (Z_TYPE_P(res) != IS_RESOURCE) {
169169
if (resource_type_name) {
170170
class_name = get_active_class_name(&space);
171-
zend_error(E_WARNING, "%s%s%s(): supplied argument is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
171+
zend_type_error("%s%s%s(): supplied argument is not a valid %s resource", class_name, space, get_active_function_name(), resource_type_name);
172172
}
173173
return NULL;
174174
}

ext/bz2/tests/004.phpt

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,30 @@ var_dump(bzerrstr($fd2));
3636
var_dump(bzerrno($fd2));
3737

3838
bzclose($fd2);
39-
var_dump(bzread($fd2));
40-
var_dump(bzerror($fd2));
41-
var_dump(bzerrstr($fd2));
42-
var_dump(bzerrno($fd2));
39+
try {
40+
var_dump(bzread($fd2));
41+
} catch (TypeError $e) {
42+
echo $e->getMessage(), "\n";
43+
}
44+
try {
45+
var_dump(bzerror($fd2));
46+
} catch (TypeError $e) {
47+
echo $e->getMessage(), "\n";
48+
}
49+
try {
50+
var_dump(bzerrstr($fd2));
51+
} catch (TypeError $e) {
52+
echo $e->getMessage(), "\n";
53+
}
54+
try {
55+
var_dump(bzerrno($fd2));
56+
} catch (TypeError $e) {
57+
echo $e->getMessage(), "\n";
58+
}
4359

4460
echo "Done\n";
4561
?>
46-
--EXPECTF--
62+
--EXPECT--
4763
array(2) {
4864
["errno"]=>
4965
int(0)
@@ -96,16 +112,8 @@ array(2) {
96112
}
97113
string(10) "DATA_ERROR"
98114
int(-4)
99-
100-
Warning: bzread(): supplied resource is not a valid stream resource in %s on line %d
101-
bool(false)
102-
103-
Warning: bzerror(): supplied resource is not a valid stream resource in %s on line %d
104-
bool(false)
105-
106-
Warning: bzerrstr(): supplied resource is not a valid stream resource in %s on line %d
107-
bool(false)
108-
109-
Warning: bzerrno(): supplied resource is not a valid stream resource in %s on line %d
110-
bool(false)
115+
bzread(): supplied resource is not a valid stream resource
116+
bzerror(): supplied resource is not a valid stream resource
117+
bzerrstr(): supplied resource is not a valid stream resource
118+
bzerrno(): supplied resource is not a valid stream resource
111119
Done

ext/curl/tests/curl_multi_close_basic001.phpt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,17 @@ var_dump($cmh);
1111
$multi_close_result = curl_multi_close($cmh);
1212
var_dump($multi_close_result);
1313
var_dump($cmh);
14-
$bad_mh_close_result = curl_multi_close($cmh);
15-
var_dump($bad_mh_close_result);
14+
try {
15+
$bad_mh_close_result = curl_multi_close($cmh);
16+
var_dump($bad_mh_close_result);
17+
} catch (TypeError $e) {
18+
echo $e->getMessage(), "\n";
19+
}
1620
?>
1721
===DONE===
1822
--EXPECTF--
1923
resource(%d) of type (curl_multi)
2024
NULL
2125
resource(%d) of type (Unknown)
22-
23-
Warning: curl_multi_close(): supplied resource is not a valid cURL Multi Handle resource in %s on line %d
24-
bool(false)
26+
curl_multi_close(): supplied resource is not a valid cURL Multi Handle resource
2527
===DONE===

ext/fileinfo/tests/finfo_close_error.phpt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,17 @@ echo "*** Testing finfo_close() : error conditions ***\n";
1414

1515
echo "\n-- Testing finfo_close() function with wrong resource type --\n";
1616
$fp = fopen( __FILE__, 'r' );
17-
var_dump( finfo_close( $fp ) );
17+
try {
18+
var_dump( finfo_close( $fp ) );
19+
} catch (TypeError $e) {
20+
echo $e->getMessage(), "\n";
21+
}
1822

1923
?>
2024
===DONE===
21-
--EXPECTF--
25+
--EXPECT--
2226
*** Testing finfo_close() : error conditions ***
2327

2428
-- Testing finfo_close() function with wrong resource type --
25-
26-
Warning: finfo_close(): supplied resource is not a valid file_info resource in %s on line %d
27-
bool(false)
29+
finfo_close(): supplied resource is not a valid file_info resource
2830
===DONE===

0 commit comments

Comments
 (0)