thermferm/lcd-buffer.c

changeset 213
2317b8d644fa
parent 205
ca18ff45deba
child 214
37d1eb0e1d66
equal deleted inserted replaced
212:a76cbe676bf1 213:2317b8d644fa
46 va_list va_ptr; 46 va_list va_ptr;
47 lcd_rows *tmp, *newrow; 47 lcd_rows *tmp, *newrow;
48 int i = 0; 48 int i = 0;
49 49
50 va_start(va_ptr, format); 50 va_start(va_ptr, format);
51 vsnprintf(buf, 20 * sizeof(char), format, va_ptr); 51 vsnprintf(buf, Config.lcd_cols * sizeof(char), format, va_ptr);
52 va_end(va_ptr); 52 va_end(va_ptr);
53 53
54 /* 54 /*
55 * Check if the line in row is allocated. If not, do it 55 * Check if the line in row is allocated. If not, do it
56 * and make sure the chain is valid. 56 * and make sure the chain is valid.
57 */ 57 */
58 while (row > current_lines) { 58 while (row > current_lines) {
59 59
60 newrow = (lcd_rows *)malloc(sizeof(lcd_rows)); 60 newrow = (lcd_rows *)malloc(sizeof(lcd_rows));
61 newrow->next = NULL; 61 newrow->next = NULL;
62 snprintf(newrow->row, 21 * sizeof(char), " "); 62 snprintf(newrow->row, (Config.lcd_cols + 1) * sizeof(char), " ");
63 63
64 if (my_lcd_rows == NULL) { 64 if (my_lcd_rows == NULL) {
65 my_lcd_rows = newrow; 65 my_lcd_rows = newrow;
66 } else { 66 } else {
67 for (tmp = my_lcd_rows; tmp; tmp = tmp->next) { 67 for (tmp = my_lcd_rows; tmp; tmp = tmp->next) {

mercurial