WordPress.org

Make WordPress Core

Opened 7 months ago

Last modified 7 months ago

#48528 new defect (bug)

warning in wp-includes/class.wp-scripts.php:454: Cannot assign an empty string to a string offset

Reported by: dpacks Owned by:
Milestone: Awaiting Review Priority: normal
Severity: normal Version: 5.2.4
Component: Script Loader Keywords:
Focuses: Cc:

Description

When sending an empty value to wp_localize_script() a warning is issued stating:
Cannot assign an empty string to a string offset

How to reproduce:
call wp_localize_script() like this:

<?php
wp_localize_script('my_valid_handle', 'my_variable_name', '');

Analysis:
Sending an empty value for a variable is perfectly legit so there is no problem with the input.
The problem lies here: The code at line 449 treats $l10n forcefully as an array but the code at 454 wrongfully assumes $l10n is an array without checking.

Change History (1)

#1 @nofearinc
7 months ago

The wp_localize_script docs treat $l10n as an array, which is why an empty string is not a valid default value. I'm not sure what's the use case for an empty value in general, but have you tested an empty array instead?

Note: See TracTickets for help on using tickets.