@@ -1210,7 +1210,6 @@ static void apply_filter_to_stream(bool append, INTERNAL_FUNCTION_PARAMETERS)
12101210 zend_long read_write = 0 ;
12111211 zval * filterparams = NULL ;
12121212 php_stream_filter * filter = NULL ;
1213- int ret ;
12141213
12151214 ZEND_PARSE_PARAMETERS_START (2 , 4 )
12161215 PHP_Z_PARAM_STREAM (stream )
@@ -1241,13 +1240,13 @@ static void apply_filter_to_stream(bool append, INTERNAL_FUNCTION_PARAMETERS)
12411240 }
12421241
12431242 if (append ) {
1244- ret = php_stream_filter_append_ex (& stream -> readfilters , filter );
1243+ zend_result ret = php_stream_filter_append_ex (& stream -> readfilters , filter );
1244+ if (ret != SUCCESS ) {
1245+ php_stream_filter_remove (filter , 1 );
1246+ RETURN_FALSE ;
1247+ }
12451248 } else {
1246- ret = php_stream_filter_prepend_ex (& stream -> readfilters , filter );
1247- }
1248- if (ret != SUCCESS ) {
1249- php_stream_filter_remove (filter , 1 );
1250- RETURN_FALSE ;
1249+ php_stream_filter_prepend_ex (& stream -> readfilters , filter );
12511250 }
12521251 }
12531252
@@ -1258,13 +1257,13 @@ static void apply_filter_to_stream(bool append, INTERNAL_FUNCTION_PARAMETERS)
12581257 }
12591258
12601259 if (append ) {
1261- ret = php_stream_filter_append_ex (& stream -> writefilters , filter );
1260+ zend_result ret = php_stream_filter_append_ex (& stream -> writefilters , filter );
1261+ if (ret != SUCCESS ) {
1262+ php_stream_filter_remove (filter , 1 );
1263+ RETURN_FALSE ;
1264+ }
12621265 } else {
1263- ret = php_stream_filter_prepend_ex (& stream -> writefilters , filter );
1264- }
1265- if (ret != SUCCESS ) {
1266- php_stream_filter_remove (filter , 1 );
1267- RETURN_FALSE ;
1266+ php_stream_filter_prepend_ex (& stream -> writefilters , filter );
12681267 }
12691268 }
12701269
0 commit comments