mirror of
https://git.proxmox.com/git/fwupd
synced 2025-08-08 09:13:22 +00:00
Always set the progress ID when setting the number of steps
This fixes a potential critical warning (seen in the hailuck plugin, although others may be affected too) where the parent does not set the ID before the child sets the number of steps. It's much more helpful to have the child position for debugging anyway, so just set it in all cases.
This commit is contained in:
parent
ac55012001
commit
c1fc8a55e0
@ -816,6 +816,7 @@ fu_ata_device_write_firmware(FuDevice *device,
|
|||||||
/* write each block */
|
/* write each block */
|
||||||
fu_progress_set_status(progress, FWUPD_STATUS_DEVICE_WRITE);
|
fu_progress_set_status(progress, FWUPD_STATUS_DEVICE_WRITE);
|
||||||
chunks = fu_chunk_array_new_from_bytes(fw, 0x00, 0x00, chunksz);
|
chunks = fu_chunk_array_new_from_bytes(fw, 0x00, 0x00, chunksz);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (guint i = 0; i < chunks->len; i++) {
|
for (guint i = 0; i < chunks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, i);
|
FuChunk *chk = g_ptr_array_index(chunks, i);
|
||||||
|
@ -344,6 +344,7 @@ fu_bcm57xx_recovery_device_nvram_read(FuBcm57xxRecoveryDevice *self,
|
|||||||
FuProgress *progress,
|
FuProgress *progress,
|
||||||
GError **error)
|
GError **error)
|
||||||
{
|
{
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, bufsz);
|
fu_progress_set_steps(progress, bufsz);
|
||||||
for (guint i = 0; i < bufsz; i++) {
|
for (guint i = 0; i < bufsz; i++) {
|
||||||
BcmRegNVMCommand tmp = {0};
|
BcmRegNVMCommand tmp = {0};
|
||||||
@ -406,6 +407,7 @@ fu_bcm57xx_recovery_device_nvram_write(FuBcm57xxRecoveryDevice *self,
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, bufsz_dwrds);
|
fu_progress_set_steps(progress, bufsz_dwrds);
|
||||||
for (guint i = 0; i < bufsz_dwrds; i++) {
|
for (guint i = 0; i < bufsz_dwrds; i++) {
|
||||||
BcmRegNVMCommand tmp = {0};
|
BcmRegNVMCommand tmp = {0};
|
||||||
|
@ -379,6 +379,7 @@ fu_dfu_csr_device_download(FuDevice *device,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* send to hardware */
|
/* send to hardware */
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (idx = 0; idx < chunks->len; idx++) {
|
for (idx = 0; idx < chunks->len; idx++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, idx);
|
FuChunk *chk = g_ptr_array_index(chunks, idx);
|
||||||
|
@ -288,6 +288,7 @@ fu_fastboot_device_download(FuDevice *device, GBytes *fw, FuProgress *progress,
|
|||||||
0x00, /* start addr */
|
0x00, /* start addr */
|
||||||
0x00, /* page_sz */
|
0x00, /* page_sz */
|
||||||
self->blocksz);
|
self->blocksz);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (guint i = 0; i < chunks->len; i++) {
|
for (guint i = 0; i < chunks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, i);
|
FuChunk *chk = g_ptr_array_index(chunks, i);
|
||||||
|
@ -114,6 +114,7 @@ fu_hailuck_bl_device_dump_firmware(FuDevice *device, FuProgress *progress, GErro
|
|||||||
/* receive data back */
|
/* receive data back */
|
||||||
fu_byte_array_set_size(fwbuf, fwsz, 0x00);
|
fu_byte_array_set_size(fwbuf, fwsz, 0x00);
|
||||||
chunks = fu_chunk_array_mutable_new(fwbuf->data, fwbuf->len, 0x0, 0x0, 2048);
|
chunks = fu_chunk_array_mutable_new(fwbuf->data, fwbuf->len, 0x0, 0x0, 2048);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (guint i = 0; i < chunks->len; i++) {
|
for (guint i = 0; i < chunks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, i);
|
FuChunk *chk = g_ptr_array_index(chunks, i);
|
||||||
|
@ -237,6 +237,7 @@ fu_superio_it55_device_get_firmware(FuDevice *device, FuProgress *progress, GErr
|
|||||||
g_autofree guint8 *buf = NULL;
|
g_autofree guint8 *buf = NULL;
|
||||||
|
|
||||||
buf = g_malloc0(fwsize);
|
buf = g_malloc0(fwsize);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, block_count);
|
fu_progress_set_steps(progress, block_count);
|
||||||
for (guint i = 0; i < block_count; ++i) {
|
for (guint i = 0; i < block_count; ++i) {
|
||||||
if (!fu_superio_device_ec_write_cmd(self, SIO_CMD_EC_READ_BLOCK, error) ||
|
if (!fu_superio_device_ec_write_cmd(self, SIO_CMD_EC_READ_BLOCK, error) ||
|
||||||
|
@ -254,6 +254,7 @@ fu_superio_it89_device_read_addr(FuSuperioDevice *self,
|
|||||||
|
|
||||||
/* read out data */
|
/* read out data */
|
||||||
buf = g_malloc0(size);
|
buf = g_malloc0(size);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, size);
|
fu_progress_set_steps(progress, size);
|
||||||
for (guint i = 0; i < size; i++) {
|
for (guint i = 0; i < size; i++) {
|
||||||
if (!fu_superio_device_ec_write_cmd(self, SIO_EC_PMC_PM1DI, error))
|
if (!fu_superio_device_ec_write_cmd(self, SIO_EC_PMC_PM1DI, error))
|
||||||
|
@ -345,6 +345,7 @@ fu_synaptics_mst_device_update_esm(FuSynapticsMstDevice *self,
|
|||||||
g_usleep(FLASH_SETTLE_TIME);
|
g_usleep(FLASH_SETTLE_TIME);
|
||||||
|
|
||||||
/* write firmware */
|
/* write firmware */
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, write_loops);
|
fu_progress_set_steps(progress, write_loops);
|
||||||
for (guint32 i = 0; i < write_loops; i++) {
|
for (guint32 i = 0; i < write_loops; i++) {
|
||||||
g_autoptr(GError) error_local = NULL;
|
g_autoptr(GError) error_local = NULL;
|
||||||
|
@ -294,6 +294,7 @@ fu_synaptics_rmi_v7_device_write_partition(FuSynapticsRmiDevice *self,
|
|||||||
0x00, /* start addr */
|
0x00, /* start addr */
|
||||||
0x00, /* page_sz */
|
0x00, /* page_sz */
|
||||||
(gsize)flash->payload_length * (gsize)flash->block_size);
|
(gsize)flash->payload_length * (gsize)flash->block_size);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (guint i = 0; i < chunks->len; i++) {
|
for (guint i = 0; i < chunks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, i);
|
FuChunk *chk = g_ptr_array_index(chunks, i);
|
||||||
|
@ -217,6 +217,7 @@ fu_vli_device_spi_read(FuVliDevice *self,
|
|||||||
|
|
||||||
/* get data from hardware */
|
/* get data from hardware */
|
||||||
chunks = fu_chunk_array_mutable_new(buf, bufsz, address, 0x0, FU_VLI_DEVICE_TXSIZE);
|
chunks = fu_chunk_array_mutable_new(buf, bufsz, address, 0x0, FU_VLI_DEVICE_TXSIZE);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (guint i = 0; i < chunks->len; i++) {
|
for (guint i = 0; i < chunks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, i);
|
FuChunk *chk = g_ptr_array_index(chunks, i);
|
||||||
@ -385,6 +386,7 @@ fu_vli_device_spi_erase(FuVliDevice *self,
|
|||||||
{
|
{
|
||||||
g_autoptr(GPtrArray) chunks = fu_chunk_array_new(NULL, sz, addr, 0x0, 0x1000);
|
g_autoptr(GPtrArray) chunks = fu_chunk_array_new(NULL, sz, addr, 0x0, 0x1000);
|
||||||
g_debug("erasing 0x%x bytes @0x%x", (guint)sz, addr);
|
g_debug("erasing 0x%x bytes @0x%x", (guint)sz, addr);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, chunks->len);
|
fu_progress_set_steps(progress, chunks->len);
|
||||||
for (guint i = 0; i < chunks->len; i++) {
|
for (guint i = 0; i < chunks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(chunks, i);
|
FuChunk *chk = g_ptr_array_index(chunks, i);
|
||||||
|
@ -653,6 +653,7 @@ fu_vli_pd_parade_device_dump_firmware(FuDevice *device, FuProgress *progress, GE
|
|||||||
fu_progress_set_status(progress, FWUPD_STATUS_DEVICE_VERIFY);
|
fu_progress_set_status(progress, FWUPD_STATUS_DEVICE_VERIFY);
|
||||||
fu_byte_array_set_size(fw, fu_device_get_firmware_size_max(device), 0x00);
|
fu_byte_array_set_size(fw, fu_device_get_firmware_size_max(device), 0x00);
|
||||||
blocks = fu_chunk_array_mutable_new(fw->data, fw->len, 0x0, 0x0, 0x10000);
|
blocks = fu_chunk_array_mutable_new(fw->data, fw->len, 0x0, 0x0, 0x10000);
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_steps(progress, blocks->len);
|
fu_progress_set_steps(progress, blocks->len);
|
||||||
for (guint i = 0; i < blocks->len; i++) {
|
for (guint i = 0; i < blocks->len; i++) {
|
||||||
FuChunk *chk = g_ptr_array_index(blocks, i);
|
FuChunk *chk = g_ptr_array_index(blocks, i);
|
||||||
|
@ -226,6 +226,7 @@ fu_vli_usbhub_msp430_device_write_firmware(FuDevice *device,
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
/* transfer by I²C write, and check status by I²C read */
|
/* transfer by I²C write, and check status by I²C read */
|
||||||
|
fu_progress_set_id(progress, G_STRLOC);
|
||||||
fu_progress_set_status(progress, FWUPD_STATUS_DEVICE_WRITE);
|
fu_progress_set_status(progress, FWUPD_STATUS_DEVICE_WRITE);
|
||||||
fu_progress_set_steps(progress, records->len);
|
fu_progress_set_steps(progress, records->len);
|
||||||
for (guint j = 0; j < records->len; j++) {
|
for (guint j = 0; j < records->len; j++) {
|
||||||
|
Loading…
Reference in New Issue
Block a user