Make WordPress Core

Opened 14 years ago

Closed 14 years ago

#23201 closed defect (bug) (duplicate)

post-template.php calls in_array() without checking args

Reported by: gcrumb Owned by:
Priority: normal Milestone:
Component: Template Version:
Severity: normal Keywords: reporter-feedback
Cc: Focuses:

Description

Line 1039 of wp-includes/post-template looks like:

if ( in_array( $page->ID, $_current_page->ancestors ) )

... but in some circumstances, $_current_page->ancestors is null, which results in an error being thrown. I suggest testing the variable before passing it:

if ( gettype($_current_page->ancestors) === 'array' && in_array( $page->ID, $_current_page->ancestors ) )

Change History (4)

#1 @kovshenin
14 years ago

  • Cc kovshenin added
  • Keywords reporter-feedback added; has-patch removed

Hey there!

in some circumstances, $_current_page->ancestors is null

Can you elaborate on that? Under what circumstances will ancestors be null? Also, you can use is_array rather than gettype. Thanks!

#3 @johnbillion
14 years ago

I believe this was fixed in r23213.

#4 @SergeyBiryukov
14 years ago

  • Milestone Awaiting Review
  • Resolution → duplicate
  • Status new → closed

Duplicate of #22882.

Note: See TracTickets for help on using tickets.