diff --git a/gluon/html.py b/gluon/html.py
index 7177a743..00902896 100644
--- a/gluon/html.py
+++ b/gluon/html.py
@@ -668,7 +668,7 @@ class XML(XmlComponent):
def XML_unpickle(data):
- return marshal.loads(data)
+ return XML(marshal.loads(data))
def XML_pickle(data):