Skip to content

Commit bf6c56b

Browse files
committed
data: add missing null check in DataNodeRef::parent
Signed-off-by: Renato Westphal <[email protected]>
1 parent 5703878 commit bf6c56b

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/data.rs

+8-2
Original file line numberDiff line numberDiff line change
@@ -1579,8 +1579,14 @@ unsafe impl<'a> Binding<'a> for DataNodeRef<'a> {
15791579
impl<'a> NodeIterable<'a> for DataNodeRef<'a> {
15801580
fn parent(&self) -> Option<DataNodeRef<'a>> {
15811581
// NOTE: can't use lyd_parent() since it's an inline function.
1582-
let rparent =
1583-
unsafe { &mut (*(*self.raw).parent).__bindgen_anon_1.node };
1582+
if self.raw.is_null() {
1583+
return None;
1584+
}
1585+
let parent_inner = unsafe { (*self.raw).parent };
1586+
if parent_inner.is_null() {
1587+
return None;
1588+
}
1589+
let rparent = unsafe { &mut (*parent_inner).__bindgen_anon_1.node };
15841590
unsafe { DataNodeRef::from_raw_opt(self.tree, rparent) }
15851591
}
15861592

0 commit comments

Comments
 (0)