examples/spi_slave: check for truncation in snprintf call

Also fix character array initializer
This commit is contained in:
Ivan Grokhotkov 2018-08-28 21:34:44 +08:00
parent 324004f7b3
commit c3123b00ae

View File

@ -118,8 +118,8 @@ void app_main()
}; };
int n=0; int n=0;
char sendbuf[128]=""; char sendbuf[128] = {0};
char recvbuf[128]=""; char recvbuf[128] = {0};
spi_transaction_t t; spi_transaction_t t;
memset(&t, 0, sizeof(t)); memset(&t, 0, sizeof(t));
@ -143,8 +143,12 @@ void app_main()
xSemaphoreGive(rdySem); xSemaphoreGive(rdySem);
while(1) { while(1) {
snprintf(sendbuf, 128, "Sender, transmission no. %04i. Last time, I received: \"%s\"", n, recvbuf); int res = snprintf(sendbuf, sizeof(sendbuf),
t.length=128*8; //128 bytes "Sender, transmission no. %04i. Last time, I received: \"%s\"", n, recvbuf);
if (res >= sizeof(sendbuf)) {
printf("Data truncated\n");
}
t.length=sizeof(sendbuf)*8;
t.tx_buffer=sendbuf; t.tx_buffer=sendbuf;
t.rx_buffer=recvbuf; t.rx_buffer=recvbuf;
//Wait for slave to be ready for next byte before sending //Wait for slave to be ready for next byte before sending