aboutsummaryrefslogtreecommitdiff
path: root/src/drivers/mkblctrl/mkblctrl.cpp
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-02-05 09:34:21 +0100
committerLorenz Meier <lm@inf.ethz.ch>2014-02-05 09:34:21 +0100
commit94b162d0e076a872af9d1b1538d7f688d51bfef0 (patch)
tree13bfa90edc2bf87fdc78bb3c82d4d00910f45033 /src/drivers/mkblctrl/mkblctrl.cpp
parent1ef7320e0c9fe00fdc13b1078d6350240a337179 (diff)
downloadpx4-firmware-94b162d0e076a872af9d1b1538d7f688d51bfef0.tar.gz
px4-firmware-94b162d0e076a872af9d1b1538d7f688d51bfef0.tar.bz2
px4-firmware-94b162d0e076a872af9d1b1538d7f688d51bfef0.zip
Fixed up nullptr handling
Diffstat (limited to 'src/drivers/mkblctrl/mkblctrl.cpp')
-rw-r--r--src/drivers/mkblctrl/mkblctrl.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/drivers/mkblctrl/mkblctrl.cpp b/src/drivers/mkblctrl/mkblctrl.cpp
index d1c817cf3..46f7905ff 100644
--- a/src/drivers/mkblctrl/mkblctrl.cpp
+++ b/src/drivers/mkblctrl/mkblctrl.cpp
@@ -1176,8 +1176,11 @@ mk_start(unsigned motors, char *device_path)
// try i2c3 first
g_mk = new MK(3, device_path);
- if (g_mk && OK == g_mk->init(motors)) {
- fprintf(stderr, "[mkblctrl] scanning i2c3...\n");
+ if (!g_mk)
+ return -ENOMEM;
+
+ if (OK == g_mk->init(motors)) {
+ warnx("[mkblctrl] scanning i2c3...\n");
ret = g_mk->mk_check_for_blctrl(8, false, true);
if (ret > 0) {
return OK;
@@ -1190,8 +1193,11 @@ mk_start(unsigned motors, char *device_path)
// fallback to bus 1
g_mk = new MK(1, device_path);
- if (g_mk && OK == g_mk->init(motors)) {
- fprintf(stderr, "[mkblctrl] scanning i2c1...\n");
+ if (!g_mk)
+ return -ENOMEM;
+
+ if (OK == g_mk->init(motors)) {
+ warnx("[mkblctrl] scanning i2c1...\n");
ret = g_mk->mk_check_for_blctrl(8, false, true);
if (ret > 0) {
return OK;
@@ -1201,7 +1207,7 @@ mk_start(unsigned motors, char *device_path)
delete g_mk;
g_mk = nullptr;
- return -ENOMEM;
+ return -ENXIO;
}