mirror of https://github.com/PCSX2/pcsx2.git
Plugin API for GS: Changed the new GSgetTitleInfo callback to use a more sensible parameter passing system.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4072 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
aaaa71e13b
commit
49527d952c
|
@ -278,7 +278,7 @@ void CALLBACK GSsetFrameSkip(int frameskip);
|
|||
int CALLBACK GSsetupRecording(int start, void* pData);
|
||||
|
||||
void CALLBACK GSreset();
|
||||
void CALLBACK GSgetTitleInfo( char dest[128] );
|
||||
void CALLBACK GSgetTitleInfo( char* dest, size_t length );
|
||||
void CALLBACK GSwriteCSR(u32 value);
|
||||
s32 CALLBACK GSfreeze(int mode, freezeData *data);
|
||||
void CALLBACK GSconfigure();
|
||||
|
@ -575,7 +575,7 @@ typedef void (CALLBACK* _GSreadFIFO)(u64 *pMem);
|
|||
typedef void (CALLBACK* _GSreadFIFO2)(u64 *pMem, int qwc);
|
||||
|
||||
typedef void (CALLBACK* _GSchangeSaveState)(int, const char* filename);
|
||||
typedef void (CALLBACK* _GSgetTitleInfo)(char dest[128]);
|
||||
typedef void (CALLBACK* _GSgetTitleInfo)(char* dest, size_t length);
|
||||
typedef void (CALLBACK* _GSirqCallback)(void (*callback)());
|
||||
typedef void (CALLBACK* _GSprintf)(int timeout, char *fmt, ...);
|
||||
typedef void (CALLBACK* _GSsetBaseMem)(void*);
|
||||
|
|
|
@ -185,7 +185,7 @@ static void CALLBACK GS_printf(int timeout, char *fmt, ...)
|
|||
Console.WriteLn(msg);
|
||||
}
|
||||
|
||||
void CALLBACK GS_getTitleInfo( char dest[128] )
|
||||
void CALLBACK GS_getTitleInfo( char* dest, size_t length )
|
||||
{
|
||||
// Just return a generic "GS" title -- a plugin actually implementing this feature
|
||||
// should return a title such as "GSdx" or "ZZogl" instead. --air
|
||||
|
|
|
@ -386,7 +386,7 @@ void GSFrame::OnUpdateTitle( wxTimerEvent& evt )
|
|||
double fps = wxGetApp().FpsManager.GetFramerate();
|
||||
|
||||
char gsDest[128];
|
||||
GSgetTitleInfo( gsDest );
|
||||
GSgetTitleInfo( gsDest, sizeof(gsDest) );
|
||||
|
||||
const wxChar* limiterStr = L"None";
|
||||
|
||||
|
|
|
@ -478,18 +478,15 @@ EXPORT_C GSgetLastTag(uint32* tag)
|
|||
#define snprintf _snprintf
|
||||
#endif
|
||||
|
||||
EXPORT_C GSgetTitleInfo(char dest[128])
|
||||
EXPORT_C GSgetTitleInfo(char* dest, size_t length)
|
||||
{
|
||||
// NOTE: MSVC appears to generate an incorrect sizeof for dest, returning 4 (size of a pointer)
|
||||
// instead of 128. So let's hardcode it. (sigh). --air
|
||||
|
||||
if (!s_gs->m_GStitleInfoBuffer[0])
|
||||
strcpy(dest, "GSdx");
|
||||
else
|
||||
{
|
||||
EnterCriticalSection(&s_gs->m_pGSsetTitle_Crit);
|
||||
snprintf(dest, 127, "GSdx | %s", s_gs->m_GStitleInfoBuffer);
|
||||
dest[127] = 0; // just in case!
|
||||
snprintf(dest, length-1, "GSdx | %s", s_gs->m_GStitleInfoBuffer);
|
||||
dest[length-1] = 0; // just in case!
|
||||
LeaveCriticalSection(&s_gs->m_pGSsetTitle_Crit);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue