2
0
mirror of https://git.zx2c4.com/cgit synced 2025-08-31 06:15:08 +00:00

ui-ssdiff: move LCS table away from the stack

Printing deferred line changes for files containing long lines would
cause a segfault.

- limit LCS table size: 128x128.
- move LCS table to global context: avoid allocating/freeing memory
  for every deferred line change.

Signed-off-by: Jamie Couture <jamie.couture@gmail.com>
This commit is contained in:
Jamie Couture
2011-09-17 18:25:01 -04:00
committed by Lars Hjemli
parent bebe89d7c1
commit e19f7d7180
2 changed files with 43 additions and 2 deletions

View File

@@ -1,6 +1,18 @@
#ifndef UI_SSDIFF_H
#define UI_SSDIFF_H
/*
* ssdiff line limits
*/
#ifndef MAX_SSDIFF_M
#define MAX_SSDIFF_M 128
#endif
#ifndef MAX_SSDIFF_N
#define MAX_SSDIFF_N 128
#endif
#define MAX_SSDIFF_SIZE ((MAX_SSDIFF_M) * (MAX_SSDIFF_N))
extern void cgit_ssdiff_print_deferred_lines();
extern void cgit_ssdiff_line_cb(char *line, int len);