diff options
Diffstat (limited to 'recovery.cpp')
-rw-r--r-- | recovery.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/recovery.cpp b/recovery.cpp index 60553b7f..72f000b8 100644 --- a/recovery.cpp +++ b/recovery.cpp @@ -33,6 +33,7 @@ #include <algorithm> #include <functional> #include <memory> +#include <regex> #include <string> #include <vector> @@ -938,9 +939,17 @@ Device::BuiltinAction start_recovery(Device* device, const std::vector<std::stri ui->SetStage(st_cur, st_max); } - std::vector<std::string> title_lines = - android::base::Split(android::base::GetProperty("ro.bootimage.build.fingerprint", ""), ":"); - title_lines.insert(std::begin(title_lines), "Lineage Recovery"); + // Extract the YYYYMMDD date from the full version string. Assume + // the first instance of "-[0-9]{8}-" (if any) has the desired date. + std::string ver = android::base::GetProperty("ro.lineage.version", ""); + std::smatch ver_date_match; + std::regex_search(ver, ver_date_match, std::regex("-(\\d{8})-")); + std::string ver_date = ver_date_match.str(1); // Empty if no match. + + std::vector<std::string> title_lines = { + "Version " + android::base::GetProperty("ro.lineage.build.version", "(unknown)") + + " (" + ver_date + ")", + }; ui->SetTitle(title_lines); ui->ResetKeyInterruptStatus(); |