--- ./parser.c_orig 2013-01-22 17:10:44.897083508 +0530 +++ ./parser.c 2013-01-22 17:13:32.021087488 +0530 @@ -3922,7 +3922,7 @@ c = CUR_CHAR(l); } if ((in_space) && (normalize)) { - while (buf[len - 1] == 0x20) len--; + while ((len > 0) && (buf[len - 1] == 0x20)) len--; } buf[len] = 0; if (RAW == '<') {