Show the most recent post for an author on the author page

Basic debugging…

$current_author = get_query_var('author');
var_dump($current_author);

… would reveal that $current_author is a string, not an object. The problem is that you are trying to use the string as an object in the query.

get_posts( 'author=".$current_author->id."&posts_per_page=1&order=DESC&orderby=post_date' );

Change $current_author->id to $current_author and the query works.

$author_posts =  get_posts( 'author=".$current_author."&posts_per_page=1&order=DESC&orderby=post_date' );