summaryrefslogtreecommitdiff
path: root/ubi-utils/src/libubi.c
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2007-12-23 14:14:54 +0200
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2007-12-23 14:14:54 +0200
commit233824d00b526d82dd2ef05d6dad4dbc5b4cc943 (patch)
tree05d993e982949d7d1cffca497c969b19ecccd3a9 /ubi-utils/src/libubi.c
parent9b5008d4874eecf802e9cb292bba79c7c462e816 (diff)
ubi-utils: be backward-compatible
Since control device is not supported by UBI in mainline kernels, we should not panic if it is absent. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'ubi-utils/src/libubi.c')
-rw-r--r--ubi-utils/src/libubi.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/ubi-utils/src/libubi.c b/ubi-utils/src/libubi.c
index e754747..9aa7847 100644
--- a/ubi-utils/src/libubi.c
+++ b/ubi-utils/src/libubi.c
@@ -749,8 +749,15 @@ int ubi_get_info(libubi_t desc, struct ubi_info *info)
memset(info, '\0', sizeof(struct ubi_info));
- if (read_major(lib->ctrl_dev, &info->ctrl_major, &info->ctrl_minor))
- return -1;
+ if (read_major(lib->ctrl_dev, &info->ctrl_major, &info->ctrl_minor)) {
+ /*
+ * Older UBI versions did not have control device, so we do not
+ * panic here for compatibility reasons. May be few years later
+ * we could return -1 here, but for now just set major:minor to
+ * -1.
+ */
+ info->ctrl_major = info->ctrl_minor = -1;
+ }
/*
* We have to scan the UBI sysfs directory to identify how many UBI