@@ -207,12 +207,12 @@ int reftable_decode_key(struct reftable_buf *last_key, uint8_t *extra,
207207 return start_len - in .len ;
208208}
209209
210- static void reftable_ref_record_key (const void * r , struct reftable_buf * dest )
210+ static int reftable_ref_record_key (const void * r , struct reftable_buf * dest )
211211{
212212 const struct reftable_ref_record * rec =
213213 (const struct reftable_ref_record * )r ;
214214 reftable_buf_reset (dest );
215- reftable_buf_addstr (dest , rec -> refname );
215+ return reftable_buf_addstr (dest , rec -> refname );
216216}
217217
218218static int reftable_ref_record_copy_from (void * rec , const void * src_rec ,
@@ -465,12 +465,12 @@ static struct reftable_record_vtable reftable_ref_record_vtable = {
465465 .cmp = & reftable_ref_record_cmp_void ,
466466};
467467
468- static void reftable_obj_record_key (const void * r , struct reftable_buf * dest )
468+ static int reftable_obj_record_key (const void * r , struct reftable_buf * dest )
469469{
470470 const struct reftable_obj_record * rec =
471471 (const struct reftable_obj_record * )r ;
472472 reftable_buf_reset (dest );
473- reftable_buf_add (dest , rec -> hash_prefix , rec -> hash_prefix_len );
473+ return reftable_buf_add (dest , rec -> hash_prefix , rec -> hash_prefix_len );
474474}
475475
476476static void reftable_obj_record_release (void * rec )
@@ -664,19 +664,27 @@ static struct reftable_record_vtable reftable_obj_record_vtable = {
664664 .cmp = & reftable_obj_record_cmp_void ,
665665};
666666
667- static void reftable_log_record_key (const void * r , struct reftable_buf * dest )
667+ static int reftable_log_record_key (const void * r , struct reftable_buf * dest )
668668{
669669 const struct reftable_log_record * rec =
670670 (const struct reftable_log_record * )r ;
671- int len = strlen (rec -> refname );
671+ int len = strlen (rec -> refname ), err ;
672672 uint8_t i64 [8 ];
673673 uint64_t ts = 0 ;
674+
674675 reftable_buf_reset (dest );
675- reftable_buf_add (dest , (uint8_t * )rec -> refname , len + 1 );
676+ err = reftable_buf_add (dest , (uint8_t * )rec -> refname , len + 1 );
677+ if (err < 0 )
678+ return err ;
676679
677680 ts = (~ts ) - rec -> update_index ;
678681 put_be64 (& i64 [0 ], ts );
679- reftable_buf_add (dest , i64 , sizeof (i64 ));
682+
683+ err = reftable_buf_add (dest , i64 , sizeof (i64 ));
684+ if (err < 0 )
685+ return err ;
686+
687+ return 0 ;
680688}
681689
682690static int reftable_log_record_copy_from (void * rec , const void * src_rec ,
@@ -1027,11 +1035,11 @@ static struct reftable_record_vtable reftable_log_record_vtable = {
10271035 .cmp = & reftable_log_record_cmp_void ,
10281036};
10291037
1030- static void reftable_index_record_key (const void * r , struct reftable_buf * dest )
1038+ static int reftable_index_record_key (const void * r , struct reftable_buf * dest )
10311039{
10321040 const struct reftable_index_record * rec = r ;
10331041 reftable_buf_reset (dest );
1034- reftable_buf_add (dest , rec -> last_key .buf , rec -> last_key .len );
1042+ return reftable_buf_add (dest , rec -> last_key .buf , rec -> last_key .len );
10351043}
10361044
10371045static int reftable_index_record_copy_from (void * rec , const void * src_rec ,
@@ -1124,9 +1132,9 @@ static struct reftable_record_vtable reftable_index_record_vtable = {
11241132 .cmp = & reftable_index_record_cmp ,
11251133};
11261134
1127- void reftable_record_key (struct reftable_record * rec , struct reftable_buf * dest )
1135+ int reftable_record_key (struct reftable_record * rec , struct reftable_buf * dest )
11281136{
1129- reftable_record_vtable (rec )-> key (reftable_record_data (rec ), dest );
1137+ return reftable_record_vtable (rec )-> key (reftable_record_data (rec ), dest );
11301138}
11311139
11321140int reftable_record_encode (struct reftable_record * rec , struct string_view dest ,
0 commit comments