moc: Store errno after fopen call
To avoid QFile::encodeName() potentially overriding the value. Task-number: QTBUG-101926 Change-Id: Ie751df877d6624238ded344474b5eccc324ec541 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit dd1b7b5539d6aecdd5f8342ef0fa260e40f5c483) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
06d434ef28
commit
c1425724d7
@ -549,9 +549,12 @@ int runMoc(int argc, char **argv)
|
||||
f = fopen(QFile::encodeName(jsonOutputFileName).constData(), "w");
|
||||
if (!f)
|
||||
#endif
|
||||
{
|
||||
const auto fopen_errno = errno;
|
||||
fprintf(stderr, "moc: Cannot create JSON output file %s. %s\n",
|
||||
QFile::encodeName(jsonOutputFileName).constData(),
|
||||
strerror(errno));
|
||||
strerror(fopen_errno));
|
||||
}
|
||||
jsonOutput.reset(f);
|
||||
}
|
||||
} else { // use stdout
|
||||
@ -596,9 +599,12 @@ int runMoc(int argc, char **argv)
|
||||
depFileHandleRaw = fopen(QFile::encodeName(depOutputFileName).constData(), "w");
|
||||
if (!depFileHandleRaw)
|
||||
#endif
|
||||
{
|
||||
const auto fopen_errno = errno;
|
||||
fprintf(stderr, "moc: Cannot create dep output file '%s'. %s\n",
|
||||
QFile::encodeName(depOutputFileName).constData(),
|
||||
strerror(errno));
|
||||
strerror(fopen_errno));
|
||||
}
|
||||
depFileHandle.reset(depFileHandleRaw);
|
||||
|
||||
if (!depFileHandle.isNull()) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user