Fix invalid regular expressions that throw warnings on PHP 7.3 (#6398)

pull/6407/head
Aleksander Machniak 6 years ago
parent aefdbdbfa1
commit 24e3977d74

@ -93,6 +93,7 @@ CHANGELOG Roundcube Webmail
- Fix PHP warnings on dummy QUOTA responses in Courier-IMAP 4.17.1 (#6374) - Fix PHP warnings on dummy QUOTA responses in Courier-IMAP 4.17.1 (#6374)
- Fix so fallback from BINARY to BODY FETCH is used also on [PARSE] errors in dovecot 2.3 (#6383) - Fix so fallback from BINARY to BODY FETCH is used also on [PARSE] errors in dovecot 2.3 (#6383)
- Enigma: Fix deleting keys with authentication subkeys (#6381) - Enigma: Fix deleting keys with authentication subkeys (#6381)
- Fix invalid regular expressions that throw warnings on PHP 7.3 (#6398)
RELEASE 1.3.7 RELEASE 1.3.7
------------- -------------

@ -525,14 +525,14 @@ class rcube_vcard
{ {
// convert Apple X-ABRELATEDNAMES into X-* fields for better compatibility // convert Apple X-ABRELATEDNAMES into X-* fields for better compatibility
$vcard = preg_replace_callback( $vcard = preg_replace_callback(
'/item(\d+)\.(X-ABRELATEDNAMES)([^:]*?):(.*?)item\1.X-ABLabel:(?:_\$!<)?([\w-() ]*)(?:>!\$_)?./s', '/item(\d+)\.(X-ABRELATEDNAMES)([^:]*?):(.*?)item\1.X-ABLabel:(?:_\$!<)?([\w() -]*)(?:>!\$_)?./s',
array('self', 'x_abrelatednames_callback'), array('self', 'x_abrelatednames_callback'),
$vcard); $vcard);
// Cleanup // Cleanup
$vcard = preg_replace(array( $vcard = preg_replace(array(
// convert special types (like Skype) to normal type='skype' classes with this simple regex ;) // convert special types (like Skype) to normal type='skype' classes with this simple regex ;)
'/item(\d+)\.(TEL|EMAIL|URL)([^:]*?):(.*?)item\1.X-ABLabel:(?:_\$!<)?([\w-() ]*)(?:>!\$_)?./si', '/item(\d+)\.(TEL|EMAIL|URL)([^:]*?):(.*?)item\1.X-ABLabel:(?:_\$!<)?([\w() -]*)(?:>!\$_)?./si',
'/^item\d*\.X-AB.*$/mi', // remove cruft like item1.X-AB* '/^item\d*\.X-AB.*$/mi', // remove cruft like item1.X-AB*
'/^item\d*\./mi', // remove item1.ADR instead of ADR '/^item\d*\./mi', // remove item1.ADR instead of ADR
'/\n+/', // remove empty lines '/\n+/', // remove empty lines

Loading…
Cancel
Save