[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[COMMITTED] pkl: Fix pk_val_offset to properly check mapped values
From: |
Mohammad-Reza Nabipoor |
Subject: |
[COMMITTED] pkl: Fix pk_val_offset to properly check mapped values |
Date: |
Thu, 16 Sep 2021 10:29:41 +0430 |
2021-09-16 Mohammad-Reza Nabipoor <mnabipoor@gnu.org>
* libpoke/pk-val.c: Include `assert.h`.
(pk_val_offset): Use `PVM_VAL_MAPPED_P` instead
of checking `PVM_VAL_OFFSET` against `PVM_NULL`.
---
ChangeLog | 6 ++++++
libpoke/pk-val.c | 13 ++++++++-----
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index cd75c583..73f44b55 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2021-09-16 Mohammad-Reza Nabipoor <mnabipoor@gnu.org>
+
+ * libpoke/pk-val.c: Include `assert.h`.
+ (pk_val_offset): Use `PVM_VAL_MAPPED_P` instead
+ of checking `PVM_VAL_OFFSET` against `PVM_NULL`.
+
2021-09-16 Guillermo E. Martinez <guillermo.e.martinez@oracle.com>
* doc/poke.texi (Poking a SBM Image): Fix typo.
diff --git a/libpoke/pk-val.c b/libpoke/pk-val.c
index 30a9ba5b..3da9bfa0 100644
--- a/libpoke/pk-val.c
+++ b/libpoke/pk-val.c
@@ -17,6 +17,7 @@
*/
#include <config.h>
+#include <assert.h>
#include "pvm.h"
#include "pvm-val.h"
@@ -176,15 +177,18 @@ pk_val_set_ios (pk_val val, pk_val ios)
pk_val
pk_val_offset (pk_val val)
{
- pvm_val val_offset = PVM_VAL_OFFSET (val);
+ pvm_val val_offset;
uint64_t bit_offset;
- if (val_offset == PVM_NULL)
+ if (!PVM_VAL_MAPPED_P (val))
return PK_NULL;
+ val_offset = PVM_VAL_OFFSET (val);
+ assert (val_offset != PVM_NULL);
+
/* The offset in the PVM value is a bit-offset. Convert to a proper
offset. */
- bit_offset = PVM_VAL_ULONG (PVM_VAL_OFFSET (val));
+ bit_offset = PVM_VAL_ULONG (val_offset);
/* XXX "upunit" properly so we get a nice unit, not just bytes or
bits. */
@@ -192,8 +196,7 @@ pk_val_offset (pk_val val)
return pvm_make_offset (pvm_make_ulong (bit_offset / 8, 64),
pvm_make_ulong (8, 64));
else
- return pvm_make_offset (PVM_VAL_OFFSET (val),
- pvm_make_ulong (1, 64));
+ return pvm_make_offset (val_offset, pvm_make_ulong (1, 64));
}
void
--
2.33.0
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [COMMITTED] pkl: Fix pk_val_offset to properly check mapped values,
Mohammad-Reza Nabipoor <=