summaryrefslogtreecommitdiff
path: root/includes/tidy/RaggettInternalHHVM.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/tidy/RaggettInternalHHVM.php')
-rw-r--r--includes/tidy/RaggettInternalHHVM.php29
1 files changed, 29 insertions, 0 deletions
diff --git a/includes/tidy/RaggettInternalHHVM.php b/includes/tidy/RaggettInternalHHVM.php
new file mode 100644
index 00000000..2a3986df
--- /dev/null
+++ b/includes/tidy/RaggettInternalHHVM.php
@@ -0,0 +1,29 @@
+<?php
+
+namespace MediaWiki\Tidy;
+
+class RaggettInternalHHVM extends RaggettBase {
+ /**
+ * Use the HTML tidy extension to use the tidy library in-process,
+ * saving the overhead of spawning a new process.
+ *
+ * @param string $text HTML to check
+ * @param bool $stderr Whether to read result from error status instead of output
+ * @param int &$retval Exit code (-1 on internal error)
+ * @return string|null
+ */
+ protected function cleanWrapped( $text, $stderr = false, &$retval = null ) {
+ if ( $stderr ) {
+ throw new Exception( "\$stderr cannot be used with RaggettInternalHHVM" );
+ }
+ $cleansource = tidy_repair_string( $text, $this->config['tidyConfigFile'], 'utf8' );
+ if ( $cleansource === false ) {
+ $cleansource = null;
+ $retval = -1;
+ } else {
+ $retval = 0;
+ }
+
+ return $cleansource;
+ }
+}