Changeset 1923501 in mainline for uspace/app/bithenge/blob.c


Ignore:
Timestamp:
2012-05-25T04:15:57Z (12 years ago)
Author:
Sean Bartell <wingedtachikoma@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ce683ed3
Parents:
743ce51
Message:

Bithenge: use separate functions instead of casts.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/bithenge/blob.c

    r743ce51 r1923501  
    8484}
    8585
     86static inline bithenge_sequential_blob_t *sequential_from_blob(
     87    bithenge_blob_t *base)
     88{
     89        return (bithenge_sequential_blob_t *)base;
     90}
     91
     92static inline bithenge_blob_t *blob_from_sequential(
     93    bithenge_sequential_blob_t *blob)
     94{
     95        return &blob->base;
     96}
     97
    8698static int sequential_size(bithenge_blob_t *base, aoff64_t *size)
    8799{
    88         bithenge_sequential_blob_t *blob = (bithenge_sequential_blob_t *)base;
     100        bithenge_sequential_blob_t *blob = sequential_from_blob(base);
    89101        int rc;
    90102        if (blob->ops->size) {
     
    108120    char *buffer, aoff64_t *size)
    109121{
    110         bithenge_sequential_blob_t *blob = (bithenge_sequential_blob_t *)base;
     122        bithenge_sequential_blob_t *blob = sequential_from_blob(base);
    111123        aoff64_t end = offset + *size;
    112124        if (end > blob->data_size) {
     
    124136static int sequential_destroy(bithenge_blob_t *base)
    125137{
    126         bithenge_sequential_blob_t *blob = (bithenge_sequential_blob_t *)base;
     138        bithenge_sequential_blob_t *blob = sequential_from_blob(base);
    127139        free(blob->buffer);
    128140        return blob->ops->destroy(blob);
     
    151163        // ops->size is optional
    152164
    153         int rc = bithenge_new_random_access_blob(&blob->base, &sequential_ops);
     165        int rc = bithenge_new_random_access_blob(blob_from_sequential(blob),
     166            &sequential_ops);
    154167        if (rc != EOK)
    155168                return rc;
Note: See TracChangeset for help on using the changeset viewer.