From bda40419126fe3ab966abf1cd696a47c96e3cd4a Mon Sep 17 00:00:00 2001 From: Florian Mayer Date: Tue, 5 Mar 2019 17:03:10 +0000 Subject: [PATCH] Add versionCode parser for package list. Bug: 123186697 Change-Id: I9194cc55abd943c4b8b2f9d29dcad035170f2736 --- .../include/packagelistparser/packagelistparser.h | 1 + libpackagelistparser/packagelistparser.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/libpackagelistparser/include/packagelistparser/packagelistparser.h b/libpackagelistparser/include/packagelistparser/packagelistparser.h index 8bcc1e225..3cb6b9af0 100644 --- a/libpackagelistparser/include/packagelistparser/packagelistparser.h +++ b/libpackagelistparser/include/packagelistparser/packagelistparser.h @@ -54,6 +54,7 @@ struct pkg_info { gid_list gids; void *private_data; bool profileable_from_shell; + long version_code; }; /** diff --git a/libpackagelistparser/packagelistparser.c b/libpackagelistparser/packagelistparser.c index 4ce2363df..edc533cbf 100644 --- a/libpackagelistparser/packagelistparser.c +++ b/libpackagelistparser/packagelistparser.c @@ -239,6 +239,15 @@ extern bool packagelist_parse(pfn_on_package callback, void *userdata) pkg_info->profileable_from_shell = (bool)tmp; } + cur = strsep(&next, " \t\r\n"); + if (cur) { + tmp = strtoul(cur, &endptr, 10); + if (*endptr != '\0') { + errmsg = "Could not convert field \"versionCode\" to integer value"; + goto err; + } + pkg_info->version_code = tmp; + } rc = callback(pkg_info, userdata); if (rc == false) {