diff --git a/HTMLtree.c b/HTMLtree.c
index 51a72f9..28226ea 100644
--- a/HTMLtree.c
+++ b/HTMLtree.c
@@ -516,15 +516,19 @@
 	return;
     }
     if (cur->type == HTML_PI_NODE) {
+	if (cur->name == NULL)
+	    return;
+	xmlBufferWriteChar(buf, "<?");
+	xmlBufferWriteCHAR(buf, cur->name);
 	if (cur->content != NULL) {
-	    xmlBufferWriteChar(buf, "<?");
+	    xmlBufferWriteChar(buf, " ");
 #ifndef XML_USE_BUFFER_CONTENT
 	    xmlBufferWriteCHAR(buf, cur->content);
 #else
 	    xmlBufferWriteCHAR(buf, xmlBufferContent(cur->content));
 #endif
-	    xmlBufferWriteChar(buf, ">");
 	}
+	xmlBufferWriteChar(buf, ">");
 	return;
     }
     if (cur->type == HTML_ENTITY_REF_NODE) {
@@ -880,16 +884,20 @@
 	return;
     }
     if (cur->type == HTML_PI_NODE) {
+	if (cur->name == NULL)
+	    return;
+	xmlOutputBufferWriteString(buf, "<?");
+	xmlOutputBufferWriteString(buf, (const char *)cur->name);
 	if (cur->content != NULL) {
-	    xmlOutputBufferWriteString(buf, "<?");
+	    xmlOutputBufferWriteString(buf, " ");
 #ifndef XML_USE_BUFFER_CONTENT
 	    xmlOutputBufferWriteString(buf, (const char *)cur->content);
 #else
 	    xmlOutputBufferWriteString(buf, (const char *)
 		                       xmlBufferContent(cur->content));
 #endif
-	    xmlOutputBufferWriteString(buf, ">");
 	}
+	xmlOutputBufferWriteString(buf, ">");
 	return;
     }
     if (cur->type == HTML_ENTITY_REF_NODE) {
