aboutsummaryrefslogtreecommitdiffstats
path: root/nrfdfu.c
diff options
context:
space:
mode:
Diffstat (limited to 'nrfdfu.c')
-rw-r--r--nrfdfu.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/nrfdfu.c b/nrfdfu.c
index 3f9316c..81d94da 100644
--- a/nrfdfu.c
+++ b/nrfdfu.c
@@ -34,6 +34,8 @@ main (int argc, char *argv[])
size_t dat_size;
+ int tries = 3;
+
while ((opt = getopt (argc, argv, "b:p:")) != -1)
{
@@ -69,8 +71,13 @@ main (int argc, char *argv[])
(unsigned) bin_size);
- dfu (bdaddr, m->type, m->dfu_version, dat, dat_size, bin, bin_size);
+ while (tries--)
+ {
+ if (!dfu
+ (bdaddr, m->type, m->dfu_version, dat, dat_size, bin, bin_size))
+ return EXIT_SUCCESS;
+ }
- return EXIT_SUCCESS;
+ return EXIT_FAILURE;
}