summaryrefslogtreecommitdiff
path: root/lib/table.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/table.h')
-rw-r--r--lib/table.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/table.h b/lib/table.h
index ece40d86b3..9637fec149 100644
--- a/lib/table.h
+++ b/lib/table.h
@@ -227,7 +227,7 @@ extern void route_table_iter_cleanup(route_table_iter_t *iter);
/* Lock node. */
static inline struct route_node *route_lock_node(struct route_node *node)
{
- node->lock++;
+ (*(unsigned *)&node->lock)++;
return node;
}
@@ -235,7 +235,7 @@ static inline struct route_node *route_lock_node(struct route_node *node)
static inline void route_unlock_node(struct route_node *node)
{
assert(node->lock > 0);
- node->lock--;
+ (*(unsigned *)&node->lock)--;
if (node->lock == 0)
route_node_delete(node);