msvcrt: Added _set_fmode and _get_fmode implementation.

This commit is contained in:
Piotr Caban 2012-12-21 13:37:47 +01:00 committed by Alexandre Julliard
parent 4289bd44de
commit dfca87db71
5 changed files with 33 additions and 8 deletions

View File

@ -868,7 +868,7 @@
@ cdecl _get_doserrno(ptr) msvcrt._get_doserrno
@ stub _get_dstbias
@ cdecl _get_errno(ptr) msvcrt._get_errno
@ stub _get_fmode
@ cdecl _get_fmode(ptr) msvcrt._get_fmode
@ cdecl _get_heap_handle() msvcrt._get_heap_handle
@ cdecl _get_invalid_parameter_handler() msvcrt._get_invalid_parameter_handler
@ cdecl _get_osfhandle(long) msvcrt._get_osfhandle
@ -1266,7 +1266,7 @@
@ cdecl _set_doserrno(long) msvcrt._set_doserrno
@ cdecl _set_errno(long) msvcrt._set_errno
@ cdecl _set_error_mode(long) msvcrt._set_error_mode
@ stub _set_fmode
@ cdecl _set_fmode(long) msvcrt._set_fmode
@ cdecl _set_invalid_parameter_handler(ptr) msvcrt._set_invalid_parameter_handler
@ stub _set_malloc_crt_max_wait
@ stub _set_output_format

View File

@ -523,7 +523,7 @@
@ cdecl _get_doserrno(ptr) msvcrt._get_doserrno
@ stub _get_dstbias
@ cdecl _get_errno(ptr) msvcrt._get_errno
@ stub _get_fmode
@ cdecl _get_fmode(ptr) msvcrt._get_fmode
@ cdecl _get_heap_handle() msvcrt._get_heap_handle
@ cdecl _get_invalid_parameter_handler() msvcrt._get_invalid_parameter_handler
@ cdecl _get_osfhandle(long) msvcrt._get_osfhandle
@ -928,7 +928,7 @@
@ cdecl _set_doserrno(long) msvcrt._set_doserrno
@ cdecl _set_errno(long) msvcrt._set_errno
@ cdecl _set_error_mode(long) msvcrt._set_error_mode
@ stub _set_fmode
@ cdecl _set_fmode(long) msvcrt._set_fmode
@ cdecl _set_invalid_parameter_handler(ptr) msvcrt._set_invalid_parameter_handler
@ stub _set_malloc_crt_max_wait
@ stub _set_output_format

View File

@ -518,7 +518,7 @@
@ cdecl _get_doserrno(ptr) msvcrt._get_doserrno
@ stub _get_dstbias
@ cdecl _get_errno(ptr) msvcrt._get_errno
@ stub _get_fmode
@ cdecl _get_fmode(ptr) msvcrt._get_fmode
@ cdecl _get_heap_handle() msvcrt._get_heap_handle
@ cdecl _get_invalid_parameter_handler() msvcrt._get_invalid_parameter_handler
@ cdecl _get_osfhandle(long) msvcrt._get_osfhandle
@ -921,7 +921,7 @@
@ cdecl _set_doserrno(long) msvcrt._set_doserrno
@ cdecl _set_errno(long) msvcrt._set_errno
@ cdecl _set_error_mode(long) msvcrt._set_error_mode
@ stub _set_fmode
@ cdecl _set_fmode(long) msvcrt._set_fmode
@ cdecl _set_invalid_parameter_handler(ptr) msvcrt._set_invalid_parameter_handler
@ stub _set_malloc_crt_max_wait
@ stub _set_output_format

View File

@ -185,6 +185,31 @@ int CDECL _get_wpgmptr(WCHAR** p)
*/
unsigned int* CDECL __p__fmode(void) { return &MSVCRT__fmode; }
/***********************************************************************
* _set_fmode (MSVCRT.@)
*/
int CDECL _set_fmode(int mode)
{
/* TODO: support _O_WTEXT */
if(!MSVCRT_CHECK_PMT(mode==MSVCRT__O_TEXT || mode==MSVCRT__O_BINARY))
return MSVCRT_EINVAL;
MSVCRT__fmode = mode;
return 0;
}
/***********************************************************************
* _get_fmode (MSVCRT.@)
*/
int CDECL _get_fmode(int *mode)
{
if(!MSVCRT_CHECK_PMT(mode))
return MSVCRT_EINVAL;
*mode = MSVCRT__fmode;
return 0;
}
/***********************************************************************
* __p__osver (MSVCRT.@)
*/

View File

@ -474,7 +474,7 @@
# stub _get_environ(ptr)
@ cdecl _get_errno(ptr)
# stub _get_fileinfo(ptr)
# stub _get_fmode(ptr)
@ cdecl _get_fmode(ptr)
@ cdecl _get_heap_handle()
@ cdecl _get_osfhandle(long) MSVCRT__get_osfhandle
@ cdecl _get_osplatform(ptr) MSVCRT__get_osplatform
@ -867,7 +867,7 @@
@ cdecl _set_errno(long)
@ cdecl _set_error_mode(long)
# stub _set_fileinfo(long)
# stub _set_fmode(long)
@ cdecl _set_fmode(long)
# stub _set_output_format(long)
@ cdecl _set_sbh_threshold(long)
@ cdecl _seterrormode(long)