| 290 | } |
| 291 | |
| 292 | void reftable_ref_record_release(struct reftable_ref_record *ref) |
| 293 | { |
| 294 | switch (ref->value_type) { |
| 295 | case REFTABLE_REF_SYMREF: |
| 296 | reftable_free(ref->value.symref); |
| 297 | break; |
| 298 | case REFTABLE_REF_VAL2: |
| 299 | break; |
| 300 | case REFTABLE_REF_VAL1: |
| 301 | break; |
| 302 | case REFTABLE_REF_DELETION: |
| 303 | break; |
| 304 | default: |
| 305 | abort(); |
| 306 | } |
| 307 | |
| 308 | reftable_free(ref->refname); |
| 309 | memset(ref, 0, sizeof(struct reftable_ref_record)); |
| 310 | } |
| 311 | |
| 312 | static uint8_t reftable_ref_record_val_type(const void *rec) |
| 313 | { |