diff --git a/wp-includes/wp-db.php b/wp-includes/wp-db.php index 366c32e57..9ecbae871 100644 --- a/wp-includes/wp-db.php +++ b/wp-includes/wp-db.php @@ -960,19 +960,17 @@ class wpdb { $bt = debug_backtrace(); $caller = ''; - foreach ( (array) $bt as $trace ) { - if ( @$trace['class'] == __CLASS__ ) + $bt = array_reverse( $bt ); + foreach ( (array) $bt as $call ) { + if ( @$call['class'] == __CLASS__ ) continue; - elseif ( strtolower(@$trace['function']) == 'call_user_func_array' ) - continue; - elseif ( strtolower(@$trace['function']) == 'apply_filters' ) - continue; - elseif ( strtolower(@$trace['function']) == 'do_action' ) - continue; - - $caller = $trace['function']; - break; + $function = $call['function']; + if ( isset( $call['class'] ) ) + $function = $call['class'] . "->$function"; + $caller[] = $function; } + $caller = join( ', ', $caller ); + return $caller; }