Changeset a35b458 in mainline for uspace/srv/fs/fat/fat_dentry.c
- Timestamp:
- 2018-03-02T20:10:49Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f1380b7
- Parents:
- 3061bc1
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-02-28 17:38:31)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-02 20:10:49)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/fs/fat/fat_dentry.c
r3061bc1 ra35b458 81 81 { 82 82 unsigned int i; 83 83 84 84 for (i = 0; i < FAT_NAME_LEN; i++) { 85 85 if (d->name[i] == FAT_PAD) 86 86 break; 87 87 88 88 if (d->name[i] == FAT_DENTRY_E5_ESC) 89 89 *buf++ = 0xe5; … … 95 95 } 96 96 } 97 97 98 98 if (d->ext[0] != FAT_PAD) 99 99 *buf++ = '.'; 100 100 101 101 for (i = 0; i < FAT_EXT_LEN; i++) { 102 102 if (d->ext[i] == FAT_PAD) { … … 104 104 return; 105 105 } 106 106 107 107 if (d->ext[i] == FAT_DENTRY_E5_ESC) 108 108 *buf++ = 0xe5; … … 114 114 } 115 115 } 116 116 117 117 *buf = '\0'; 118 118 } … … 124 124 bool lower_name = true; 125 125 bool lower_ext = true; 126 126 127 127 for (i = 0; i < FAT_NAME_LEN; i++) { 128 128 switch ((uint8_t) *name) { … … 140 140 lower_name = false; 141 141 } 142 142 143 143 d->name[i] = toupper(*name++); 144 144 break; 145 145 } 146 146 } 147 147 148 148 if (*name++ != '.') 149 149 name = fake_ext; 150 150 151 151 for (i = 0; i < FAT_EXT_LEN; i++) { 152 152 switch ((uint8_t) *name) { … … 163 163 lower_ext = false; 164 164 } 165 165 166 166 d->ext[i] = toupper(*name++); 167 167 break; 168 168 } 169 169 } 170 170 171 171 if (lower_name) 172 172 d->lcase |= FAT_LCASE_LOWER_NAME; 173 173 else 174 174 d->lcase &= ~FAT_LCASE_LOWER_NAME; 175 175 176 176 if (lower_ext) 177 177 d->lcase |= FAT_LCASE_LOWER_EXT; … … 183 183 { 184 184 unsigned int i; 185 185 186 186 for (i = 0; i < FAT_NAME_LEN; i++) { 187 187 if (d->name[i] == FAT_PAD) 188 188 break; 189 189 190 190 if (d->name[i] == FAT_DENTRY_E5_ESC) 191 191 *buf++ = 0xe5; … … 193 193 *buf++ = d->name[i]; 194 194 } 195 195 196 196 for (i = 0; i < FAT_EXT_LEN; i++) { 197 197 if (d->ext[i] == FAT_PAD) { … … 199 199 return; 200 200 } 201 201 202 202 if (d->ext[i] == FAT_DENTRY_E5_ESC) 203 203 *buf++ = 0xe5; … … 205 205 *buf++ = d->ext[i]; 206 206 } 207 207 208 208 *buf = '\0'; 209 209 } … … 291 291 { 292 292 size_t size = 0; 293 293 294 294 size += fat_lfn_str_nlength(FAT_LFN_PART1(d), FAT_LFN_PART1_SIZE); 295 295 size += fat_lfn_str_nlength(FAT_LFN_PART2(d), FAT_LFN_PART2_SIZE); 296 296 size += fat_lfn_str_nlength(FAT_LFN_PART3(d), FAT_LFN_PART3_SIZE); 297 297 298 298 return size; 299 299 } … … 354 354 d->lfn.type = 0; 355 355 d->lfn.firstc_lo = 0; 356 356 357 357 return *offset; 358 358 } … … 363 363 size_t off = 0; 364 364 size_t i = 0; 365 365 366 366 while (i < count) { 367 367 if ((ch = str_decode(src, &off, STR_NO_LIMIT)) != 0) { … … 384 384 size_t offset=0; 385 385 bool result = true; 386 386 387 387 while ((ch = str_decode(name, &offset, STR_NO_LIMIT)) != 0) { 388 388 if (str_chr(FAT_STOP_CHARS, ch) != NULL) {
Note:
See TracChangeset
for help on using the changeset viewer.