cgitsb/ui-ssdiff.h
Jamie Couture e19f7d7180 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>
2012-01-03 15:16:01 +00:00

26 lignes
479 B
C

#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);
extern void cgit_ssdiff_header_begin();
extern void cgit_ssdiff_header_end();
extern void cgit_ssdiff_footer();
#endif /* UI_SSDIFF_H */