การเปิดตัวไลบรารี PCRE2 10.37

ไลบรารี PCRE2 เวอร์ชัน 10.37 ได้รับการเผยแพร่แล้ว โดยมีชุดฟังก์ชันในภาษา C พร้อมด้วยการใช้นิพจน์ทั่วไปและเครื่องมือจับคู่รูปแบบ ซึ่งคล้ายคลึงกันในด้านไวยากรณ์และความหมายกับนิพจน์ทั่วไปของภาษา Perl 5 PCRE2 เป็นการใช้งานที่ปรับปรุงใหม่ ของไลบรารี PCRE ดั้งเดิมที่มี API ที่เข้ากันไม่ได้และความสามารถขั้นสูง ไลบรารีนี้ก่อตั้งโดยนักพัฒนาเซิร์ฟเวอร์อีเมล Exim และเผยแพร่ภายใต้ใบอนุญาต BSD

การเปลี่ยนแปลงที่สำคัญ:

  • สัญลักษณ์ฟังก์ชัน POSIX เช่น regcomp ถูกลบออกจาก libpcre2-posix เนื่องจากทำให้เกิดปัญหากับบางแอปพลิเคชัน แพตช์ pcre2-สัญลักษณ์-clash.patch ได้รับการยอมรับในอัปสตรีมแล้ว เวอร์ชัน ABI ของไลบรารีนี้ได้รับการอัปเดตเช่นกัน
  • แก้ไขปัญหาที่อาจนำไปสู่การยกเลิกการอ้างอิงตัวชี้โมฆะ
  • แก้ไขข้อบกพร่องสองประการเมื่อจัดการกับตัวเลขจำนวนมากซึ่งส่งผลให้เกิดพฤติกรรมที่ไม่สอดคล้องกับเอ็นจิ้นนิพจน์ทั่วไปของ Perl ตัวอย่างเช่น นิพจน์ "/\214748364/" ส่งผลให้เกิดการโอเวอร์โฟลว์แทนที่จะถือเป็นเลขฐานแปด "\214" ตามด้วยอักขระ "748364"
  • แก้ไขพฤติกรรมที่ไม่ถูกต้องเมื่อใช้การดำเนินการ "\K" ในเทมเพลต
  • การเพิ่มประสิทธิภาพการดำเนินการซ้ำอักขระได้คืนสู่ JIT แล้ว

ที่มา: opennet.ru

เพิ่มความคิดเห็น