2018-09-27
petk: Remove unused and untouched ext/libmbfl/tests files
- https://github.com/php/php-src/commit/a4102e1bc31fcc2f77610d8430fbf90f7a8b6206
- ext/mbstring の libmbfl/tests を削除
- libmbfl は fork して php-src へバンドルされてる奴だけれど、テストは phpt を使っていて元々の tests は使われていなかった
petk: [ci skip] Sync licenses
- https://github.com/php/php-src/commit/6b324bf845302705d062bfb410552a9b95200562
- バイナリ再配布にあたって考慮が必要な各ファイルのライセンスを記したファイル、README.REDIST.BINS を現状にあわせ修正
- ext/zip/lib はバンドルされなくなったので削除
- libzip から抜き出されている部分を含む ext/phar/zip.c のための記述が必要なので追加
petk: Rename ext/snmp/tests/bigtest.sh to bigtest
- https://github.com/php/php-src/commit/390b74ee34ac567cab7d6b07b130a16504bbc43c
- ext/snmp の ext/snmp/tests/bigtest.sh を ext/snmp/tests/bigtest へリネーム
- テスト実行時自動生成されるスクリプトファイルで .gitignore により **/tests/**/*.sh が指定されているものがあり、これとの区別用
nikic: Fix missing access errors for guarded properties
- https://github.com/php/php-src/commit/5a4cb3edde32a6cc4bce6439abea21f3e6b4bbf6
- マジックメソッド経由で本来アクセスできないスコープのプロパティへアクセスしようとする際に例外を投げるよう修正
- 元々は何もしないという挙動だったりした
- が、それではマジックメソッドでない場合の挙動と整合性がとれない
- 存在しないプロパティへアクセスしようとすると
__get()
や__set()
が呼び出されるが、マジックメソッドの再帰的な呼び出しは実装により防がれており、起きた場合はマジックメソッドが存在しないよう振る舞う、という挙動になっている - 修正自体はこのチェックで呼び出しが防がれた際、アクセス違反を検知して例外を投げるようにした、というもの