From 37c80d3b657446d46c820965b5f1cd049d9c449f Mon Sep 17 00:00:00 2001 From: Vicent Marti Date: Tue, 3 May 2011 00:07:02 +0300 Subject: [PATCH] Backport Upskirt changes - More lax support for table headers --- ext/markdown.c | 18 ++++++++++++++++-- upskirt | 2 +- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/ext/markdown.c b/ext/markdown.c index f0d5ad83..3a337c1b 100755 --- a/ext/markdown.c +++ b/ext/markdown.c @@ -1755,20 +1755,34 @@ parse_table_header(struct buf *ob, struct render *rndr, char *data, size_t size, under_end++; for (col = 0; col < *columns && i < under_end; ++col) { + size_t dashes = 0; + + while (i < under_end && (data[i] == ' ' || data[i] == '\t')) + i++; + if (data[i] == ':') { i++; (*column_data)[col] |= MKD_TABLE_ALIGN_L; + dashes++; } - while (i < under_end && data[i] == '-') - i++; + while (i < under_end && data[i] == '-') { + i++; dashes++; + } if (i < under_end && data[i] == ':') { i++; (*column_data)[col] |= MKD_TABLE_ALIGN_R; + dashes++; } + while (i < under_end && (data[i] == ' ' || data[i] == '\t')) + i++; + if (i < under_end && data[i] != '|') break; + if (dashes < 3) + break; + i++; } diff --git a/upskirt b/upskirt index e2a3063b..35a580ff 160000 --- a/upskirt +++ b/upskirt @@ -1 +1 @@ -Subproject commit e2a3063b6e05daedcc1e4c3b69dadc84dc6711c3 +Subproject commit 35a580ffce9de1b7a80bf7f2751c6908d9fee895