diff --git a/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java b/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java
index 39486bdece0cf2327fd5fd3adf973d35dd4b1312..4ae6fdd24f3ed0a0227fa97f5e886722f37689af 100644
--- a/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java
+++ b/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java
@@ -645,16 +645,20 @@ public class AdjacencyMethodHandler extends AbstractMethodHandler {
             switch (direction) {
                 case BOTH:
                     thiz.unlinkBoth(null, label);
-                    thiz.getGraph().addFramedEdge(vertexFrame, thiz, label);
-                    thiz.getGraph().addFramedEdge(thiz, vertexFrame, label);
+                    if (vertexFrame != null) {
+                        thiz.getGraph().addFramedEdge(vertexFrame, thiz, label);
+                        thiz.getGraph().addFramedEdge(thiz, vertexFrame, label);
+                    }
                     break;
                 case IN:
                     thiz.unlinkIn(null, label);
-                    thiz.getGraph().addFramedEdge(vertexFrame, thiz, label);
+                    if (vertexFrame != null)
+                        thiz.getGraph().addFramedEdge(vertexFrame, thiz, label);
                     break;
                 case OUT:
                     thiz.unlinkOut(null, label);
-                    thiz.getGraph().addFramedEdge(thiz, vertexFrame, label);
+                    if (vertexFrame != null)
+                        thiz.getGraph().addFramedEdge(thiz, vertexFrame, label);
                     break;
                 default:
                     throw new IllegalStateException(method.getName() + " is annotated with a direction other than BOTH, IN, or OUT.");