bug79149.phpt 855 B

1234567891011121314151617181920212223242526272829
  1. --TEST--
  2. Bug #79149 (SEGV in mb_convert_encoding with non-string encodings)
  3. --EXTENSIONS--
  4. mbstring
  5. --FILE--
  6. <?php
  7. try {
  8. var_dump(mb_convert_encoding("", "UTF-8", [0]));
  9. } catch (\ValueError $e) {
  10. echo $e->getMessage() . \PHP_EOL;
  11. }
  12. try {
  13. var_dump(mb_convert_encoding('foo', 'UTF-8', array(['bar'], ['baz'])));
  14. } catch (\ValueError $e) {
  15. echo $e->getMessage() . \PHP_EOL;
  16. }
  17. try {
  18. var_dump(mb_convert_encoding('foo', 'UTF-8', array("foo\0bar")));
  19. } catch (\ValueError $e) {
  20. echo $e->getMessage() . \PHP_EOL;
  21. }
  22. ?>
  23. --EXPECTF--
  24. mb_convert_encoding(): Argument #3 ($from_encoding) contains invalid encoding "0"
  25. Warning: Array to string conversion in %s on line %d
  26. mb_convert_encoding(): Argument #3 ($from_encoding) contains invalid encoding "Array"
  27. mb_convert_encoding(): Argument #3 ($from_encoding) contains invalid encoding "foo"