summaryrefslogtreecommitdiff
path: root/ubi-utils/ubinize.c
diff options
context:
space:
mode:
authorEnrico Jorns <ejo@pengutronix.de>2015-09-11 15:28:13 +0200
committerBrian Norris <computersforpeace@gmail.com>2015-09-29 11:46:41 -0700
commit5f50207231414bfdbac8f0f974a2824f24177d6e (patch)
tree9ddf56e7134f1a113a5e42e62db5457d1b8320de /ubi-utils/ubinize.c
parentb5ac34c5cc3c345e51ff12eca0fafd2ca1add3a0 (diff)
mtd-utils: ubinize: Always return error code (at least -1) in case of an error
ubinize should not fail silenty, this can be very annoying when using it from other tools that rely on the exit code for determining the success of their operation. Signed-off-by: Enrico Jorns <ejo@pengutronix.de> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Diffstat (limited to 'ubi-utils/ubinize.c')
-rw-r--r--ubi-utils/ubinize.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ubi-utils/ubinize.c b/ubi-utils/ubinize.c
index 34f465a..60bbd9a 100644
--- a/ubi-utils/ubinize.c
+++ b/ubi-utils/ubinize.c
@@ -519,6 +519,7 @@ int main(int argc, char * const argv[])
*/
seek = ui.peb_size * 2;
if (lseek(args.out_fd, seek, SEEK_SET) != seek) {
+ err = -1;
sys_errmsg("cannot seek file \"%s\"", args.f_out);
goto out_free;
}
@@ -530,6 +531,7 @@ int main(int argc, char * const argv[])
int fd, j;
if (!sname) {
+ err = -1;
errmsg("ini-file parsing error (iniparser_getsecname)");
goto out_free;
}
@@ -550,6 +552,7 @@ int main(int argc, char * const argv[])
*/
for (j = 0; j < i; j++) {
if (vi[i].id == vi[j].id) {
+ err = -1;
errmsg("volume IDs must be unique, but ID %d "
"in section \"%s\" is not",
vi[i].id, sname);
@@ -557,6 +560,7 @@ int main(int argc, char * const argv[])
}
if (!strcmp(vi[i].name, vi[j].name)) {
+ err = -1;
errmsg("volume name must be unique, but name "
"\"%s\" in section \"%s\" is not",
vi[i].name, sname);
@@ -580,6 +584,7 @@ int main(int argc, char * const argv[])
if (img) {
fd = open(img, O_RDONLY);
if (fd == -1) {
+ err = fd;
sys_errmsg("cannot open \"%s\"", img);
goto out_free;
}