Index: wp-includes/post-template.php
===================================================================
--- wp-includes/post-template.php	(revision 9829)
+++ wp-includes/post-template.php	(working copy)
@@ -687,9 +687,9 @@
  * @since 2.1.0
  * @see Walker_Page::walk() for parameters and return description.
  */
-function walk_page_tree() {
+function walk_page_tree($pages, $depth, $current_page, $r) {
 	$walker = new Walker_Page;
-	$args = func_get_args();
+	$args = array($pages, $depth, $r, $current_page);
 	return call_user_func_array(array(&$walker, 'walk'), $args);
 }
 
Index: wp-includes/classes.php
===================================================================
--- wp-includes/classes.php	(revision 9829)
+++ wp-includes/classes.php	(working copy)
@@ -822,7 +822,7 @@
 		$id_field = $this->db_fields['id'];
 
 		//display this element
-		if ( ! empty( $args[0] ) )
+		if ( is_array( $args[0] ) )
 			$args[0]['has_children'] = ! empty( $children_elements[$element->$id_field] );
 		$cb_args = array_merge( array(&$output, $element, $depth), $args);
 		call_user_func_array(array(&$this, 'start_el'), $cb_args);
@@ -1152,7 +1152,7 @@
 	 * @param int $current_page Page ID.
 	 * @param array $args
 	 */
-	function start_el(&$output, $page, $depth, $current_page, $args) {
+	function start_el(&$output, $page, $depth, $args, $current_page) {
 		if ( $depth )
 			$indent = str_repeat("\t", $depth);
 		else
