#include "Desk.Error2.h"


static int	VFn( void* reference, const char* format, va_list va)
	{
	Desk_os_error*	oserror = (Desk_os_error*) reference;
	return vsprintf( oserror->errmess, format, va);
	}

void	Desk_Error2_ConvertToOS( Desk_os_error* oserror, Desk_error2_block* error2)
	{
	if ( error2->type == Desk_error2_type_OSERROR)	*oserror = *error2->data.oserror;
	else	{
		oserror->errnum = 0;
		Desk_Error2_VDescribe( VFn, oserror, error2);
		}
	}
