Correcciones

master
Gerardo 2022-02-15 21:40:39 +01:00
parent 3be418f659
commit e9ad217f83
5 changed files with 13 additions and 2 deletions

View File

@ -30,6 +30,8 @@ MqttSensArray::MqttSensArray()
MqttSensor* MqttSensArray:: Get(int i) MqttSensor* MqttSensArray:: Get(int i)
{ {
if (i < 0 || i >= n)
return NULL;
return &(sens[i]); return &(sens[i]);
} }
MqttSensor* MqttSensArray::Ivar2Sen(int ivar) MqttSensor* MqttSensArray::Ivar2Sen(int ivar)
@ -38,6 +40,8 @@ MqttSensor* MqttSensArray::Ivar2Sen(int ivar)
for(int i=0; i<n; i++) for(int i=0; i<n; i++)
{ {
res=Get(i); res=Get(i);
if (!res)
continue;
if(res->ivar==ivar) if(res->ivar==ivar)
return res; return res;
} }

View File

@ -334,7 +334,9 @@ SonidoBuzzer::SonidoBuzzer()
void SonidoBuzzer::Toca(int pin, int imel) void SonidoBuzzer::Toca(int pin, int imel)
{ {
mel[imel].Toca(pin); if (imel<0 || imel>=n)
return;
mel[imel].Toca(pin);
} }
int SonidoBuzzer::Add(char* melo) int SonidoBuzzer::Add(char* melo)

View File

@ -10,10 +10,13 @@ MqttTopicAttay::MqttTopicAttay()
{ {
n=0; n=0;
nst=0; nst=0;
def[0] = 0;
} }
char* MqttTopicAttay::Get(int i) char* MqttTopicAttay::Get(int i)
{ {
if (i < 0 || i >= n)
return def;
return &str[(ind[i])]; return &str[(ind[i])];
} }

View File

@ -12,7 +12,9 @@ class PubSubClient;
//array de topic //array de topic
class MqttTopicAttay class MqttTopicAttay
{ {
static char def[1];
public: public:
char str[MAXSTR];//topic de mqtt asociado char str[MAXSTR];//topic de mqtt asociado
int ind[MAXVAR]; int ind[MAXVAR];
int nst; int nst;

View File

@ -26,7 +26,7 @@ int MqttWOLManager::OnMqtt(char* top, char* payload)
Serial.println(payload); Serial.println(payload);
#endif #endif
// WOL.sendMagicPacket(MACAddress, 7); // Change the port number // WOL.sendMagicPacket(MACAddress, 7); // Change the port number
return 1;
} }
void MqttWOLManager::suscribe(PubSubClient *client_qqtt) void MqttWOLManager::suscribe(PubSubClient *client_qqtt)
{ {