aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2023-08-15 14:23:55 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2023-08-15 14:23:55 +0200
commit82a41a40344ef50711c9e9ef14002b81b7d6b9c2 (patch)
treecd218cdca33fddaaa3e2f3e8683bf6fa7e7ceee4 /src/main.rs
parenta2bcfa2fa3ea0f3add76bd2aad5399c25d85b654 (diff)
Revert "boost modify_cmdline speed by starting replacement at its offset on disk"
This reverts commit 0e3ad481706ff2f1e83487517415d251179ce3c3.
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs15
1 files changed, 3 insertions, 12 deletions
diff --git a/src/main.rs b/src/main.rs
index f72da42..89db44c 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -279,21 +279,12 @@ where
fn modify_cmdline(old: &str, new: &str) -> Result<()> {
let boot = boot_dev()?;
- let mut buf = fs::read(boot)?;
- let cmdline_buf = fs::read("/boot/cmdline.txt")?;
- let cmdline_offset = buf
- .windows(cmdline_buf.len())
- .position(|window| window == cmdline_buf)
- .ok_or(Error::NoCmdline)?
- / 512
- + 1;
+ let mut cmdline = fs::read(boot)?;
+ replace_slice(&mut cmdline, old.as_bytes(), new.as_bytes());
+ fs::write(boot, cmdline)?;
- replace_slice(&mut buf[cmdline_offset..], old.as_bytes(), new.as_bytes());
-
- fs::write(boot, buf)?;
nix::unistd::sync();
-
Ok(())
}