px4_daemon: fixes for clang-tidy

Also ignore the warning:
error: calling 'system' uses a command processor [cert-env33-c,-warnings-as-errors]
This commit is contained in:
Beat Küng 2018-08-06 15:38:10 +02:00 committed by Lorenz Meier
parent efb202106f
commit ec09379813
7 changed files with 36 additions and 32 deletions

View File

@ -1,5 +1,6 @@
Checks: '*
,-cert-dcl50-cpp
,-cert-env33-c
,-cert-err34-c
,-cert-err58-cpp
,-cert-msc30-c

View File

@ -88,7 +88,7 @@ static volatile bool _exit_requested = false;
namespace px4
{
void init_once(void);
void init_once();
}
static void sig_int_handler(int sig_num);
@ -174,9 +174,9 @@ int main(int argc, char **argv)
} else {
/* Server/daemon apps need to parse the command line arguments. */
std::string data_path = "";
std::string data_path;
std::string commands_file = "etc/init.d/rcS";
std::string test_data_path = "";
std::string test_data_path;
int instance = 0;
int myoptind = 1;
@ -234,8 +234,12 @@ int main(int argc, char **argv)
if (test_data_path != "") {
const std::string required_test_data_path = "./test_data";
if (!dir_exists(required_test_data_path.c_str())) {
symlink(test_data_path.c_str(), required_test_data_path.c_str());
if (!dir_exists(required_test_data_path)) {
ret = symlink(test_data_path.c_str(), required_test_data_path.c_str());
if (ret != PX4_OK) {
return ret;
}
}
}
@ -293,14 +297,14 @@ int create_symlinks_if_needed(std::string &data_path)
{
std::string current_path = pwd();
if (data_path.size() == 0) {
if (data_path.empty()) {
// No data path given, we'll just try to use the current working dir.
data_path = current_path;
PX4_INFO("assuming working directory is rootfs, no symlinks needed.");
return PX4_OK;
}
if (data_path.compare(current_path) == 0) {
if (data_path == current_path) {
// We are already running in the data path, so no need to symlink
PX4_INFO("working directory seems to be rootfs, no symlinks needed");
return PX4_OK;
@ -313,7 +317,7 @@ int create_symlinks_if_needed(std::string &data_path)
std::string src_path = data_path;
std::string dest_path = current_path + "/" + path_sym_link;
if (dir_exists(dest_path.c_str())) {
if (dir_exists(dest_path)) {
return PX4_OK;
}
@ -385,10 +389,10 @@ void register_sig_handler()
sig_segv.sa_handler = sig_segv_handler;
sig_segv.sa_flags = SA_RESTART | SA_SIGINFO;
sigaction(SIGINT, &sig_int, NULL);
//sigaction(SIGTERM, &sig_int, NULL);
sigaction(SIGFPE, &sig_fpe, NULL);
sigaction(SIGPIPE, &sig_pipe, NULL);
sigaction(SIGINT, &sig_int, nullptr);
//sigaction(SIGTERM, &sig_int, nullptr);
sigaction(SIGFPE, &sig_fpe, nullptr);
sigaction(SIGPIPE, &sig_pipe, nullptr);
sigaction(SIGSEGV, &sig_segv, nullptr);
}
@ -438,7 +442,7 @@ std::string get_absolute_binary_path(const std::string &argv0)
{
// On Linux we could also use readlink("/proc/self/exe", buf, bufsize) to get the absolute path
std::size_t last_slash = argv0.find_last_of("/");
std::size_t last_slash = argv0.find_last_of('/');
if (last_slash == std::string::npos) {
// either relative path or in PATH (PATH is ignored here)

View File

@ -309,8 +309,8 @@ Client::register_sig_handler()
// been pressed, and we can't wait for the return value from the
// cancelled command.
sig_int.sa_flags = SA_RESTART;
sigaction(SIGINT, &sig_int, NULL);
sigaction(SIGTERM, &sig_int, NULL);
sigaction(SIGINT, &sig_int, nullptr);
sigaction(SIGTERM, &sig_int, nullptr);
}
void

View File

@ -52,7 +52,7 @@ void History::try_to_add(const std::string &line)
}
// Don't add duplicate entries.
if (!_history.empty() && line.compare(_history.back()) == 0) {
if (!_history.empty() && line == _history.back()) {
return;
}

View File

@ -71,7 +71,7 @@ int Pxh::process_line(const std::string &line, bool silently_fail)
return 0;
}
if (_apps.size() == 0) {
if (_apps.empty()) {
init_app_map(_apps);
}
@ -109,7 +109,7 @@ int Pxh::process_line(const std::string &line, bool silently_fail)
return retval;
} else if (command.compare("help") == 0) {
} else if (command == "help") {
list_builtins(_apps);
return 0;
@ -134,7 +134,7 @@ void Pxh::run_pxh()
_setup_term();
std::string mystr = "";
std::string mystr;
int cursor_position = 0; // position of the cursor from right to left
// (0: all the way to the right, mystr.length: all the way to the left)
@ -262,10 +262,10 @@ void Pxh::_setup_term()
term.c_lflag &= ~ICANON;
term.c_lflag &= ~ECHO;
tcsetattr(0, TCSANOW, &term);
setbuf(stdin, NULL);
setbuf(stdin, nullptr);
}
void Pxh::_restore_term(void)
void Pxh::_restore_term()
{
if (_instance) {
tcsetattr(0, TCSANOW, &_instance->_orig_term);

View File

@ -73,9 +73,9 @@ int
Server::start()
{
if (0 != pthread_create(&_server_main_pthread,
NULL,
nullptr,
_server_main_trampoline,
NULL)) {
nullptr)) {
PX4_ERR("error creating client handler thread");
@ -92,7 +92,7 @@ Server::_server_main_trampoline(void *arg)
_instance->_server_main(arg);
}
return NULL;
return nullptr;
}
void Server::_pthread_key_destructor(void *arg)
@ -156,7 +156,6 @@ Server::_server_main(void *arg)
}
close(client_send_pipe_fd);
return;
}
void
@ -214,7 +213,7 @@ Server::_execute_cmd_packet(const client_send_packet_s &packet)
args->is_atty = packet.payload.execute_msg.is_atty;
_lock(); // need to lock, otherwise the thread could already exit before we insert into the map
ret = pthread_create(&new_pthread, NULL, Server::_run_cmd, (void *)args);
ret = pthread_create(&new_pthread, nullptr, Server::_run_cmd, (void *)args);
if (ret != 0) {
PX4_ERR("could not start pthread (%i)", ret);
@ -284,7 +283,7 @@ void
// We register thread specific data. This is used for PX4_INFO (etc.) log calls.
CmdThreadSpecificData *thread_data_ptr;
if ((thread_data_ptr = (CmdThreadSpecificData *)pthread_getspecific(_instance->_key)) == NULL) {
if ((thread_data_ptr = (CmdThreadSpecificData *)pthread_getspecific(_instance->_key)) == nullptr) {
thread_data_ptr = new CmdThreadSpecificData;
thread_data_ptr->pipe_fd = pipe_fd;
thread_data_ptr->is_atty = is_atty;
@ -302,7 +301,7 @@ void
// Clean up before returning.
_instance->_cleanup_thread(client_uuid);
return NULL;
return nullptr;
}

View File

@ -69,7 +69,7 @@ int get_stdout_pipe_buffer(char **buffer, unsigned *max_length, bool *is_atty)
// have any thread specific data set and we won't have a pipe to write
// stdout to.
if ((thread_data_ptr = (Server::CmdThreadSpecificData *)pthread_getspecific(
Server::get_pthread_key())) == NULL) {
Server::get_pthread_key())) == nullptr) {
return -1;
}
@ -104,7 +104,7 @@ int send_stdout_pipe_buffer(unsigned buffer_length)
}
if ((thread_data_ptr = (Server::CmdThreadSpecificData *)pthread_getspecific(
Server::get_pthread_key())) == NULL) {
Server::get_pthread_key())) == nullptr) {
return -1;
}
@ -117,11 +117,11 @@ int send_stdout_pipe_buffer(unsigned buffer_length)
// Check if we can write first by writing 0 bytes.
// If we don't do this, we'll get SIGPIPE and be very unhappy
// because the whole process will go down.
int ret = write(pipe_fd, NULL, 0);
int ret = write(pipe_fd, nullptr, 0);
if (ret == 0 && errno == EPIPE) {
printf("Error: can't write to closed pipe, giving up.\n");
pthread_exit(NULL);
pthread_exit(nullptr);
}
int bytes_sent = write(pipe_fd, packet, bytes_to_send);