Radish alpha
H
HardenedBSD Package Manager
Radicle
Git (anonymous pull)
Log in to clone via SSH
Simplify parsing with numeric values of for version or name
Baptiste Daroussin committed 12 years ago
commit adfdbd01c0f61db0eca87191f072bfeef23f4a13
parent 4116df7a9ad823785705ca6b6861ae50e31e4545
1 file changed +3 -8
modified libpkg/pkg_manifest.c
@@ -95,7 +95,7 @@ static struct manifest_key {
	{ "maintainer",          PKG_MAINTAINER,          UCL_STRING, pkg_string},
	{ "message",             PKG_MESSAGE,             UCL_STRING, pkg_string},
	{ "name",                PKG_NAME,                UCL_STRING, pkg_string},
-
	{ "name",                PKG_NAME,                UCL_INT, pkg_int},
+
	{ "name",                PKG_NAME,                UCL_INT,    pkg_string},
	{ "options",             PKG_OPTIONS,             UCL_STRING, pkg_object},
	{ "option_defaults",     PKG_OPTION_DEFAULTS,     UCL_STRING, pkg_object},
	{ "option_descriptions", PKG_OPTION_DESCRIPTIONS, UCL_STRING, pkg_object},
@@ -111,7 +111,7 @@ static struct manifest_key {
	{ "users",               PKG_USERS,               UCL_OBJECT, pkg_object},
	{ "users",               PKG_USERS,               UCL_ARRAY,  pkg_array},
	{ "version",             PKG_VERSION,             UCL_STRING, pkg_string},
-
	{ "version",             PKG_VERSION,             UCL_INT,    pkg_int},
+
	{ "version",             PKG_VERSION,             UCL_INT,    pkg_string},
	{ "www",                 PKG_WWW,                 UCL_STRING, pkg_string},
	{ NULL, -99, -99, NULL}
};
@@ -265,7 +265,7 @@ pkg_string(struct pkg *pkg, ucl_object_t *obj, int attr)
{
	int ret = EPKG_OK;
	const char *str;
-
	str = ucl_object_tostring(obj);
+
	str = ucl_object_tostring_forced(obj);

	switch (attr)
	{
@@ -297,11 +297,6 @@ pkg_string(struct pkg *pkg, ucl_object_t *obj, int attr)
static int
pkg_int(struct pkg *pkg, ucl_object_t *obj, int attr)
{
-
	char vint[BUFSIZ];
-
	if (attr == PKG_VERSION || attr == PKG_NAME) {
-
		snprintf(vint, sizeof(vint), "%"PRId64, ucl_object_toint(obj));
-
		return (pkg_set(pkg, attr, vint));
-
	}
	return (pkg_set(pkg, attr, ucl_object_toint(obj)));
}