Datum wird nicht mehr richtig angezeigt

Du mischst wahrscheinlich alten und neueren Code. Hast Du einen neuen ESP-Core installiert?

Gruß Tommy

Mooooment - das ist doch was ganz anderes.
Wo kommt denn der Gebrauch der mysql-lib her?

Also wenn Fehler, dann komplett und code komplett.
Alles andere ist stochern - nicht mal im Nebel, sondern mit verbundenen Augen.

Hallo Tommy56,

ich habe keinen neuen ESP-Core installiert.

Thema mischen:
Ich habe ältere Versionen von meinem Projekt versucht und es kommt diese Fehlermeldung.
Ich habe einige Libraries updates gemacht, aber nicht die MySQL connetion!

Gruß
Horst

Ja, früher hat der Compiler es bei einer Warnung belassen, wenn eine Funktion einen Rückgabewert haben sollte, aber keinen hatte.
Der Code in Deiner Lib:

size_t Encrypt_SHA1::write(uint8_t* data, int length) {
  for (int i=0; i<length; i++) {
    write(data[i]);
  }
}

Heute wird das als Fehler angemeckert. Du hast 2 Möglichkeiten:
Entweder die Funktionen in der .h und der .cpp in auf void umzustellen oder einfach ein return 0 einzufügen.

size_t Encrypt_SHA1::write(uint8_t* data, int length) {
  for (int i=0; i<length; i++) {
    write(data[i]);
  }
return 0;
}

Da gibt es noch ein paar mehr Fundstellen in der Lib, die Du ändern musst.

Gruß Tommy

Edit:
Die Methoden müssen den Returntyp size_t haben, da sie von Print erben.
Die Änderung in der cpp sollte also so aussehen (ab Zeile 86: die beiden Methoden).

size_t Encrypt_SHA1::write(uint8_t data) {
  ++byteCount;
  addUncounted(data);
	return 1;
}

size_t Encrypt_SHA1::write(uint8_t* data, int length) {
  for (int i=0; i<length; i++) {
    write(data[i]);
  }
	return length;
}

So, ich habe diese 2 Änderungen in

MySQL_Encrypt_Sha1.cpp

gemacht.

size_t Encrypt_SHA1::write(uint8_t data) {
  ++byteCount;
  addUncounted(data);
  return 0;
}

size_t Encrypt_SHA1::write(uint8_t* data, int length) {
  for (int i=0; i<length; i++) {
    write(data[i]);
  }
  return 0;
}

und es kommt kein Fehler mehr.

Ich hoffe das wars.

melde mich später nochmal

Danke schon mal an Tommy56

Horst

Ach schau... (6year ago)
*_Sha1 ist das Einzige, was nicht zur V1.2.0 angefasst wurde.
Das könnte das Problem sein.
Wird ein Rückgabewert tatsächlich gebraucht?
Hm... so tief bin ich nicht drin.

Gibt nenn Issue dazu:

Gebraucht nicht, aber der Compiler will ihn haben und dann kann man auch gleich die Vorgaben von Print erfüllen.

Gruß Tommy

Edit: Ich habe meine Lösung mal als Comment auf den Issue gepostet.

1 Like

Hallo Zusammen,

das Problem "Datum wird nicht richtig angezeigt" wurde gelöst.

Ich habe den Vorschlag von noiasca #18 in mein Programm eingebaut und es funktioniert.

Deshalb würde ich gerne diesen Issue schliessen.

Da es im Zusammenhang ein weiteres Problem mit dem MySQL_connection gibt,
werde ich einen neuen Issue aufmachen.

Vielen Dank an ALLE
Horst

Du könntest noiascas Beitrag (oder deinen letzten) als "Solution" markieren, um den Thread als gelöst erkennbar zu machen.

Neues Problem als neuen Thread anzufangen ist eine gute Idee.