chardev/baum: Use definitions to avoid dynamic stack allocation
We know 'x * y' will be at most 'X_MAX * Y_MAX' (which is not a big value, it is actually 84). Instead of having the compiler use variable-length array, declare an array able to hold the maximum 'x * y'. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 20220819153931.3147384-3-peter.maydell@linaro.org
This commit is contained in:
parent
f63a6e381c
commit
1e3acd3357
@ -383,9 +383,9 @@ static int baum_eat_packet(BaumChardev *baum, const uint8_t *buf, int len)
|
||||
switch (req) {
|
||||
case BAUM_REQ_DisplayData:
|
||||
{
|
||||
uint8_t cells[baum->x * baum->y], c;
|
||||
uint8_t text[baum->x * baum->y];
|
||||
uint8_t zero[baum->x * baum->y];
|
||||
uint8_t cells[X_MAX * Y_MAX], c;
|
||||
uint8_t text[X_MAX * Y_MAX];
|
||||
uint8_t zero[X_MAX * Y_MAX];
|
||||
int cursor = BRLAPI_CURSOR_OFF;
|
||||
int i;
|
||||
|
||||
@ -408,7 +408,7 @@ static int baum_eat_packet(BaumChardev *baum, const uint8_t *buf, int len)
|
||||
}
|
||||
timer_del(baum->cellCount_timer);
|
||||
|
||||
memset(zero, 0, sizeof(zero));
|
||||
memset(zero, 0, baum->x * baum->y);
|
||||
|
||||
brlapi_writeArguments_t wa = {
|
||||
.displayNumber = BRLAPI_DISPLAY_DEFAULT,
|
||||
|
Loading…
Reference in New Issue
Block a user