diff --git a/src/knot/zone/zonedb.c b/src/knot/zone/zonedb.c
index 99ecfdee02af0bff78f4cdf43f0a23b13fe83ad3..c7f61a60bf3e902c43250c5e6d3c385f439b33f7 100644
--- a/src/knot/zone/zonedb.c
+++ b/src/knot/zone/zonedb.c
@@ -80,6 +80,10 @@ int knot_zonedb_insert(knot_zonedb_t *db, zone_t *zone)
 	}
 
 	int name_size = knot_dname_size(zone->name);
+	if (name_size < 0) {
+		return KNOT_EINVAL;
+	}
+
 	return hhash_insert(db->hash, (const char*)zone->name, name_size, zone);
 }