diff --git a/jre_emul/android/libcore/luni/src/main/java/org/apache/harmony/xml/dom/NodeImpl.java b/jre_emul/android/libcore/luni/src/main/java/org/apache/harmony/xml/dom/NodeImpl.java
index <HASH>..<HASH> 100644
--- a/jre_emul/android/libcore/luni/src/main/java/org/apache/harmony/xml/dom/NodeImpl.java
+++ b/jre_emul/android/libcore/luni/src/main/java/org/apache/harmony/xml/dom/NodeImpl.java
@@ -16,6 +16,8 @@
 
 package org.apache.harmony.xml.dom;
 
+import com.google.j2objc.annotations.Weak;
+
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.ArrayList;
@@ -65,7 +67,7 @@ public abstract class NodeImpl implements Node {
      * The containing document. This is non-null except for DocumentTypeImpl
      * nodes created by the DOMImplementation.
      */
-    DocumentImpl document;
+    @Weak DocumentImpl document;
 
     NodeImpl(DocumentImpl document) {
         this.document = document;
Fix a leak by making NodeImpl.document @Weak.