diff -up php-5.2.17/ext/tidy/tidy.c.bug-54682 php-5.2.17/ext/tidy/tidy.c --- php-5.2.17/ext/tidy/tidy.c.bug-54682 2012-01-12 11:42:01.000000000 +0700 +++ php-5.2.17/ext/tidy/tidy.c 2012-01-12 11:42:17.000000000 +0700 @@ -1178,7 +1178,7 @@ static PHP_FUNCTION(tidy_diagnose) { TIDY_FETCH_OBJECT; - if (tidyRunDiagnostics(obj->ptdoc->doc) >= 0) { + if (tidyStatus(obj->ptdoc->doc) != 0 && tidyRunDiagnostics(obj->ptdoc->doc) >= 0) { tidy_doc_update_properties(obj TSRMLS_CC); RETURN_TRUE; }