You need a better function, your paths are broken – see this answer for reference:
function wpse_16722_type_upload_dir( $args ) {
if ( ! empty( $_REQUEST['post_id'] ) && $post_id = absint( $_REQUEST['post_id'] ) ) {
if ( $post = get_post( $post_id ) ) {
if ( $post->post_type !== 'attachment' ) {
$args['subdir'] = "/$post->post_type"; // Must be preceded with slash
$args['path'] = $args['basedir'] . $args['subdir'];
$args['url'] = $args['baseurl'] . $args['subdir'];
}
}
}
return $args;
}