Skip to content

Commit

Permalink
fix test_new_from_file_crafted_executable for m1
Browse files Browse the repository at this point in the history
  • Loading branch information
apfitzge committed Jun 16, 2022
1 parent d56a706 commit bfced46
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions runtime/src/append_vec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -899,16 +899,16 @@ pub mod tests {
let accounts = av.accounts(0);
let account = accounts.first().unwrap();

// upper 7-bits are not 0, so sanitization should fail
assert!(!account.sanitize_executable());

// we can observe crafted value by ref
{
let executable_bool: &bool = &account.account_meta.executable;
// Depending on use, *executable_bool can be truthy or falsy due to direct memory manipulation
// assert_eq! thinks *executable_bool is equal to false but the if condition thinks it's not, contradictorily.
// Depending on use, *executable_bool can be truthy or falsy due to direct memory manipulation.
// Behavior is dependent on compiler.
// assert! thinks !*executable_bool is true, for all compilers
assert!(!*executable_bool);
const FALSE: bool = false; // keep clippy happy
if *executable_bool == FALSE {
panic!("This didn't occur if this test passed.");
}
assert_eq!(*account.ref_executable_byte(), crafted_executable);
}

Expand Down

0 comments on commit bfced46

Please sign in to comment.