+1  A: 

Actually, I think you've found a bug in WordPress. The line of code that's throwing the error is this:

if ( ( is_array( $content_func ) && ! empty( $content_func[1] ) && 0 === strpos( (string) $content_func[1], 'media' ) ) || 0 === strpos( $content_func, 'media' ) )

If you look at that, the second scenario assumes $content_func is a string and passes it through strpos

Maybe something like

if ( ( is_array( $content_func ) && ! empty( $content_func[1] ) && 0 === strpos( (string) $content_func[1], 'media' ) ) || ( is_string( $content_func ) && 0 === strpos( (string)$content_func, 'media' ) ) )

Would work better.

John P Bloch