1
0
mirror of https://github.com/wine-mirror/wine synced 2024-06-29 06:14:34 +00:00

msvcp140: Use _get_stream_buffer_pointers() to access FILE internal buffers.

This commit is contained in:
Piotr Caban 2024-06-11 19:18:53 +02:00 committed by Alexandre Julliard
parent 99511bde63
commit 98e74c7842
4 changed files with 18 additions and 5 deletions

View File

@ -17,7 +17,6 @@
*/
#include <stdarg.h>
#include <stdio.h>
#include <limits.h>
#include <share.h>
@ -3028,8 +3027,19 @@ void __thiscall basic_filebuf_char__Init(basic_filebuf_char *this, FILE *file, b
basic_streambuf_char__Init_empty(&this->base);
if(file)
basic_streambuf_char__Init(&this->base, &file->_base, &file->_ptr,
&file->_cnt, &file->_base, &file->_ptr, &file->_cnt);
{
char **base, **ptr;
int *cnt;
#if _MSVCP_VER >= 140
_get_stream_buffer_pointers(file, &base, &ptr, &cnt);
#else
base = &file->_base;
ptr = &file->_ptr;
cnt = &file->_cnt;
#endif
basic_streambuf_char__Init(&this->base, base, ptr, cnt, base, ptr, cnt);
}
}
/* ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAV?$codecvt@DDH@2@@Z */

View File

@ -24,7 +24,6 @@
#include "limits.h"
#include "math.h"
#include "mbctype.h"
#include "stdio.h"
#include "wchar.h"
#include "wctype.h"
#include "uchar.h"

View File

@ -17,6 +17,7 @@
*/
#include "stdbool.h"
#include <stdio.h>
#include "stdlib.h"
#include "windef.h"
#include "winbase.h"
@ -736,3 +737,7 @@ void __cdecl DECLSPEC_NORETURN _Xruntime_error(const char*);
void DECLSPEC_NORETURN throw_exception(const char*);
void DECLSPEC_NORETURN throw_failure(const char*);
void DECLSPEC_NORETURN throw_range_error(const char*);
#if _MSVCP_VER >= 140
int CDECL _get_stream_buffer_pointers(FILE*,char***,char***,int**);
#endif

View File

@ -19,7 +19,6 @@
#include <stdarg.h>
#include "msvcp90.h"
#include "stdio.h"
#include "windef.h"
#include "winbase.h"