Fixed stack buffer overflow in Qt GUI loading a ROM with a large filepath from file dialog.
This commit is contained in:
parent
3564f61849
commit
ba47f169ca
|
@ -43,26 +43,27 @@ static void MessageOutput(QtMsgType type, const QMessageLogContext &context, con
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case QtDebugMsg:
|
case QtDebugMsg:
|
||||||
sprintf( cmsg, "Qt Debug: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
snprintf( cmsg, sizeof(cmsg), "Qt Debug: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
||||||
FCEUD_Message(cmsg);
|
FCEUD_Message(cmsg);
|
||||||
break;
|
break;
|
||||||
case QtInfoMsg:
|
case QtInfoMsg:
|
||||||
sprintf( cmsg, "Qt Info: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
snprintf( cmsg, sizeof(cmsg), "Qt Info: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
||||||
FCEUD_Message(cmsg);
|
FCEUD_Message(cmsg);
|
||||||
break;
|
break;
|
||||||
case QtWarningMsg:
|
case QtWarningMsg:
|
||||||
sprintf( cmsg, "Qt Warning: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
snprintf( cmsg, sizeof(cmsg), "Qt Warning: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
||||||
FCEUD_Message(cmsg);
|
FCEUD_Message(cmsg);
|
||||||
break;
|
break;
|
||||||
case QtCriticalMsg:
|
case QtCriticalMsg:
|
||||||
sprintf( cmsg, "Qt Critical: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
snprintf( cmsg, sizeof(cmsg), "Qt Critical: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
||||||
FCEUD_PrintError(cmsg);
|
FCEUD_PrintError(cmsg);
|
||||||
break;
|
break;
|
||||||
case QtFatalMsg:
|
case QtFatalMsg:
|
||||||
sprintf( cmsg, "Qt Fatal: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
snprintf( cmsg, sizeof(cmsg), "Qt Fatal: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
|
||||||
FCEUD_PrintError(cmsg);
|
FCEUD_PrintError(cmsg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
cmsg[sizeof(cmsg)-1] = 0;
|
||||||
fprintf(stderr, "%s", cmsg );
|
fprintf(stderr, "%s", cmsg );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue