Update main.cpp to update Linux user's icon for AppImage deployments

This commit is contained in:
Alex Spataru 2025-01-04 03:30:05 -05:00 committed by GitHub
parent 9b9924784a
commit d62da9416a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -207,27 +207,23 @@ static void setupAppImageIcon(const QString &appExecutableName,
const QString pixmapFile = pixmapPath + appExecutableName + ".png";
// clang-format on
// Check if the icon file already exists to avoid redundant copying
if (!QFileInfo::exists(pixmapFile))
// Ensure the directory exists; create it if it doesn't
QDir dir;
if (!dir.exists(pixmapPath) && !dir.mkpath(pixmapPath))
return;
// Copy the icon from resources to the destination
QFile resourceFile(iconResourcePath);
if (resourceFile.open(QIODevice::ReadOnly))
{
// Ensure the directory exists; create it if it doesn't
QDir dir;
if (!dir.exists(pixmapPath) && !dir.mkpath(pixmapPath))
return;
// Copy the icon from resources to the destination
QFile resourceFile(iconResourcePath);
if (resourceFile.open(QIODevice::ReadOnly))
QFile localFile(pixmapFile);
if (localFile.open(QIODevice::WriteOnly))
{
QFile localFile(pixmapFile);
if (localFile.open(QIODevice::WriteOnly))
{
localFile.write(resourceFile.readAll());
localFile.close();
}
resourceFile.close();
localFile.write(resourceFile.readAll());
localFile.close();
}
resourceFile.close();
}
}
#endif