|
@@ -574,13 +574,14 @@ void updateFromUart(int id)
|
|
|
if (uup_rev_packet == 0) {
|
|
|
if (uup_file_type == UPFILE_TYPE_WHOLE) {
|
|
|
UpFileHeader header;
|
|
|
- memcpy(&header, &buf[1], sizeof(UpFileHeader));
|
|
|
+ memcpy(&header, &buf[1], sizeof(UpFileHeader) + sizeof(UpFileInfo));
|
|
|
if (header.magic != MKTAG('U', 'P', 'D', 'F')) {
|
|
|
SendUartString("Wrong whole file magic.\n");
|
|
|
uart_send_ack(rx_frame.type, UUP_ACK_FAIL);
|
|
|
break;
|
|
|
}
|
|
|
checksum = header.checksum;
|
|
|
+ sysinfo->app_size = header.files[0].size;
|
|
|
} else if (uup_file_type == UPFILE_TYPE_RESOURCE) {
|
|
|
RomHeader header;
|
|
|
memcpy(&header, &buf[1], sizeof(RomHeader));
|