summaryrefslogtreecommitdiff
path: root/cli/dispatch_minimal.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/dispatch_minimal.rs')
-rw-r--r--cli/dispatch_minimal.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/cli/dispatch_minimal.rs b/cli/dispatch_minimal.rs
index a3a383393..0e20d3b1a 100644
--- a/cli/dispatch_minimal.rs
+++ b/cli/dispatch_minimal.rs
@@ -133,7 +133,12 @@ mod ops {
pub fn read(rid: i32, zero_copy: Option<PinnedBuf>) -> Box<MinimalOp> {
debug!("read rid={}", rid);
- let zero_copy = zero_copy.unwrap();
+ let zero_copy = match zero_copy {
+ None => {
+ return Box::new(futures::future::err(errors::no_buffer_specified()))
+ }
+ Some(buf) => buf,
+ };
match resources::lookup(rid as u32) {
None => Box::new(futures::future::err(errors::bad_resource())),
Some(resource) => Box::new(
@@ -146,7 +151,12 @@ mod ops {
pub fn write(rid: i32, zero_copy: Option<PinnedBuf>) -> Box<MinimalOp> {
debug!("write rid={}", rid);
- let zero_copy = zero_copy.unwrap();
+ let zero_copy = match zero_copy {
+ None => {
+ return Box::new(futures::future::err(errors::no_buffer_specified()))
+ }
+ Some(buf) => buf,
+ };
match resources::lookup(rid as u32) {
None => Box::new(futures::future::err(errors::bad_resource())),
Some(resource) => Box::new(