Moved clearing of "literal" flag.  The flag is set in setliteral which
can be called from a start tag handler.  When the corresponding end
tag is read the flag is cleared.  However, it didn't get cleared when
the start tag was for an empty element of the type <tag .../>.  This
modification fixes the problem.
diff --git a/Lib/xmllib.py b/Lib/xmllib.py
index 23f9cdc..e8210e6 100644
--- a/Lib/xmllib.py
+++ b/Lib/xmllib.py
@@ -691,7 +691,6 @@
                 if not self.stack or tag != self.stack[-1][0]:
                     self.handle_data(rawdata[i])
                     return i+1
-                self.literal = 0
             k = res.end(0)
         if endbracket.match(rawdata, k) is None:
             self.syntax_error('garbage in end tag')
@@ -707,6 +706,7 @@
 
     # Internal -- finish processing of end tag
     def finish_endtag(self, tag):
+        self.literal = 0
         if not tag:
             self.syntax_error('name-less end tag')
             found = len(self.stack) - 1