È stato rilasciato PCRE2 10.37, una libreria che offre un insieme di funzioni in linguaggio C per l'implementazione di espressioni regolari e strumenti di pattern matching, simili per sintassi e semantica alle espressioni regolari di Perl 5. PCRE2 rappresenta una revisione della libreria originale PCRE con un'API non compatibile e funzionalità estese. La libreria è sviluppata dai creatori del server di posta Exim e distribuita sotto licenza BSD.
Principali modifiche:
- Nella libreria libpcre2-posix sono stati rimossi i simboli delle funzioni POSIX, come regcomp, poiché causavano problemi ad alcune applicazioni. La patch pcre2-symbol-clash.patch è stata accettata nel progetto originale. È stata inoltre aggiornata la versione ABI di questa libreria.
- È stato corretto un problema che potrebbe portare a dereferenziare un puntatore nullo.
- Due errori sono stati corretti nella gestione di numeri molto grandi, che causavano un comportamento non conforme al motore delle espressioni regolari di Perl. Ad esempio, l'espressione «/\214748364/» portava a un overflow anziché essere trattata come il numero ottale «\214» con i seguenti caratteri «748364».
- È stato corretto un comportamento errato nell'uso dell'operatore «\K» nei modelli.
- Nel JIT è stata ripristinata l'ottimizzazione per le operazioni di ripetizione dei caratteri.
Fonte: opennet.ru
