fix error in line printing
This commit is contained in:
		
							parent
							
								
									eebc9343b0
								
							
						
					
					
						commit
						d43d008cb8
					
				| @ -203,7 +203,7 @@ ncdc_textview_render_msgs(ncdc_textview_t v, WINDOW *win, int lines, int cols) | ||||
|     for (i = msgs-1; i >= 0; i--) { | ||||
|         dc_message_t m = dc_channel_nth_message(v->channel, i); | ||||
|         wchar_t *s = ncdc_textview_format(m); | ||||
|         wchar_t const *end = s, *last = NULL; | ||||
|         wchar_t const *end = s, *last = s; | ||||
|         size_t len = 0; | ||||
|         size_t needed_lines = 0; | ||||
| 
 | ||||
| @ -211,16 +211,13 @@ ncdc_textview_render_msgs(ncdc_textview_t v, WINDOW *win, int lines, int cols) | ||||
|          */ | ||||
|         while ((end = wcschr(end, '\n')) != NULL) { | ||||
|             ++needed_lines; | ||||
|             ++end; | ||||
| 
 | ||||
|             len = wcswidth(last, (end - last)); | ||||
|             needed_lines += (len % cols); | ||||
|             len = wcswidth(last, (end - last - 1)); | ||||
|             needed_lines += (len / cols); | ||||
|             last = end; | ||||
|         } | ||||
| 
 | ||||
|         if (last == NULL) { | ||||
|             last = s; | ||||
|         } | ||||
| 
 | ||||
|         len = wcswidth(last, wcslen(last)); | ||||
|         needed_lines += (len / cols) + 1; | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user