PHP5.3 returns 'true' for isset($variables['path']['path']) on line 622, even when $variables['path'] is a string ($variables['path']['path'] being evaluated as the first character in the string).

This causes a fatal error in PHP < 5.4 when the function l() is passed a string rather than an array as expected in line 626.

To fix the issue we just need to check that $variables['path'] is an array rather than a string.

Comments

David Sparks’s picture

StatusFileSize
new516 bytes
David Sparks’s picture

Issue summary: View changes
David Sparks’s picture

It seems the same problem also exists in 7.x-2.x. Creating a new issue there.

legolasbo’s picture

Status: Active » Needs review

Patch for the 2.x branch is already committed. Let's review and commit this one too?

attiks’s picture

Assigned: Unassigned » jelle_s
jelle_s’s picture

Status: Needs review » Fixed

Fixed in latest dev. Thanks for the patch!

  • Jelle_S committed fc3bf2d on 7.x-1.x authored by David Sparks
    Issue #2356843 by David Sparks: PHP5.3 fatal error when $variables['path...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.