フリーランスのためのネットビジネス専門学校 ネットで独立開業を目指す人を応援
フリーランスのためのネットビジネス専門学校 ネットで独立開業を目指す人を応援

dockerコンテナでPHPからのメール送信とhttpsに対応する

今日は ext/xml のテストコードの改善、Windows での ftruncate() のバグ修正があった!

地味に 3 ヶ月続いており、もう 3 ヶ月くらい続けると心の故郷で古くから言い伝えられてきた習わし通り「半年 ROM れ」をやったことになる奴。

2018-10-31

cmb69: Fix and improve test case

  • github.com/php/php-src/commit/2816a3fdfa23cf0711251b8d1e9ffad3d281ea96
  • [7.3~]
  • ext/xml のテストコードをリファクタリング
  • 誤った DOCTYPE 宣言を修正
  • 最後の閉じタグの不一致がわざとであることのコメントでの明示
  • EXPECT でマジックナンバーを使っているのが分かり辛かったので定数を使って明確化

weltling: Fixed bug #77081 ftruncate() changes seek pointer in c mode

  • github.com/php/php-src/commit/8827cc34cf8c77828330182ee1e6d0b9438d489c
  • fopen() で c を指定したファイルポインタに対して ftruncate() をかけると、シーク位置が変なところへいく問題の修正
  • 元々 Windows 環境で ftruncate() が 2GB 以上のサイズのファイルで失敗する、という別の問題があった
  • これを解決するため、(PHP 側の)ftruncate() で指定される終点へ SetFilePointerEx() でファイルポインタを移動して SetEndOfFile() をかける修正が入った
  • が、これにより ftruncate() 呼び出しでファイルポインタが移動してしまう新たな問題が生まれ、ファイルポインタの古い位置を覚えておいて復帰するよう別の修正が入った
  • が、これが実際にはファイルポインタの古い位置でなく元々のサイズでのファイルの終端位置へ復帰するような挙動だったため、ちゃんと古いファイルポインタの位置へ復帰するよう修正

weltling: Fix error condition

[紹介元] PHPタグが付けられた新着投稿 – Qiita dockerコンテナでPHPからのメール送信とhttpsに対応する

コメント

記事に戻る

コメントを残す