Add clang-tidy target and fix problems

This commit is contained in:
Tobias Reisinger 2020-11-13 02:06:48 +01:00
parent fca35ade9e
commit f97b149376
25 changed files with 199 additions and 115 deletions
src/models

View file

@ -1,18 +1,20 @@
#include <bsd/string.h>
#include <sqlite3.h>
#include <stdlib.h>
#include <string.h>
#include <sqlite3.h>
#include <cache.h>
#include <cJSON.h>
#include <logger.h>
#include <cache.h>
#include <constants.h>
#include <database.h>
#include <status.h>
#include <models/relay.h>
#include <logger.h>
#include <models/controller.h>
#include <models/schedule.h>
#include <models/junction_tag.h>
#include <models/junction_relay_schedule.h>
#include <models/junction_tag.h>
#include <models/relay.h>
#include <models/schedule.h>
#include <models/tag.h>
#include <status.h>
static int
db_update_insert(relay_t *relay, sqlite3_stmt *stmt)
@ -35,6 +37,7 @@ static relay_t*
relay_db_select_mapper(sqlite3_stmt *stmt)
{
relay_t *new_relay = malloc(sizeof(relay_t));
new_relay->id = 0;
new_relay->is_on = 0;
for(int i = 0; i < sqlite3_column_count(stmt); i++)
@ -52,7 +55,7 @@ relay_db_select_mapper(sqlite3_stmt *stmt)
switch(name[1])
{
case 'a': // name
strncpy(new_relay->name, (const char*)sqlite3_column_text(stmt, i), 127);
strlcpy(new_relay->name, (const char*)sqlite3_column_text(stmt, i), sizeof(new_relay->name));
break;
case 'u': // number
new_relay->number = sqlite3_column_int(stmt, i);
@ -66,7 +69,7 @@ relay_db_select_mapper(sqlite3_stmt *stmt)
}
}
memset(new_relay->schedules, 0, sizeof(schedule_t*) * 7);
memset(new_relay->schedules, 0, sizeof(schedule_t*) * DAYS_PER_WEEK);
relay_reload_schedules(new_relay);
relay_reload_active_schedule(new_relay);
@ -100,11 +103,9 @@ relay_db_select(sqlite3_stmt *stmt)
{
break;
}
else
{
LOGGER_ERR("error selecting relays from database: %s\n", sqlite3_errstr(s));
break;
}
LOGGER_ERR("error selecting relays from database: %s\n", sqlite3_errstr(s));
break;
}
}
sqlite3_finalize(stmt);
@ -154,8 +155,8 @@ relay_save(relay_t *relay)
junction_relay_schedule_remove_for_relay(relay->id);
LOGGER_DEBUG("rebuilding relay_schedule junction\n");
int schedule_ids[7];
for(int i = 0; i < 7; ++i)
int schedule_ids[DAYS_PER_WEEK];
for(int i = 0; i < DAYS_PER_WEEK; ++i)
{
schedule_ids[i] = relay->schedules[i]->id;
}
@ -183,17 +184,16 @@ relay_reload_schedules(relay_t *relay)
{
schedule_t **schedules = schedule_get_relay_weekdays(relay->id);
uuid_t off_id;
memset(off_id, 0, sizeof(uuid_t));
memcpy(off_id, "off", 3);
uuid_t off_uid;
schedule_get_uid_off(off_uid);
int fill_with_off = 0;
for(int i = 0; i < 7; ++i)
for(int i = 0; i < DAYS_PER_WEEK; ++i)
{
if(schedules[i] == NULL || fill_with_off)
{
LOGGER_WARNING("got only %d/7 schedules for relay_id %d\n", i, relay->id);
relay->schedules[i] = schedule_get_by_uid(off_id);
relay->schedules[i] = schedule_get_by_uid(off_uid);
fill_with_off = 1;
}
@ -213,7 +213,7 @@ relay_reload_schedules(relay_t *relay)
void
relay_free(relay_t *relay)
{
for(int i = 0; i < 7; ++i)
for(int i = 0; i < DAYS_PER_WEEK; ++i)
{
schedule_free(relay->schedules[i]);
}
@ -306,7 +306,7 @@ relay_to_json(relay_t *relay, int status_relay)
cJSON_AddItemToObject(json, "active_schedule", json_active_schedule);
cJSON *json_schedules = cJSON_CreateArray();
for(int i = 0; i < 7; ++i)
for(int i = 0; i < DAYS_PER_WEEK; ++i)
{
cJSON *json_schedule = schedule_to_json(relay->schedules[i]);
cJSON_AddItemToArray(json_schedules, json_schedule);