aboutsummaryrefslogtreecommitdiff
path: root/src/sp_tree.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sp_tree.c')
-rw-r--r--src/sp_tree.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/sp_tree.c b/src/sp_tree.c
index 23f707b..5166cc3 100644
--- a/src/sp_tree.c
+++ b/src/sp_tree.c
@@ -12,6 +12,7 @@
*/
#include <kmi/sp_tree.h>
+#include <kmi/assert.h>
/**
* Basic BST left turn.
@@ -25,6 +26,8 @@ static void __sp_turn_left(struct sp_node *n)
struct sp_node *l = sp_left(n);
struct sp_node *p = sp_paren(n);
+ assert(l);
+
sp_paren(l) = sp_paren(n);
sp_left(n) = sp_right(l);
sp_paren(n) = l;
@@ -53,6 +56,8 @@ static void __sp_turn_right(struct sp_node *n)
struct sp_node *r = sp_right(n);
struct sp_node *p = sp_paren(n);
+ assert(r);
+
sp_paren(r) = sp_paren(n);
sp_right(n) = sp_left(r);
sp_paren(n) = r;