diff --git a/src/xpath.c b/src/xpath.c
index 4dbd7ca..da661a9 100644
--- a/src/xpath.c
+++ b/src/xpath.c
@@ -742,11 +742,13 @@
 set_init(struct lyxp_set *new, struct lyxp_set *set)
 {
     memset(new, 0, sizeof *new);
-    new->ctx = set->ctx;
-    new->ctx_node = set->ctx_node;
-    new->local_mod = set->local_mod;
-    new->trees = set->trees;
-    new->format = set->format;
+    if (set) {
+        new->ctx = set->ctx;
+        new->ctx_node = set->ctx_node;
+        new->local_mod = set->local_mod;
+        new->trees = set->trees;
+        new->format = set->format;
+    }
 }
 
 /**
@@ -6903,7 +6905,7 @@
         break;
 
     default:
-        LOGINT_RET(set->ctx);
+        LOGINT_RET(set ? set->ctx : NULL);
     }
 
     return LY_SUCCESS;
@@ -7163,7 +7165,7 @@
             break;
 
         default:
-            LOGINT_RET(set->ctx);
+            LOGINT_RET(set ? set->ctx : NULL);
         }
     } while ((exp->used > *exp_idx) && (exp->tokens[*exp_idx] == LYXP_TOKEN_OPERATOR_PATH));
 
@@ -7590,7 +7592,7 @@
             if (set) {
                 set_scnode_clear_ctx(set);
             }
-            rc = eval_number(set->ctx, exp, exp_idx, NULL);
+            rc = eval_number(NULL, exp, exp_idx, NULL);
         } else {
             rc = eval_number(set->ctx, exp, exp_idx, set);
         }
