diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2013-09-18 11:49:32 +0200 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2013-09-18 11:49:32 +0200 |
commit | 626f433630697a630e5063f4f53cfa570bb4a9df (patch) | |
tree | 62fa0bf8afd0de0eff15a68a249c42f5358f8e16 /src/modules/systemlib | |
parent | 6624c8f1c40d08d594fd2f180bff1088eaff82d4 (diff) | |
parent | 210e7f92454e2b99a448c1563e22fed6f0220ea7 (diff) | |
download | px4-firmware-626f433630697a630e5063f4f53cfa570bb4a9df.tar.gz px4-firmware-626f433630697a630e5063f4f53cfa570bb4a9df.tar.bz2 px4-firmware-626f433630697a630e5063f4f53cfa570bb4a9df.zip |
Merge branch 'master' of github.com:PX4/Firmware
Diffstat (limited to 'src/modules/systemlib')
-rw-r--r-- | src/modules/systemlib/param/param.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/modules/systemlib/param/param.c b/src/modules/systemlib/param/param.c index c69de52b7..e7c96fe54 100644 --- a/src/modules/systemlib/param/param.c +++ b/src/modules/systemlib/param/param.c @@ -519,6 +519,10 @@ param_save_default(void) int fd = open(param_get_default_file(), O_WRONLY | O_CREAT | O_EXCL); if (fd < 0) { + /* do another attempt in case the unlink call is not synced yet */ + usleep(5000); + fd = open(param_get_default_file(), O_WRONLY | O_CREAT | O_EXCL); + warn("opening '%s' for writing failed", param_get_default_file()); return fd; } @@ -528,7 +532,7 @@ param_save_default(void) if (result != 0) { warn("error exporting parameters to '%s'", param_get_default_file()); - unlink(param_get_default_file()); + (void)unlink(param_get_default_file()); return result; } |