libsframe: avoid using magic number
authorIndu Bhagat <indu.bhagat@oracle.com>
Thu, 1 Jun 2023 16:41:04 +0000 (09:41 -0700)
committerIndu Bhagat <indu.bhagat@oracle.com>
Thu, 1 Jun 2023 16:41:04 +0000 (09:41 -0700)
Define a new constant for the maximum number of stack offsets handled in
libsframe, and use it.  Note that the SFrame format does not define such
a constant (limit).  This is an implmentation-defined constant in
libsframe.

include/
* sframe-api.h (MAX_NUM_STACK_OFFSETS): New definition.
libsframe/
* sframe.c (sframe_fre_sanity_check_p): Use it.

include/sframe-api.h
libsframe/sframe.c

index 405e30c27e89b1821960771c32c0137d8da10718..3245bc8ac903c1560df88b68ae22f89cc28bd749 100644 (file)
@@ -31,7 +31,10 @@ extern "C"
 typedef struct sframe_decoder_ctx sframe_decoder_ctx;
 typedef struct sframe_encoder_ctx sframe_encoder_ctx;
 
-#define MAX_OFFSET_BYTES (SFRAME_FRE_OFFSET_4B * 2 * 3)
+#define MAX_NUM_STACK_OFFSETS  3
+
+#define MAX_OFFSET_BYTES  \
+  ((SFRAME_FRE_OFFSET_4B * 2 * MAX_NUM_STACK_OFFSETS))
 
 /* User interfacing SFrame Row Entry.
    An abstraction provided by libsframe so the consumer is decoupled from
index 97b49106e39b778f156be388881fb01d0ae8b93d..a97c64f7a9b0430aa53485706aa373078a6bdbfb 100644 (file)
@@ -299,7 +299,7 @@ sframe_fre_sanity_check_p (sframe_frame_row_entry *frep)
     return false;
 
   offset_cnt = sframe_fre_get_offset_count (fre_info);
-  if (offset_cnt > 3)
+  if (offset_cnt > MAX_NUM_STACK_OFFSETS)
     return false;
 
   return true;