From ee6929c7f0778fe532fbfe4f17ea9a202bd808bd Mon Sep 17 00:00:00 2001
From: Gary Talent <gary@drinkingtea.net>
Date: Sun, 25 Apr 2021 15:01:11 -0500
Subject: [PATCH] [ox/claw] Cleanup error handling

---
 deps/ox/src/ox/claw/read.hpp | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/deps/ox/src/ox/claw/read.hpp b/deps/ox/src/ox/claw/read.hpp
index c72e542b..24f45c89 100644
--- a/deps/ox/src/ox/claw/read.hpp
+++ b/deps/ox/src/ox/claw/read.hpp
@@ -37,18 +37,17 @@ Result<Vector<char>> stripClawHeader(const char *buff, std::size_t buffLen) noex
 
 template<typename T>
 Error readClaw(const char *buff, std::size_t buffLen, T *val) {
-	auto header = detail::readHeader(buff, buffLen);
-	oxReturnError(header);
-	switch (header.value.fmt) {
+	oxRequire(header, detail::readHeader(buff, buffLen));
+	switch (header.fmt) {
 		case ClawFormat::Metal:
 		{
-			MetalClawReader reader(bit_cast<uint8_t*>(header.value.data), buffLen);
+			MetalClawReader reader(bit_cast<uint8_t*>(header.data), buffLen);
 			return model(&reader, val);
 		}
 #ifdef OX_USE_STDLIB
 		case ClawFormat::Organic:
 		{
-			OrganicClawReader reader(bit_cast<uint8_t*>(header.value.data), buffLen);
+			OrganicClawReader reader(bit_cast<uint8_t*>(header.data), buffLen);
 			return model(&reader, val);
 		}
 #endif