edit in elfedit/src/lib.rs at line 84
+ #[error("No section table")]
+ NoSectionTable,
replacement in elfedit/src/lib.rs at line 557
[3.5179]→[3.11302:11383](∅→∅),
[3.11302]→[3.11302:11383](∅→∅) − let map = unsafe { memmap::MmapOptions::new().map_mut(&file).unwrap() };
+ let map = unsafe { memmap::MmapOptions::new().map_mut(&file)? };
replacement in elfedit/src/lib.rs at line 628
[3.3198]→[3.3198:3244](∅→∅) − let s = self.section(i as usize);
+ let s = self.section(i as usize).unwrap();
replacement in elfedit/src/lib.rs at line 631
[3.3323]→[3.3323:3372](∅→∅) − let names = self.names(id.data, &h);
+ let names = self.names(id.data, &h).unwrap();
replacement in elfedit/src/lib.rs at line 697
[3.11565]→[3.11565:11628](∅→∅) − fn section<'a>(&'a self, n: usize) -> SectionHeader_<'a> {
+ fn section<'a>(&'a self, n: usize) -> Result<SectionHeader_<'a>, Error> {
replacement in elfedit/src/lib.rs at line 704
[3.11856]→[3.11856:11947](∅→∅) − assert!(ph + std::mem::size_of::<SectionHeader<u32>>() <= self.map.len());
+ if ph + std::mem::size_of::<SectionHeader<u32>>() > self.map.len() {
+ return Err(Error::NoSectionTable)
+ }
replacement in elfedit/src/lib.rs at line 708
[3.12027]→[3.12027:12072](∅→∅) − SectionHeader_::B32(unsafe {
+ Ok(SectionHeader_::B32(unsafe {
replacement in elfedit/src/lib.rs at line 710
[3.12166]→[3.12166:12185](∅→∅) replacement in elfedit/src/lib.rs at line 713
[3.12232]→[3.12232:12323](∅→∅) − assert!(ph + std::mem::size_of::<SectionHeader<u64>>() <= self.map.len());
+ if ph + std::mem::size_of::<SectionHeader<u64>>() > self.map.len() {
+ return Err(Error::NoSectionTable)
+ }
replacement in elfedit/src/lib.rs at line 717
[3.12403]→[3.12403:12448](∅→∅) − SectionHeader_::B64(unsafe {
+ Ok(SectionHeader_::B64(unsafe {
replacement in elfedit/src/lib.rs at line 719
[3.12542]→[3.12542:12561](∅→∅) replacement in elfedit/src/lib.rs at line 814
[3.15411]→[3.15411:15487](∅→∅),
[3.15487]→[3.15487:15547](∅→∅) − fn names<'a>(&'a self, id: Endianness, header: &Header_) -> Names<'a> {
− let s = self.section(header.shstrndx(id) as usize);
+ fn names<'a>(&'a self, id: Endianness, header: &Header_) -> Result<Names<'a>, Error> {
+ let s = self.section(header.shstrndx(id) as usize)?;
replacement in elfedit/src/lib.rs at line 818
[3.15631]→[3.15631:15679](∅→∅) − Names(&self.map[offset..offset + size])
+ Ok(Names(&self.map[offset..offset + size]))
replacement in elfedit/src/lib.rs at line 894
[3.18403]→[3.18403:18453](∅→∅) − let names = self.names(id.data, &header);
+ let names = match self.names(id.data, &header) {
+ Ok(names) => names,
+ Err(Error::NoSectionTable) => {
+ return Ok(None)
+ },
+ Err(e) => return Err(e)
+ };
replacement in elfedit/src/lib.rs at line 905
[3.18617]→[3.18617:18663](∅→∅) − let s = self.section(i as usize);
+ let s = self.section(i as usize)?;
replacement in elfedit/src/lib.rs at line 943
[3.1516]→[3.1516:1566](∅→∅) − let names = self.names(id.data, &header);
+ let names = self.names(id.data, &header)?;
replacement in elfedit/src/lib.rs at line 945
[3.1610]→[3.1610:1656](∅→∅) − let s = self.section(i as usize);
+ let s = self.section(i as usize)?;
replacement in elfedit/src/lib.rs at line 959
[3.20724]→[3.20724:20769](∅→∅) − let names = self.names(id, &header);
+ let names = self.names(id, &header)?;
replacement in elfedit/src/lib.rs at line 1005
[3.22076]→[3.22076:22138](∅→∅) − let off = self.section(interp_i as usize).offset(id);
+ let off = self.section(interp_i as usize)?.offset(id);
replacement in elfedit/src/lib.rs at line 1016
[3.22418]→[3.22418:22484](∅→∅) − let off = self.section(interp_i as usize).offset(id);
+ let off = self.section(interp_i as usize)?.offset(id);
replacement in elfedit/src/lib.rs at line 1042
[3.6451]→[3.6451:6503](∅→∅) − let sh = self.section(p_ as usize);
+ let sh = self.section(p_ as usize).unwrap();
replacement in elfedit/src/lib.rs at line 1477
[3.16600]→[2.2446:2499](∅→∅) − elf.update_dynamic::<u32>(id, t)
+ elf.update_dynamic::<u32>(id, t)?
replacement in elfedit/src/lib.rs at line 1482
[3.16772]→[2.2500:2553](∅→∅) − elf.update_dynamic::<u64>(id, t)
+ elf.update_dynamic::<u64>(id, t)?
replacement in elfedit/src/lib.rs at line 1492
[3.30512]→[3.17002:17075](∅→∅) − fn update_dynamic<F: Flags>(&self, id: Endianness, f: &mut F::Dyn) {
+ fn update_dynamic<F: Flags>(&self, id: Endianness, f: &mut F::Dyn) -> Result<(), Error> {
replacement in elfedit/src/lib.rs at line 1495
[3.17195]→[3.17195:17234](∅→∅) − let sec = self.section(s);
+ let sec = self.section(s)?;
replacement in elfedit/src/lib.rs at line 1499
[3.17414]→[3.17414:17453](∅→∅) − let sec = self.section(s);
+ let sec = self.section(s)?;
replacement in elfedit/src/lib.rs at line 1503
[3.5234]→[3.5234:5273](∅→∅) − let sec = self.section(s);
+ let sec = self.section(s)?;
edit in elfedit/src/lib.rs at line 1506