#ifdef HAVE_MING_ZLIB
zval **zlimit = NULL;
int limit = -1;
+ int oldval = INT_MIN;
+ long out;
if (zend_get_parameters_ex(1, &zlimit) == FAILURE) {
WRONG_PARAM_COUNT;
php_error(E_WARNING,"compression level must be within 0..9");
RETURN_FALSE;
}
-#endif
-
-#ifdef HAVE_NEW_MING
- RETURN_LONG(SWFMovie_output(movie, &phpByteOutputMethod, NULL, limit));
+ oldval = Ming_setSWFCompression(limit);
+ out = SWFMovie_output(movie, &phpByteOutputMethod, NULL);
+ if (oldval >= -1 && oldval <= 9)
+ Ming_setSWFCompression(oldval);
+
+ RETURN_LONG(out);
#else
RETURN_LONG(SWFMovie_output(movie, &phpByteOutputMethod, NULL));
#endif
+
}
/* }}} */
#ifdef HAVE_MING_ZLIB
zval **zlimit = NULL;
int limit = -1;
+ int oldval = INT_MIN;
+ long out;
#endif
SWFMovie movie = getMovie(getThis() TSRMLS_CC);
php_stream *what;
php_error(E_WARNING,"compression level must be within 0..9");
RETURN_FALSE;
}
+ oldval = Ming_setSWFCompression(limit);
#endif
break;
default:
}
ZEND_FETCH_RESOURCE(what, php_stream *, x, -1,"File-Handle",php_file_le_stream());
-#ifdef HAVE_NEW_MING
- RETURN_LONG(SWFMovie_output(movie, &phpStreamOutputMethod, what, limit));
+#ifdef HAVE_MING_ZLIB
+ out = SWFMovie_output(getMovie(getThis() TSRMLS_CC), &phpStreamOutputMethod, what);
+ if (oldval >= -1 && oldval <=9)
+ Ming_setSWFCompression(oldval);
+ RETURN_LONG(out);
#else
RETURN_LONG(SWFMovie_output(movie, &phpStreamOutputMethod, what));
#endif
#ifdef HAVE_MING_ZLIB
zval **zlimit = NULL;
int limit = -1;
+ int oldval = INT_MIN;
#endif
long retval;
php_stream *stream;
php_error(E_WARNING,"compression level must be within 0..9");
RETURN_FALSE;
}
+ oldval = Ming_setSWFCompression(limit);
#endif
break;
default:
if (Z_TYPE_PP(x) == IS_RESOURCE) {
ZEND_FETCH_RESOURCE(stream, php_stream *, x, -1,"File-Handle",php_file_le_stream());
-#ifdef HAVE_NEW_MING
- RETURN_LONG(SWFMovie_output(getMovie(getThis() TSRMLS_CC), &phpStreamOutputMethod, stream, limit));
-#else
RETURN_LONG(SWFMovie_output(getMovie(getThis() TSRMLS_CC), &phpStreamOutputMethod, stream));
-#endif
}
convert_to_string_ex(x);
RETURN_FALSE;
}
-#ifdef HAVE_NEW_MING
- retval = SWFMovie_output(getMovie(getThis() TSRMLS_CC), &phpStreamOutputMethod, (void *)stream, limit);
-#else
retval = SWFMovie_output(getMovie(getThis() TSRMLS_CC), &phpStreamOutputMethod, (void *)stream);
-#endif
php_stream_close(stream);
+ if(oldval >= -1 && oldval <=9)
+ Ming_setSWFCompression(oldval);
+
RETURN_LONG(retval);
}
/* }}} */