mirror of
https://github.com/urbit/ares.git
synced 2024-11-22 15:08:54 +03:00
Merge branch 'status' into eamsden/flog
This commit is contained in:
commit
16c4c059a4
@ -1185,6 +1185,11 @@ fn exit(
|
|||||||
unsafe {
|
unsafe {
|
||||||
context.restore(snapshot);
|
context.restore(snapshot);
|
||||||
|
|
||||||
|
if context.stack.copying() {
|
||||||
|
assert!(context.stack.get_frame_pointer() != virtual_frame);
|
||||||
|
context.stack.frame_pop();
|
||||||
|
}
|
||||||
|
|
||||||
let stack = &mut context.stack;
|
let stack = &mut context.stack;
|
||||||
let mut preserve = match error {
|
let mut preserve = match error {
|
||||||
Error::ScryBlocked(path) => path,
|
Error::ScryBlocked(path) => path,
|
||||||
@ -1192,6 +1197,7 @@ fn exit(
|
|||||||
// Return $tang of traces
|
// Return $tang of traces
|
||||||
let h = *(stack.local_noun_pointer(0));
|
let h = *(stack.local_noun_pointer(0));
|
||||||
// XX: Small chance of clobbering something important after OOM?
|
// XX: Small chance of clobbering something important after OOM?
|
||||||
|
// XX: what if we OOM while making a stack trace
|
||||||
T(stack, &[h, t])
|
T(stack, &[h, t])
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -137,6 +137,10 @@ impl NockStack {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn copying(&self) -> bool {
|
||||||
|
self.pc
|
||||||
|
}
|
||||||
|
|
||||||
/** Current frame pointer of this NockStack */
|
/** Current frame pointer of this NockStack */
|
||||||
pub fn get_frame_pointer(&self) -> *const u64 {
|
pub fn get_frame_pointer(&self) -> *const u64 {
|
||||||
self.frame_pointer
|
self.frame_pointer
|
||||||
|
@ -1134,6 +1134,7 @@ _pending_flist_merge(BT_state *state)
|
|||||||
src_head = src_head->next;
|
src_head = src_head->next;
|
||||||
free(prev);
|
free(prev);
|
||||||
}
|
}
|
||||||
|
state->pending_flist = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user