mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:07:47 +00:00
LibCore: Refactor a version-reading utility
`ArgsParser` and `AboutDialog` had the same procedure to read the version from `/res/version.ini`. Now they use the `SERENITY_VERSION` string by default. This commit refactored the version-reading utility to the new `Core::Version` namespace.
This commit is contained in:
parent
ad80d4dce0
commit
7742f37c10
3 changed files with 28 additions and 0 deletions
25
Userland/Libraries/LibCore/Version.cpp
Normal file
25
Userland/Libraries/LibCore/Version.cpp
Normal file
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* Copyright (c) 2021, Mahmoud Mandour <ma.mandourr@gmail.com>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <LibCore/ConfigFile.h>
|
||||
#include <LibCore/Version.h>
|
||||
|
||||
namespace Core::Version {
|
||||
|
||||
String read_long_version_string()
|
||||
{
|
||||
auto version_config = Core::ConfigFile::open("/res/version.ini");
|
||||
auto major_version = version_config->read_entry("Version", "Major", "0");
|
||||
auto minor_version = version_config->read_entry("Version", "Minor", "0");
|
||||
|
||||
StringBuilder builder;
|
||||
builder.appendff("Version {}.{}", major_version, minor_version);
|
||||
if (auto git_version = version_config->read_entry("Version", "Git", ""); git_version != "")
|
||||
builder.appendff(".g{}", git_version);
|
||||
return builder.to_string();
|
||||
}
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue