Sweep some more panics (#2848)
* purge unwraps from ethcrypto, ethstore * sweep panics from util
This commit is contained in:
committed by
Gav Wood
parent
d1d82e787b
commit
33748c2046
@@ -95,8 +95,8 @@ macro_rules! flushln {
|
||||
|
||||
#[doc(hidden)]
|
||||
pub fn flush(s: String) {
|
||||
::std::io::stdout().write(s.as_bytes()).unwrap();
|
||||
::std::io::stdout().flush().unwrap();
|
||||
let _ = ::std::io::stdout().write(s.as_bytes());
|
||||
let _ = ::std::io::stdout().flush();
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
@@ -383,7 +383,10 @@ impl JournalDB for EarlyMergeDB {
|
||||
let trace = false;
|
||||
|
||||
// record new commit's details.
|
||||
let mut refs = self.refs.as_ref().unwrap().write();
|
||||
let mut refs = match self.refs.as_ref() {
|
||||
Some(refs) => refs.write(),
|
||||
None => return Ok(0),
|
||||
};
|
||||
|
||||
{
|
||||
let mut index = 0usize;
|
||||
|
||||
@@ -345,7 +345,8 @@ impl Database {
|
||||
let cfnames: Vec<&str> = cfnames.iter().map(|n| n as &str).collect();
|
||||
match DB::open_cf(&opts, path, &cfnames, &cf_options) {
|
||||
Ok(db) => {
|
||||
cfs = cfnames.iter().map(|n| db.cf_handle(n).unwrap()).collect();
|
||||
cfs = cfnames.iter().map(|n| db.cf_handle(n)
|
||||
.expect("rocksdb opens a cf_handle for each cfname; qed")).collect();
|
||||
assert!(cfs.len() == columns as usize);
|
||||
Ok(db)
|
||||
}
|
||||
@@ -353,7 +354,7 @@ impl Database {
|
||||
// retry and create CFs
|
||||
match DB::open_cf(&opts, path, &[], &[]) {
|
||||
Ok(mut db) => {
|
||||
cfs = cfnames.iter().enumerate().map(|(i, n)| db.create_cf(n, &cf_options[i]).unwrap()).collect();
|
||||
cfs = try!(cfnames.iter().enumerate().map(|(i, n)| db.create_cf(n, &cf_options[i])).collect());
|
||||
Ok(db)
|
||||
},
|
||||
err @ Err(_) => err,
|
||||
@@ -537,7 +538,8 @@ impl Database {
|
||||
match *self.db.read() {
|
||||
Some(DBAndColumns { ref db, ref cfs }) => {
|
||||
let mut iter = col.map_or_else(|| db.iterator_opt(IteratorMode::From(prefix, Direction::Forward), &self.read_opts),
|
||||
|c| db.iterator_cf_opt(cfs[c as usize], IteratorMode::From(prefix, Direction::Forward), &self.read_opts).unwrap());
|
||||
|c| db.iterator_cf_opt(cfs[c as usize], IteratorMode::From(prefix, Direction::Forward), &self.read_opts)
|
||||
.expect("iterator params are valid; qed"));
|
||||
match iter.next() {
|
||||
// TODO: use prefix_same_as_start read option (not availabele in C API currently)
|
||||
Some((k, v)) => if k[0 .. prefix.len()] == prefix[..] { Some(v) } else { None },
|
||||
@@ -554,7 +556,8 @@ impl Database {
|
||||
match *self.db.read() {
|
||||
Some(DBAndColumns { ref db, ref cfs }) => {
|
||||
col.map_or_else(|| DatabaseIterator { iter: db.iterator_opt(IteratorMode::Start, &self.read_opts) },
|
||||
|c| DatabaseIterator { iter: db.iterator_cf_opt(cfs[c as usize], IteratorMode::Start, &self.read_opts).unwrap() })
|
||||
|c| DatabaseIterator { iter: db.iterator_cf_opt(cfs[c as usize], IteratorMode::Start, &self.read_opts)
|
||||
.expect("iterator params are valid; qed") })
|
||||
},
|
||||
None => panic!("Not supported yet") //TODO: return an empty iterator or change return type
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ impl MemoryDB {
|
||||
(*p).insert(key.clone(), (value, 0));
|
||||
}
|
||||
}
|
||||
self.raw(key).unwrap()
|
||||
self.raw(key).expect("entry just inserted into data; qed")
|
||||
}
|
||||
|
||||
/// Returns the size of allocated heap memory
|
||||
|
||||
@@ -296,7 +296,7 @@ impl<'a> TrieDBIterator<'a> {
|
||||
status: Status::Entering,
|
||||
node: try!(self.db.get_node(d, &mut NoOp, 0)),
|
||||
});
|
||||
match self.trail.last().unwrap().node {
|
||||
match self.trail.last().expect("just pushed item; qed").node {
|
||||
Node::Leaf(n, _) | Node::Extension(n, _) => { self.key_nibbles.extend(n.iter()); },
|
||||
_ => {}
|
||||
}
|
||||
@@ -346,7 +346,8 @@ impl<'a> Iterator for TrieDBIterator<'a> {
|
||||
(Status::AtChild(i), Node::Branch(children, _)) if children[i].len() > 0 => {
|
||||
match i {
|
||||
0 => self.key_nibbles.push(0),
|
||||
i => *self.key_nibbles.last_mut().unwrap() = i as u8,
|
||||
i => *self.key_nibbles.last_mut()
|
||||
.expect("pushed as 0; moves sequentially; removed afterwards; qed") = i as u8,
|
||||
}
|
||||
if let Err(e) = self.descend(children[i]) {
|
||||
return Some(Err(e));
|
||||
|
||||
@@ -744,7 +744,8 @@ impl<'a> TrieDBMut<'a> {
|
||||
(UsedIndex::One(a), None) => {
|
||||
// only one onward node. make an extension.
|
||||
let new_partial = NibbleSlice::new_offset(&[a], 1).encoded(false);
|
||||
let new_node = Node::Extension(new_partial, children[a as usize].take().unwrap());
|
||||
let child = children[a as usize].take().expect("used_index only set if occupied; qed");
|
||||
let new_node = Node::Extension(new_partial, child);
|
||||
self.fix(new_node)
|
||||
}
|
||||
(UsedIndex::None, Some(value)) => {
|
||||
|
||||
Reference in New Issue
Block a user