Changeset e0d98b2 in mainline for uspace/srv/fs/exfat/exfat_bitmap.c


Ignore:
Timestamp:
2011-08-15T21:43:29Z (13 years ago)
Author:
Oleg Romanenko <romanenko.oleg@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
b4af128
Parents:
b289005
Message:

exFAT: bitmap_alloc_clusters fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/fs/exfat/exfat_bitmap.c

    rb289005 re0d98b2  
    202202
    203203        while (startc < DATA_CNT(bs)+2) {
    204                 if (bitmap_is_free(bs, devmap_handle, startc) == EOK) {
    205                         endc = startc+1;
    206                         while (bitmap_is_free(bs, devmap_handle, endc) == EOK) {
    207                                 if ((endc - startc)+1 == count){
    208                                         *firstc = startc;
    209                                         return bitmap_set_clusters(bs, devmap_handle, startc, count);
    210                                 }
    211                                 else
    212                                         endc++;
     204                endc = startc;
     205                while (bitmap_is_free(bs, devmap_handle, endc) == EOK) {
     206                        if ((endc - startc)+1 == count){
     207                                *firstc = startc;
     208                                return bitmap_set_clusters(bs, devmap_handle, startc, count);
    213209                        }
    214                         startc = endc+1;
    215                 }
    216                 else
    217                         startc++;
     210                        else
     211                                endc++;
     212                }
     213                startc = endc+1;
    218214        }
    219215        return ENOSPC;
Note: See TracChangeset for help on using the changeset viewer.