WordPress.org

Make WordPress Core

Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#7871 closed defect (bug) (fixed)

Using stripslashes malforms arrays for post metadata

Reported by: jacobsantos Owned by: jacobsantos
Milestone: 2.7 Priority: highest omg bbq
Severity: blocker Version: 2.7
Component: General Keywords: has-patch tested commit
Focuses: Cc:

Description

In the database, the gallery has _wp_attachment_metadata set as "Array" this means that somewhere in the execution path, the meta data value was converted to a string. Following the execution has found that stripslashes() is the cause of the malformed array meta data values.

The patch solves this problem and keeps the stripslashes for strings. The recommendation is to remove the requirement that strings have slashes added in order to simplify the code.

Attachments (1)

7871.r9124.diff (4.8 KB) - added by jacobsantos 10 years ago.
Fix for malformed array in database based off of r9124

Download all attachments as: .zip

Change History (9)

@jacobsantos
10 years ago

Fix for malformed array in database based off of r9124

#1 @jacobsantos
10 years ago

  • Summary changed from Using stripslashes malforms arrays to Using stripslashes malforms arrays for post metadata

#2 @jacobsantos
10 years ago

  • Owner changed from anonymous to jacobsantos

#3 @jacobsantos
10 years ago

  • Status changed from new to assigned

#4 @ShaneF
10 years ago

  • Keywords commit added
  • Version set to 2.7

This is a major error. It even fixes problems I was having in #7607.

#5 @jacobsantos
10 years ago

  • Keywords has-patch tested added

#6 @azaozz
10 years ago

Why not just use stripslashes_deep(). It works for both arrays and strings.

#7 @azaozz
10 years ago

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [9129]) Fix stripslashes for post metadata, phpDoc updates for media.php, props jacobsantos, fixes #7871

#8 @ShaneF
10 years ago

I am going to test this later to make sure.

Note: See TracTickets for help on using tickets.